下面列出了org.eclipse.jdt.core.dom.EnumDeclaration#resolveBinding ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。
@Override
public boolean visit(EnumDeclaration node) {
ITypeBinding binding = node.resolveBinding();
if (binding == null) {
logNullBinding("enum declaration", node.getName(),
((CompilationUnit) node.getRoot()).getLineNumber(node.getStartPosition()));
return false;
}
Type ensureTypeFromTypeBinding = importer.ensureTypeFromTypeBinding(binding);
if (ensureTypeFromTypeBinding instanceof Enum) {
Enum famixEnum = (Enum) ensureTypeFromTypeBinding;
createSourceAnchorsForInterfaceInheritance(node, famixEnum);
famixEnum.setIsStub(false);
importer.createSourceAnchor(famixEnum, node);
importer.ensureCommentFromBodyDeclaration(famixEnum, node);
importer.pushOnContainerStack(famixEnum);
}
return true;
}
public EnumDeclaration getVersionNonAccessibleEnum(EnumDeclaration enumVersrionReference){
for (EnumDeclaration enumDeclarion : this.apiNonAccessibleEnums) {
if(enumDeclarion.resolveBinding() != null && enumVersrionReference.resolveBinding() != null){
if(enumDeclarion.resolveBinding().getQualifiedName().equals(enumVersrionReference.resolveBinding().getQualifiedName())){
return enumDeclarion;
}
}
}
return null;
}
public EnumDeclaration getVersionAccessibleEnum(EnumDeclaration enumVersrionReference){
for (EnumDeclaration enumDeclarion : this.apiAccessibleEnums) {
if(enumDeclarion.resolveBinding() != null && enumVersrionReference.resolveBinding() != null){
if(enumDeclarion.resolveBinding().getQualifiedName().equals(enumVersrionReference.resolveBinding().getQualifiedName())){
return enumDeclarion;
}
}
}
return null;
}
public boolean visit(EnumDeclaration node) {
if (found(node, node.getName()) && this.resolveBinding)
this.foundBinding = node.resolveBinding();
return true;
}