本文整理汇总了Java中org.eclipse.jdt.core.dom.ClassInstanceCreation.getParent方法的典型用法代码示例。如果您正苦于以下问题:Java ClassInstanceCreation.getParent方法的具体用法?Java ClassInstanceCreation.getParent怎么用?Java ClassInstanceCreation.getParent使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.eclipse.jdt.core.dom.ClassInstanceCreation
的用法示例。
在下文中一共展示了ClassInstanceCreation.getParent方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: endVisit
import org.eclipse.jdt.core.dom.ClassInstanceCreation; //导入方法依赖的package包/类
/** {@inheritDoc} */
@Override
public void endVisit(ClassInstanceCreation instanceCreation) {
if (instanceCreation.getParent() instanceof ThrowStatement) {
logger.warn("Ignoring throw statements!");
return;
}
List<?> paramTypes = Arrays.asList(instanceCreation.resolveConstructorBinding().getParameterTypes());
List<?> paramValues = instanceCreation.arguments();
Constructor<?> constructor = retrieveConstructor(instanceCreation.getType(),
paramTypes, paramValues);
List<VariableReference> params = convertParams(instanceCreation.arguments(),
paramTypes);
VariableReference retVal = retrieveVariableReference(instanceCreation, null);
retVal.setOriginalCode(instanceCreation.toString());
ConstructorStatement statement = new ValidConstructorStatement(
testCase.getReference(), constructor, retVal, params);
testCase.addStatement(statement);
}
示例2: retrieveVariableReference
import org.eclipse.jdt.core.dom.ClassInstanceCreation; //导入方法依赖的package包/类
private VariableReference retrieveVariableReference(
ClassInstanceCreation instanceCreation, Class<?> varType) {
if ((instanceCreation.getParent() instanceof MethodInvocation)
|| (instanceCreation.getParent() instanceof ClassInstanceCreation)) {
VariableReference result = new ValidVariableReference(
testCase.getReference(),
retrieveTypeClass(instanceCreation.getType()));
nestedCallResults.push(result);
return result;
}
if ((instanceCreation.getParent() instanceof ExpressionStatement)
&& (instanceCreation.getParent().getParent() instanceof Block)) {
if (varType == null) {
varType = retrieveTypeClass(instanceCreation);
}
VariableReference varRef = new ValidVariableReference(
testCase.getReference(), varType);
return varRef;
}
return retrieveVariableReference(instanceCreation.getParent(), varType);
}
示例3: getNodesToDelete
import org.eclipse.jdt.core.dom.ClassInstanceCreation; //导入方法依赖的package包/类
private static ASTNode[] getNodesToDelete(IJavaElement element, CompilationUnit cuNode)
throws JavaModelException {
// fields are different because you don't delete the whole declaration but only a fragment of it
if (element.getElementType() == IJavaElement.FIELD) {
if (JdtFlags.isEnum((IField) element))
return new ASTNode[] {
ASTNodeSearchUtil.getEnumConstantDeclaration((IField) element, cuNode)
};
else
return new ASTNode[] {
ASTNodeSearchUtil.getFieldDeclarationFragmentNode((IField) element, cuNode)
};
}
if (element.getElementType() == IJavaElement.TYPE && ((IType) element).isLocal()) {
IType type = (IType) element;
if (type.isAnonymous()) {
if (type.getParent().getElementType() == IJavaElement.FIELD) {
EnumConstantDeclaration enumDecl =
ASTNodeSearchUtil.getEnumConstantDeclaration((IField) element.getParent(), cuNode);
if (enumDecl != null && enumDecl.getAnonymousClassDeclaration() != null) {
return new ASTNode[] {enumDecl.getAnonymousClassDeclaration()};
}
}
ClassInstanceCreation creation =
ASTNodeSearchUtil.getClassInstanceCreationNode(type, cuNode);
if (creation != null) {
if (creation.getLocationInParent() == ExpressionStatement.EXPRESSION_PROPERTY) {
return new ASTNode[] {creation.getParent()};
} else if (creation.getLocationInParent()
== VariableDeclarationFragment.INITIALIZER_PROPERTY) {
return new ASTNode[] {creation};
}
return new ASTNode[] {creation.getAnonymousClassDeclaration()};
}
return new ASTNode[0];
} else {
ASTNode[] nodes = ASTNodeSearchUtil.getDeclarationNodes(element, cuNode);
// we have to delete the TypeDeclarationStatement
nodes[0] = nodes[0].getParent();
return nodes;
}
}
return ASTNodeSearchUtil.getDeclarationNodes(element, cuNode);
}
示例4: visit
import org.eclipse.jdt.core.dom.ClassInstanceCreation; //导入方法依赖的package包/类
@Override
public final boolean visit(final ClassInstanceCreation node) {
Assert.isNotNull(node);
if (node.getParent() instanceof ClassInstanceCreation) {
final AnonymousClassDeclaration declaration= node.getAnonymousClassDeclaration();
if (declaration != null)
visit(declaration);
return false;
}
return super.visit(node);
}
示例5: getNodesToDelete
import org.eclipse.jdt.core.dom.ClassInstanceCreation; //导入方法依赖的package包/类
private static ASTNode[] getNodesToDelete(IJavaElement element, CompilationUnit cuNode) throws JavaModelException {
// fields are different because you don't delete the whole declaration but only a fragment of it
if (element.getElementType() == IJavaElement.FIELD) {
if (JdtFlags.isEnum((IField) element))
return new ASTNode[] { ASTNodeSearchUtil.getEnumConstantDeclaration((IField) element, cuNode)};
else
return new ASTNode[] { ASTNodeSearchUtil.getFieldDeclarationFragmentNode((IField) element, cuNode)};
}
if (element.getElementType() == IJavaElement.TYPE && ((IType) element).isLocal()) {
IType type= (IType) element;
if (type.isAnonymous()) {
if (type.getParent().getElementType() == IJavaElement.FIELD) {
EnumConstantDeclaration enumDecl= ASTNodeSearchUtil.getEnumConstantDeclaration((IField) element.getParent(), cuNode);
if (enumDecl != null && enumDecl.getAnonymousClassDeclaration() != null) {
return new ASTNode[] { enumDecl.getAnonymousClassDeclaration() };
}
}
ClassInstanceCreation creation= ASTNodeSearchUtil.getClassInstanceCreationNode(type, cuNode);
if (creation != null) {
if (creation.getLocationInParent() == ExpressionStatement.EXPRESSION_PROPERTY) {
return new ASTNode[] { creation.getParent() };
} else if (creation.getLocationInParent() == VariableDeclarationFragment.INITIALIZER_PROPERTY) {
return new ASTNode[] { creation};
}
return new ASTNode[] { creation.getAnonymousClassDeclaration() };
}
return new ASTNode[0];
} else {
ASTNode[] nodes= ASTNodeSearchUtil.getDeclarationNodes(element, cuNode);
// we have to delete the TypeDeclarationStatement
nodes[0]= nodes[0].getParent();
return nodes;
}
}
return ASTNodeSearchUtil.getDeclarationNodes(element, cuNode);
}