本文整理汇总了Java中org.eclipse.jdt.core.dom.SuperMethodInvocation.arguments方法的典型用法代码示例。如果您正苦于以下问题:Java SuperMethodInvocation.arguments方法的具体用法?Java SuperMethodInvocation.arguments怎么用?Java SuperMethodInvocation.arguments使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.eclipse.jdt.core.dom.SuperMethodInvocation
的用法示例。
在下文中一共展示了SuperMethodInvocation.arguments方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: create
import org.eclipse.jdt.core.dom.SuperMethodInvocation; //导入方法依赖的package包/类
@Override
public ITypeConstraint[] create(SuperMethodInvocation invocation) {
List<Expression> arguments = invocation.arguments();
List<ITypeConstraint> result = new ArrayList<ITypeConstraint>(arguments.size());
IMethodBinding methodBinding = invocation.resolveMethodBinding();
ITypeConstraint[] returnTypeConstraint = getReturnTypeConstraint(invocation, methodBinding);
result.addAll(Arrays.asList(returnTypeConstraint));
result.addAll(Arrays.asList(getArgumentConstraints(arguments, methodBinding)));
return result.toArray(new ITypeConstraint[result.size()]);
}
示例2: visit
import org.eclipse.jdt.core.dom.SuperMethodInvocation; //导入方法依赖的package包/类
public boolean visit(SuperMethodInvocation mi) {
IMethodBinding callee = mi.resolveMethodBinding().getMethodDeclaration();
List args = mi.arguments();
args = new ArrayList(args);
args.add(0, null);
int lineNum = cu.getLineNumber(mi.getStartPosition());
processInvkExpr(lineNum, mi.getName(), mi.toString(), callee, args, "invkexpr", "super");
return true;
}
示例3: visit
import org.eclipse.jdt.core.dom.SuperMethodInvocation; //导入方法依赖的package包/类
@Override
public final boolean visit(final SuperMethodInvocation node) {
if (!fAnonymousClassDeclaration && !fTypeDeclarationStatement) {
final IBinding superBinding= node.getName().resolveBinding();
if (superBinding instanceof IMethodBinding) {
final IMethodBinding extended= (IMethodBinding) superBinding;
if (fEnclosingMethod != null && fEnclosingMethod.overrides(extended))
return true;
final ITypeBinding declaringBinding= extended.getDeclaringClass();
if (declaringBinding != null) {
final IType type= (IType) declaringBinding.getJavaElement();
if (!fSuperReferenceType.equals(type))
return true;
}
}
final AST ast= node.getAST();
final ThisExpression expression= ast.newThisExpression();
final MethodInvocation invocation= ast.newMethodInvocation();
final SimpleName simple= ast.newSimpleName(node.getName().getIdentifier());
invocation.setName(simple);
invocation.setExpression(expression);
final List<Expression> arguments= node.arguments();
if (arguments != null && arguments.size() > 0) {
final ListRewrite rewriter= fRewrite.getListRewrite(invocation, MethodInvocation.ARGUMENTS_PROPERTY);
ListRewrite superRewriter= fRewrite.getListRewrite(node, SuperMethodInvocation.ARGUMENTS_PROPERTY);
ASTNode copyTarget= superRewriter.createCopyTarget(arguments.get(0), arguments.get(arguments.size() - 1));
rewriter.insertLast(copyTarget, null);
}
fRewrite.replace(node, invocation, null);
if (!fSourceRewriter.getCu().equals(fTargetRewriter.getCu()))
fSourceRewriter.getImportRemover().registerRemovedNode(node);
return true;
}
return false;
}
示例4: create
import org.eclipse.jdt.core.dom.SuperMethodInvocation; //导入方法依赖的package包/类
@Override
public ITypeConstraint[] create(SuperMethodInvocation invocation){
List<Expression> arguments= invocation.arguments();
List<ITypeConstraint> result= new ArrayList<ITypeConstraint>(arguments.size());
IMethodBinding methodBinding= invocation.resolveMethodBinding();
ITypeConstraint[] returnTypeConstraint= getReturnTypeConstraint(invocation, methodBinding);
result.addAll(Arrays.asList(returnTypeConstraint));
result.addAll(Arrays.asList(getArgumentConstraints(arguments, methodBinding)));
return result.toArray(new ITypeConstraint[result.size()]);
}