当前位置: 首页>>代码示例>>Java>>正文


Java Node.getChildrenNodes方法代码示例

本文整理汇总了Java中com.github.javaparser.ast.Node.getChildrenNodes方法的典型用法代码示例。如果您正苦于以下问题:Java Node.getChildrenNodes方法的具体用法?Java Node.getChildrenNodes怎么用?Java Node.getChildrenNodes使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在com.github.javaparser.ast.Node的用法示例。


在下文中一共展示了Node.getChildrenNodes方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: visitChildren

import com.github.javaparser.ast.Node; //导入方法依赖的package包/类
private void visitChildren(Node node, List<ArrayInitializerExpr> arrayInitializerExprs,
								Map<String, String> scanedNames, Set<String> scanedImputs,
								Map<String, Pattern> scanedRefeWrap, final String... fileName) {
//		int level = 0;
//		Node parent = node.getParentNode();
//		while (parent != null) {
//			parent = parent.getParentNode();
//			level++;
//		}
//		if (level > 0 && fileName.length > 0 && fileName[0].endsWith("TeacherManager.java")) {
//			if (node instanceof ClassOrInterfaceDeclaration) {
//				ClassOrInterfaceDeclaration real = (ClassOrInterfaceDeclaration) node;
//			}
//		}
		
		List<Node> children = node.getChildrenNodes();
		if (Utils.hasLength(children)) {
			//不能使用 for (Node node2 : children) 
			for (int i = 0; i < children.size(); i++) {
				Node child = children.get(i);
				visit(child, arrayInitializerExprs, scanedNames, scanedImputs, scanedRefeWrap, false, fileName);
			}
		}
	}
 
开发者ID:niaoge,项目名称:spring-dynamic,代码行数:25,代码来源:SourceScaner.java

示例2: parseNode

import com.github.javaparser.ast.Node; //导入方法依赖的package包/类
private void parseNode(Node node) {
	// Capture all types of Expressions and Statements
	if(node instanceof Expression){
		incrementDictCount(this.expressions, node.getClass().getSimpleName());
	} else if(node instanceof Statement){
		incrementDictCount(this.statements, node.getClass().getSimpleName());
	} 
	
	if(node instanceof ClassOrInterfaceDeclaration){
		this.concepts.add("InnerClass");
	}
	else if(node instanceof MethodDeclaration){
		this.concepts.add("InnerMethod");
	}
	
	if (node instanceof VariableDeclaratorId){
		incrementDictCount(this.variables, ((VariableDeclaratorId) node).getName());
	} else if (node instanceof MethodCallExpr) {
        this.parseMethodCall((MethodCallExpr) node);
    } else if (node instanceof Expression) {
        this.parseExpr((Expression) node);
    } else if(node instanceof CatchClause){
    	CatchClause catchClause = (CatchClause) node;
    	this.exceptions.add(catchClause.getParam().getType().toString());
    } else if(node instanceof ThrowStmt){
    	Expression exp = ((ThrowStmt) node).getExpr();
    	List<Node> childNodes = exp.getChildrenNodes();
    	if(childNodes.size() > 1){
    		this.exceptions.add(childNodes.get(0).toString());
    	}
    }
	
    for(Node childNode : node.getChildrenNodes()){
        parseNode(childNode);
    }
    
}
 
开发者ID:shashanksingh28,项目名称:code-similarity,代码行数:38,代码来源:ASTEnhanced.java

示例3: getNodesByType

import com.github.javaparser.ast.Node; //导入方法依赖的package包/类
public static <N extends Node> List<N> getNodesByType(Node container, Class<N> clazz) {
    List<N> nodes = new ArrayList<N>();
    for (Node child : container.getChildrenNodes()) {
        if (clazz.isInstance(child)) {
            nodes.add(clazz.cast(child));
        }
        nodes.addAll(getNodesByType(child, clazz));
    }
    return nodes;
}
 
开发者ID:plum-umd,项目名称:java-sketch,代码行数:11,代码来源:ASTHelper.java

示例4: visitDepthFirst

import com.github.javaparser.ast.Node; //导入方法依赖的package包/类
/**
 * https://en.wikipedia.org/wiki/Depth-first_search
 *
 * @param node the start node, and the first one that is passed to process(node).
 */
public void visitDepthFirst(Node node) {
	process(node);
	for (Node child : node.getChildrenNodes()) {
		visitDepthFirst(child);
	}
}
 
开发者ID:javaparser,项目名称:javasymbolsolver,代码行数:12,代码来源:TreeVisitor.java


注:本文中的com.github.javaparser.ast.Node.getChildrenNodes方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。