下面列出了org.eclipse.jdt.core.dom.SuperFieldAccess#getQualifier ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。
private SuperFieldAcc visit(SuperFieldAccess node) {
int startLine = _cunit.getLineNumber(node.getStartPosition());
int endLine = _cunit.getLineNumber(node.getStartPosition() + node.getLength());
SuperFieldAcc superFieldAcc = new SuperFieldAcc(startLine, endLine, node);
SName identifier = (SName) process(node.getName());
identifier.setParent(superFieldAcc);
superFieldAcc.setIdentifier(identifier);
if(node.getQualifier() != null){
Label name = (Label) process(node.getQualifier());
name.setParent(superFieldAcc);
superFieldAcc.setName(name);
}
Pair<String, String> pair = NodeUtils.getTypeDecAndMethodDec(node);
Type exprType = ProjectInfo.getVariableType(pair.getFirst(), pair.getSecond(), node.getName().getFullyQualifiedName());
superFieldAcc.setType(exprType);
return superFieldAcc;
}
@Override
public boolean visit(final SuperFieldAccess node) {
Name _qualifier = node.getQualifier();
boolean _tripleNotEquals = (_qualifier != null);
if (_tripleNotEquals) {
node.getQualifier().accept(this);
this.appendToBuffer(".");
}
this.appendToBuffer("super.");
node.getName().accept(this);
return false;
}
public boolean visit(SuperFieldAccess expr) {
if (expr.getQualifier() != null) {
handleExpression(expr.getQualifier());
}
handleExpression(expr.getName());
return false;
}
public boolean visit(SuperFieldAccess expr) {
/*
* SuperFieldAccess: [ ClassName . ] super . Identifier
*/
activateDiffStyle(expr);
if (expr.getQualifier() != null) {
handleExpression(expr.getQualifier());
appendPeriod();
}
styledString.append("super", determineDiffStyle(expr, new StyledStringStyler(keywordStyle)));
appendPeriod();
handleExpression(expr.getName());
deactivateDiffStyle(expr);
return false;
}