C++ 소스 코드의 정보를 추출하려고합니다. 하나는 필드 유형입니다.CDT 파서를 사용하여 필드 형식을 얻는 방법
info.call()이 호출 될 때 아래의 소스 코드에서 정보 유형을 추출하려고 할 때.
Info info;
//skip
info.call(); //<- from here
Trough가 IASTName 노드를 방문하는 방문자를 만드는 동안 아래 에서처럼 유형 정보를 추출하려고했습니다. 코드를 가정
는public class CDTVisitor extends ASTVisitor {
public CDTVisitor(boolean visitNodes) {
super(true);
}
public int visit(IASTName node){
if(node.resolveBinding().getName().toString().equals("info"))
System.out.println(((IField)node.getBinding()).getType());
// this not work properly.
//result is "[email protected]"
return 3;
}
}
쿨! ICPPASTTranslationUnit을 어떻게 사용 했습니까? Eclipse CDT를 사용하는 독립형 C++ 구문 분석에서 작업하고 있으며 바인딩을 해결해야합니다. 코드를 작성했지만 AST가 제대로 작동하지 않습니다. 코드를 공유 할 수 있다면 감사 할 것입니다. –
@FelipeGomes 바인딩을 해결하려면 인덱서를 사용해야하지만 인덱서가 Eclipse Studio와 결합되어 있어야합니다. –