org.eclipse.jdt.core.dom.AbstractTypeDeclaration#bodyDeclarations ( )源码实例Demo

下面列出了org.eclipse.jdt.core.dom.AbstractTypeDeclaration#bodyDeclarations ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

/**
    * @see HierarchicalASTVisitor#visit(org.eclipse.jdt.core.dom.AbstractTypeDeclaration)
    */
   @Override
public boolean visit(AbstractTypeDeclaration node) {
   	progressMonitorWorked(1);
   	if (!isFurtherTraversalNecessary(node)) {
   		return false;
   	}

   	if (isNodeWithinMethod(node)) {
   		List<BodyDeclaration> bodyDeclarations= node.bodyDeclarations();
   		for (Iterator<BodyDeclaration> iter= bodyDeclarations.iterator(); iter.hasNext(); ) {
			BodyDeclaration bodyDeclaration= iter.next();
			if (bodyDeclaration instanceof MethodDeclaration) {
				MethodDeclaration child= (MethodDeclaration) bodyDeclaration;
				if (child.isConstructor()) {
					addMethodCall(child.resolveBinding(), child.getName());
				}
			}
		}
   		return false;
   	}

   	return true;
   }
 
源代码2 项目: eclipse.jdt.ls   文件: ExtractFieldRefactoring.java
private int computeInsertIndexForNewConstructor(AbstractTypeDeclaration declaration) {
	List<BodyDeclaration> declarations = declaration.bodyDeclarations();
	if (declarations.isEmpty()) {
		return 0;
	}
	int index = findFirstMethodIndex(declaration);
	if (index == -1) {
		return declarations.size();
	} else {
		return index;
	}
}
 
源代码3 项目: RefactoringMiner   文件: UMLModelASTReader.java
private void processBodyDeclarations(CompilationUnit cu, AbstractTypeDeclaration abstractTypeDeclaration, String packageName,
		String sourceFile, List<String> importedTypes, UMLClass umlClass) {
	List<BodyDeclaration> bodyDeclarations = abstractTypeDeclaration.bodyDeclarations();
	for(BodyDeclaration bodyDeclaration : bodyDeclarations) {
		if(bodyDeclaration instanceof FieldDeclaration) {
			FieldDeclaration fieldDeclaration = (FieldDeclaration)bodyDeclaration;
			List<UMLAttribute> attributes = processFieldDeclaration(cu, fieldDeclaration, umlClass.isInterface(), sourceFile);
    		for(UMLAttribute attribute : attributes) {
    			attribute.setClassName(umlClass.getName());
    			umlClass.addAttribute(attribute);
    		}
		}
		else if(bodyDeclaration instanceof MethodDeclaration) {
			MethodDeclaration methodDeclaration = (MethodDeclaration)bodyDeclaration;
			UMLOperation operation = processMethodDeclaration(cu, methodDeclaration, packageName, umlClass.isInterface(), sourceFile);
    		operation.setClassName(umlClass.getName());
    		umlClass.addOperation(operation);
		}
		else if(bodyDeclaration instanceof TypeDeclaration) {
			TypeDeclaration typeDeclaration = (TypeDeclaration)bodyDeclaration;
			processTypeDeclaration(cu, typeDeclaration, umlClass.getName(), sourceFile, importedTypes);
		}
		else if(bodyDeclaration instanceof EnumDeclaration) {
			EnumDeclaration enumDeclaration = (EnumDeclaration)bodyDeclaration;
			processEnumDeclaration(cu, enumDeclaration, umlClass.getName(), sourceFile, importedTypes);
		}
	}
}
 
private int computeInsertIndexForNewConstructor(AbstractTypeDeclaration declaration) {
  	List<BodyDeclaration> declarations= declaration.bodyDeclarations();
  	if (declarations.isEmpty())
       return 0;
int index= findFirstMethodIndex(declaration);
if (index == -1)
	return declarations.size();
else
	return index;
  }