diff options
author | Danny van Bruggen <hexagonaal@gmail.com> | 2017-06-25 21:44:20 +0200 |
---|---|---|
committer | Danny van Bruggen <hexagonaal@gmail.com> | 2017-06-25 21:44:20 +0200 |
commit | 81280be021e7e076cfc69f0a921f3b2cc4d2581a (patch) | |
tree | d65182cfdc7c07011b1b7865f04a312a0bcfd598 | |
parent | 9e670dab3d28b8be6264facbf72ab21a21f7626a (diff) | |
download | platform_external_javaparser-81280be021e7e076cfc69f0a921f3b2cc4d2581a.tar.gz platform_external_javaparser-81280be021e7e076cfc69f0a921f3b2cc4d2581a.tar.bz2 platform_external_javaparser-81280be021e7e076cfc69f0a921f3b2cc4d2581a.zip |
Add replace method generator and its results
107 files changed, 1583 insertions, 0 deletions
diff --git a/javaparser-core-generators/src/main/java/com/github/javaparser/generator/core/CoreGenerator.java b/javaparser-core-generators/src/main/java/com/github/javaparser/generator/core/CoreGenerator.java index 3df8b9761..95360d314 100644 --- a/javaparser-core-generators/src/main/java/com/github/javaparser/generator/core/CoreGenerator.java +++ b/javaparser-core-generators/src/main/java/com/github/javaparser/generator/core/CoreGenerator.java @@ -40,6 +40,7 @@ public class CoreGenerator { new GetNodeListsGenerator(sourceRoot).generate(); new PropertyGenerator(sourceRoot).generate(); new RemoveMethodGenerator(sourceRoot).generate(); + new ReplaceMethodGenerator(sourceRoot).generate(); new CloneGenerator(sourceRoot).generate(); new GetMetaModelGenerator(sourceRoot).generate(); new MainConstructorGenerator(sourceRoot).generate(); diff --git a/javaparser-core-generators/src/main/java/com/github/javaparser/generator/core/node/ReplaceMethodGenerator.java b/javaparser-core-generators/src/main/java/com/github/javaparser/generator/core/node/ReplaceMethodGenerator.java new file mode 100644 index 000000000..9ef9b1d26 --- /dev/null +++ b/javaparser-core-generators/src/main/java/com/github/javaparser/generator/core/node/ReplaceMethodGenerator.java @@ -0,0 +1,88 @@ +package com.github.javaparser.generator.core.node; + +import com.github.javaparser.ast.CompilationUnit; +import com.github.javaparser.ast.Node; +import com.github.javaparser.ast.body.ClassOrInterfaceDeclaration; +import com.github.javaparser.ast.body.MethodDeclaration; +import com.github.javaparser.ast.stmt.BlockStmt; +import com.github.javaparser.generator.NodeGenerator; +import com.github.javaparser.metamodel.BaseNodeMetaModel; +import com.github.javaparser.metamodel.PropertyMetaModel; +import com.github.javaparser.utils.SourceRoot; + +import static com.github.javaparser.JavaParser.parseBodyDeclaration; +import static com.github.javaparser.utils.CodeGenerationUtils.f; +import static com.github.javaparser.utils.Utils.capitalize; + +public class ReplaceMethodGenerator extends NodeGenerator { + public ReplaceMethodGenerator(SourceRoot sourceRoot) { + super(sourceRoot); + } + + @Override + protected void generateNode(BaseNodeMetaModel nodeMetaModel, CompilationUnit nodeCu, ClassOrInterfaceDeclaration nodeCoid) { + MethodDeclaration replaceNodeMethod = (MethodDeclaration) parseBodyDeclaration("public boolean replace(Node node, Node replacementNode) {}"); + nodeCu.addImport(Node.class); + nodeMetaModel.getSuperNodeMetaModel().ifPresent(s -> annotateOverridden(replaceNodeMethod)); + + final BlockStmt body = replaceNodeMethod.getBody().get(); + + body.addStatement("if (node == null) return false;"); + + for (PropertyMetaModel property : nodeMetaModel.getDeclaredPropertyMetaModels()) { + if (!property.isNode()) { + continue; + } + String check; + if (property.isNodeList()) { + check = nodeListCheck(property); + } else { + if (property.isRequired()) { + continue; + } + String replaceAttributeMethodName = generateReplaceMethodForAttribute(nodeCoid, nodeMetaModel, property); + check = attributeCheck(property, replaceAttributeMethodName); + } + if (property.isOptional()) { + check = f("if (%s != null) { %s }", property.getName(), check); + } + body.addStatement(check); + } + if (nodeMetaModel.getSuperNodeMetaModel().isPresent()) { + body.addStatement("return super.replace(node, replacementNode);"); + } else { + body.addStatement("return false;"); + } + + addOrReplaceWhenSameSignature(nodeCoid, replaceNodeMethod); + annotateGenerated(replaceNodeMethod); + } + + private String attributeCheck(PropertyMetaModel property, String replaceAttributeMethodName) { + return f("if (node == %s) {" + + " %s((%s) replacementNode);" + + " return true;\n" + + "}", property.getName(), replaceAttributeMethodName, property.getTypeName()); + } + + private String nodeListCheck(PropertyMetaModel property) { + return f("for (int i = 0; i < %s.size(); i++) {" + + " if (%s.get(i) == node) {" + + " %s.set(i, (%s) replacementNode);" + + " return true;" + + " }" + + "}", property.getName(), property.getName(), property.getName(), property.getTypeName()); + } + + private String generateReplaceMethodForAttribute(ClassOrInterfaceDeclaration nodeCoid, BaseNodeMetaModel nodeMetaModel, PropertyMetaModel property) { + final String methodName = "replace" + capitalize(property.getName()); + final MethodDeclaration replaceMethod = (MethodDeclaration) parseBodyDeclaration(f("public %s %s(%s replacement) {}", nodeMetaModel.getTypeName(), methodName, property.getTypeName())); + + final BlockStmt block = replaceMethod.getBody().get(); + block.addStatement(f("return %s((%s) replacement);", property.getSetterMethodName(), property.getTypeNameForSetter())); + + addOrReplaceWhenSameSignature(nodeCoid, replaceMethod); + annotateGenerated(replaceMethod); + return methodName; + } +} diff --git a/javaparser-core/src/main/java/com/github/javaparser/JavaParser.java b/javaparser-core/src/main/java/com/github/javaparser/JavaParser.java index 1f9c15f5c..2d8de7993 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/JavaParser.java +++ b/javaparser-core/src/main/java/com/github/javaparser/JavaParser.java @@ -24,6 +24,7 @@ package com.github.javaparser; import com.github.javaparser.ast.CompilationUnit; import com.github.javaparser.ast.ImportDeclaration; import com.github.javaparser.ast.Node; +import com.github.javaparser.ast.PackageDeclaration; import com.github.javaparser.ast.body.BodyDeclaration; import com.github.javaparser.ast.body.Parameter; import com.github.javaparser.ast.comments.CommentsCollection; @@ -495,4 +496,16 @@ public final class JavaParser { return simplifiedParse(PARAMETER, provider(parameter)); } + + /** + * Parses a package declaration and returns it as a PackageDeclaration. + * + * @param packageDeclaration a declaration like "package com.microsoft.java;" + * @return the AST for the parameter + * @throws ParseProblemException if the source code has parser errors + */ + public static PackageDeclaration parsePackageDeclaration(String packageDeclaration) { + return simplifiedParse(PACKAGE_DECLARATION, provider(packageDeclaration)); + } + } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ParseStart.java b/javaparser-core/src/main/java/com/github/javaparser/ParseStart.java index 490c1fa0e..e1f13250b 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ParseStart.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ParseStart.java @@ -23,6 +23,7 @@ package com.github.javaparser; import com.github.javaparser.ast.CompilationUnit; import com.github.javaparser.ast.ImportDeclaration; +import com.github.javaparser.ast.PackageDeclaration; import com.github.javaparser.ast.body.BodyDeclaration; import com.github.javaparser.ast.body.Parameter; import com.github.javaparser.ast.expr.AnnotationExpr; @@ -60,6 +61,7 @@ public interface ParseStart<R> { ParseStart<ExplicitConstructorInvocationStmt> EXPLICIT_CONSTRUCTOR_INVOCATION_STMT = GeneratedJavaParser::ExplicitConstructorInvocation; ParseStart<Name> NAME = GeneratedJavaParser::Name; ParseStart<Parameter> PARAMETER = GeneratedJavaParser::Parameter; + ParseStart<PackageDeclaration> PACKAGE_DECLARATION = GeneratedJavaParser::PackageDeclaration; R parse(GeneratedJavaParser parser) throws ParseException; } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/ArrayCreationLevel.java b/javaparser-core/src/main/java/com/github/javaparser/ast/ArrayCreationLevel.java index 4f883b26a..f80d83ff5 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/ArrayCreationLevel.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/ArrayCreationLevel.java @@ -171,4 +171,29 @@ public class ArrayCreationLevel extends Node implements NodeWithAnnotations<Arra public ArrayCreationLevelMetaModel getMetaModel() { return JavaParserMetaModel.arrayCreationLevelMetaModel; } + + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public ArrayCreationLevel replaceDimension(Expression replacement) { + return setDimension((Expression) replacement); + } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + for (int i = 0; i < annotations.size(); i++) { + if (annotations.get(i) == node) { + annotations.set(i, (AnnotationExpr) replacementNode); + return true; + } + } + if (dimension != null) { + if (node == dimension) { + replaceDimension((Expression) replacementNode); + return true; + } + } + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/CompilationUnit.java b/javaparser-core/src/main/java/com/github/javaparser/ast/CompilationUnit.java index eda310b75..373f75f81 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/CompilationUnit.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/CompilationUnit.java @@ -636,4 +636,46 @@ public class CompilationUnit extends Node { public CompilationUnitMetaModel getMetaModel() { return JavaParserMetaModel.compilationUnitMetaModel; } + + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public CompilationUnit replaceModule(ModuleDeclaration replacement) { + return setModule((ModuleDeclaration) replacement); + } + + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public CompilationUnit replacePackageDeclaration(PackageDeclaration replacement) { + return setPackageDeclaration((PackageDeclaration) replacement); + } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + for (int i = 0; i < imports.size(); i++) { + if (imports.get(i) == node) { + imports.set(i, (ImportDeclaration) replacementNode); + return true; + } + } + if (module != null) { + if (node == module) { + replaceModule((ModuleDeclaration) replacementNode); + return true; + } + } + if (packageDeclaration != null) { + if (node == packageDeclaration) { + replacePackageDeclaration((PackageDeclaration) replacementNode); + return true; + } + } + for (int i = 0; i < types.size(); i++) { + if (types.get(i) == node) { + types.set(i, (TypeDeclaration) replacementNode); + return true; + } + } + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/ImportDeclaration.java b/javaparser-core/src/main/java/com/github/javaparser/ast/ImportDeclaration.java index c6b2d7e17..e5899122b 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/ImportDeclaration.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/ImportDeclaration.java @@ -156,4 +156,12 @@ public final class ImportDeclaration extends Node implements NodeWithName<Import public ImportDeclarationMetaModel getMetaModel() { return JavaParserMetaModel.importDeclarationMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/Node.java b/javaparser-core/src/main/java/com/github/javaparser/ast/Node.java index 5e6672749..51a3ee79c 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/Node.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/Node.java @@ -594,4 +594,22 @@ public abstract class Node implements Cloneable, HasParentNode<Node>, Visitable, this.parsed = parsed; return this; } + + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public Node replaceComment(Comment replacement) { + return setComment((Comment) replacement); + } + + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + if (comment != null) { + if (node == comment) { + replaceComment((Comment) replacementNode); + return true; + } + } + return false; + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/PackageDeclaration.java b/javaparser-core/src/main/java/com/github/javaparser/ast/PackageDeclaration.java index 1de02122e..046a0c91f 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/PackageDeclaration.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/PackageDeclaration.java @@ -171,4 +171,18 @@ public final class PackageDeclaration extends Node implements NodeWithAnnotation public PackageDeclarationMetaModel getMetaModel() { return JavaParserMetaModel.packageDeclarationMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + for (int i = 0; i < annotations.size(); i++) { + if (annotations.get(i) == node) { + annotations.set(i, (AnnotationExpr) replacementNode); + return true; + } + } + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/body/AnnotationDeclaration.java b/javaparser-core/src/main/java/com/github/javaparser/ast/body/AnnotationDeclaration.java index af0630fb6..b9be313de 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/body/AnnotationDeclaration.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/body/AnnotationDeclaration.java @@ -101,4 +101,12 @@ public final class AnnotationDeclaration extends TypeDeclaration<AnnotationDecla public AnnotationDeclarationMetaModel getMetaModel() { return JavaParserMetaModel.annotationDeclarationMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/body/AnnotationMemberDeclaration.java b/javaparser-core/src/main/java/com/github/javaparser/ast/body/AnnotationMemberDeclaration.java index 8780f6485..70dbb2c10 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/body/AnnotationMemberDeclaration.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/body/AnnotationMemberDeclaration.java @@ -218,4 +218,23 @@ public final class AnnotationMemberDeclaration extends BodyDeclaration<Annotatio public AnnotationMemberDeclarationMetaModel getMetaModel() { return JavaParserMetaModel.annotationMemberDeclarationMetaModel; } + + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public AnnotationMemberDeclaration replaceDefaultValue(Expression replacement) { + return setDefaultValue((Expression) replacement); + } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + if (defaultValue != null) { + if (node == defaultValue) { + replaceDefaultValue((Expression) replacementNode); + return true; + } + } + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/body/BodyDeclaration.java b/javaparser-core/src/main/java/com/github/javaparser/ast/body/BodyDeclaration.java index adca34d85..2d6de4880 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/body/BodyDeclaration.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/body/BodyDeclaration.java @@ -119,4 +119,18 @@ public abstract class BodyDeclaration<T extends BodyDeclaration<?>> extends Node public BodyDeclarationMetaModel getMetaModel() { return JavaParserMetaModel.bodyDeclarationMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + for (int i = 0; i < annotations.size(); i++) { + if (annotations.get(i) == node) { + annotations.set(i, (AnnotationExpr) replacementNode); + return true; + } + } + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/body/CallableDeclaration.java b/javaparser-core/src/main/java/com/github/javaparser/ast/body/CallableDeclaration.java index a0853b0ce..b0bef592e 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/body/CallableDeclaration.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/body/CallableDeclaration.java @@ -334,4 +334,30 @@ public abstract class CallableDeclaration<T extends CallableDeclaration<?>> exte public CallableDeclarationMetaModel getMetaModel() { return JavaParserMetaModel.callableDeclarationMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + for (int i = 0; i < parameters.size(); i++) { + if (parameters.get(i) == node) { + parameters.set(i, (Parameter) replacementNode); + return true; + } + } + for (int i = 0; i < thrownExceptions.size(); i++) { + if (thrownExceptions.get(i) == node) { + thrownExceptions.set(i, (ReferenceType) replacementNode); + return true; + } + } + for (int i = 0; i < typeParameters.size(); i++) { + if (typeParameters.get(i) == node) { + typeParameters.set(i, (TypeParameter) replacementNode); + return true; + } + } + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/body/ClassOrInterfaceDeclaration.java b/javaparser-core/src/main/java/com/github/javaparser/ast/body/ClassOrInterfaceDeclaration.java index b1ab0c12c..bb23fa2a3 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/body/ClassOrInterfaceDeclaration.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/body/ClassOrInterfaceDeclaration.java @@ -285,4 +285,30 @@ public final class ClassOrInterfaceDeclaration extends TypeDeclaration<ClassOrIn public ClassOrInterfaceDeclarationMetaModel getMetaModel() { return JavaParserMetaModel.classOrInterfaceDeclarationMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + for (int i = 0; i < extendedTypes.size(); i++) { + if (extendedTypes.get(i) == node) { + extendedTypes.set(i, (ClassOrInterfaceType) replacementNode); + return true; + } + } + for (int i = 0; i < implementedTypes.size(); i++) { + if (implementedTypes.get(i) == node) { + implementedTypes.set(i, (ClassOrInterfaceType) replacementNode); + return true; + } + } + for (int i = 0; i < typeParameters.size(); i++) { + if (typeParameters.get(i) == node) { + typeParameters.set(i, (TypeParameter) replacementNode); + return true; + } + } + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/body/ConstructorDeclaration.java b/javaparser-core/src/main/java/com/github/javaparser/ast/body/ConstructorDeclaration.java index 05eda493b..657535a9c 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/body/ConstructorDeclaration.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/body/ConstructorDeclaration.java @@ -195,4 +195,12 @@ public final class ConstructorDeclaration extends CallableDeclaration<Constructo public ConstructorDeclarationMetaModel getMetaModel() { return JavaParserMetaModel.constructorDeclarationMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/body/EnumConstantDeclaration.java b/javaparser-core/src/main/java/com/github/javaparser/ast/body/EnumConstantDeclaration.java index 745c15e8a..bfa4d06b1 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/body/EnumConstantDeclaration.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/body/EnumConstantDeclaration.java @@ -182,4 +182,24 @@ public final class EnumConstantDeclaration extends BodyDeclaration<EnumConstantD public EnumConstantDeclarationMetaModel getMetaModel() { return JavaParserMetaModel.enumConstantDeclarationMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + for (int i = 0; i < arguments.size(); i++) { + if (arguments.get(i) == node) { + arguments.set(i, (Expression) replacementNode); + return true; + } + } + for (int i = 0; i < classBody.size(); i++) { + if (classBody.get(i) == node) { + classBody.set(i, (BodyDeclaration) replacementNode); + return true; + } + } + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/body/EnumDeclaration.java b/javaparser-core/src/main/java/com/github/javaparser/ast/body/EnumDeclaration.java index b4f648606..12327c7b0 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/body/EnumDeclaration.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/body/EnumDeclaration.java @@ -182,4 +182,24 @@ public final class EnumDeclaration extends TypeDeclaration<EnumDeclaration> impl public EnumDeclarationMetaModel getMetaModel() { return JavaParserMetaModel.enumDeclarationMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + for (int i = 0; i < entries.size(); i++) { + if (entries.get(i) == node) { + entries.set(i, (EnumConstantDeclaration) replacementNode); + return true; + } + } + for (int i = 0; i < implementedTypes.size(); i++) { + if (implementedTypes.get(i) == node) { + implementedTypes.set(i, (ClassOrInterfaceType) replacementNode); + return true; + } + } + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/body/FieldDeclaration.java b/javaparser-core/src/main/java/com/github/javaparser/ast/body/FieldDeclaration.java index 390e24425..19faba526 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/body/FieldDeclaration.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/body/FieldDeclaration.java @@ -258,4 +258,18 @@ public final class FieldDeclaration extends BodyDeclaration<FieldDeclaration> im public FieldDeclarationMetaModel getMetaModel() { return JavaParserMetaModel.fieldDeclarationMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + for (int i = 0; i < variables.size(); i++) { + if (variables.get(i) == node) { + variables.set(i, (VariableDeclarator) replacementNode); + return true; + } + } + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/body/InitializerDeclaration.java b/javaparser-core/src/main/java/com/github/javaparser/ast/body/InitializerDeclaration.java index 166fa2a07..7fb2ff068 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/body/InitializerDeclaration.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/body/InitializerDeclaration.java @@ -137,4 +137,12 @@ public final class InitializerDeclaration extends BodyDeclaration<InitializerDec public InitializerDeclarationMetaModel getMetaModel() { return JavaParserMetaModel.initializerDeclarationMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/body/MethodDeclaration.java b/javaparser-core/src/main/java/com/github/javaparser/ast/body/MethodDeclaration.java index f0989625f..d0d6b008c 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/body/MethodDeclaration.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/body/MethodDeclaration.java @@ -294,4 +294,23 @@ public final class MethodDeclaration extends CallableDeclaration<MethodDeclarati public MethodDeclarationMetaModel getMetaModel() { return JavaParserMetaModel.methodDeclarationMetaModel; } + + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public MethodDeclaration replaceBody(BlockStmt replacement) { + return setBody((BlockStmt) replacement); + } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + if (body != null) { + if (node == body) { + replaceBody((BlockStmt) replacementNode); + return true; + } + } + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/body/Parameter.java b/javaparser-core/src/main/java/com/github/javaparser/ast/body/Parameter.java index 5f32ebf8e..deeb20b00 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/body/Parameter.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/body/Parameter.java @@ -275,4 +275,24 @@ public final class Parameter extends Node implements NodeWithType<Parameter, Typ public ParameterMetaModel getMetaModel() { return JavaParserMetaModel.parameterMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + for (int i = 0; i < annotations.size(); i++) { + if (annotations.get(i) == node) { + annotations.set(i, (AnnotationExpr) replacementNode); + return true; + } + } + for (int i = 0; i < varArgsAnnotations.size(); i++) { + if (varArgsAnnotations.get(i) == node) { + varArgsAnnotations.set(i, (AnnotationExpr) replacementNode); + return true; + } + } + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/body/TypeDeclaration.java b/javaparser-core/src/main/java/com/github/javaparser/ast/body/TypeDeclaration.java index d75ed8c6a..c9f4b7888 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/body/TypeDeclaration.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/body/TypeDeclaration.java @@ -206,4 +206,18 @@ public abstract class TypeDeclaration<T extends TypeDeclaration<?>> extends Body public TypeDeclarationMetaModel getMetaModel() { return JavaParserMetaModel.typeDeclarationMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + for (int i = 0; i < members.size(); i++) { + if (members.get(i) == node) { + members.set(i, (BodyDeclaration) replacementNode); + return true; + } + } + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/body/VariableDeclarator.java b/javaparser-core/src/main/java/com/github/javaparser/ast/body/VariableDeclarator.java index 007b65a3f..ed2bfea45 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/body/VariableDeclarator.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/body/VariableDeclarator.java @@ -242,4 +242,23 @@ public final class VariableDeclarator extends Node implements NodeWithType<Varia public VariableDeclaratorMetaModel getMetaModel() { return JavaParserMetaModel.variableDeclaratorMetaModel; } + + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public VariableDeclarator replaceInitializer(Expression replacement) { + return setInitializer((Expression) replacement); + } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + if (initializer != null) { + if (node == initializer) { + replaceInitializer((Expression) replacementNode); + return true; + } + } + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/comments/BlockComment.java b/javaparser-core/src/main/java/com/github/javaparser/ast/comments/BlockComment.java index 111f09c99..cb19b78e3 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/comments/BlockComment.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/comments/BlockComment.java @@ -87,4 +87,12 @@ public final class BlockComment extends Comment { public BlockCommentMetaModel getMetaModel() { return JavaParserMetaModel.blockCommentMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/comments/Comment.java b/javaparser-core/src/main/java/com/github/javaparser/ast/comments/Comment.java index 95102820a..ad1c3e9f2 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/comments/Comment.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/comments/Comment.java @@ -161,4 +161,12 @@ public abstract class Comment extends Node { public CommentMetaModel getMetaModel() { return JavaParserMetaModel.commentMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/comments/JavadocComment.java b/javaparser-core/src/main/java/com/github/javaparser/ast/comments/JavadocComment.java index d1d67c61d..8eec55e10 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/comments/JavadocComment.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/comments/JavadocComment.java @@ -89,4 +89,12 @@ public final class JavadocComment extends Comment { public JavadocCommentMetaModel getMetaModel() { return JavaParserMetaModel.javadocCommentMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/comments/LineComment.java b/javaparser-core/src/main/java/com/github/javaparser/ast/comments/LineComment.java index fcbe03b7a..eb4ffab14 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/comments/LineComment.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/comments/LineComment.java @@ -91,4 +91,12 @@ public final class LineComment extends Comment { public LineCommentMetaModel getMetaModel() { return JavaParserMetaModel.lineCommentMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/AnnotationExpr.java b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/AnnotationExpr.java index 92b16b3f5..ec6350177 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/AnnotationExpr.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/AnnotationExpr.java @@ -96,4 +96,12 @@ public abstract class AnnotationExpr extends Expression implements NodeWithName< public AnnotationExprMetaModel getMetaModel() { return JavaParserMetaModel.annotationExprMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/ArrayAccessExpr.java b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/ArrayAccessExpr.java index d629e3d2a..e40a5287e 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/ArrayAccessExpr.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/ArrayAccessExpr.java @@ -130,4 +130,12 @@ public final class ArrayAccessExpr extends Expression { public ArrayAccessExprMetaModel getMetaModel() { return JavaParserMetaModel.arrayAccessExprMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/ArrayCreationExpr.java b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/ArrayCreationExpr.java index 14efd838e..756205062 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/ArrayCreationExpr.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/ArrayCreationExpr.java @@ -230,4 +230,29 @@ public final class ArrayCreationExpr extends Expression { public ArrayCreationExprMetaModel getMetaModel() { return JavaParserMetaModel.arrayCreationExprMetaModel; } + + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public ArrayCreationExpr replaceInitializer(ArrayInitializerExpr replacement) { + return setInitializer((ArrayInitializerExpr) replacement); + } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + if (initializer != null) { + if (node == initializer) { + replaceInitializer((ArrayInitializerExpr) replacementNode); + return true; + } + } + for (int i = 0; i < levels.size(); i++) { + if (levels.get(i) == node) { + levels.set(i, (ArrayCreationLevel) replacementNode); + return true; + } + } + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/ArrayInitializerExpr.java b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/ArrayInitializerExpr.java index 8fe66a55b..c6b1349c6 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/ArrayInitializerExpr.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/ArrayInitializerExpr.java @@ -125,4 +125,18 @@ public final class ArrayInitializerExpr extends Expression { public ArrayInitializerExprMetaModel getMetaModel() { return JavaParserMetaModel.arrayInitializerExprMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + for (int i = 0; i < values.size(); i++) { + if (values.get(i) == node) { + values.set(i, (Expression) replacementNode); + return true; + } + } + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/AssignExpr.java b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/AssignExpr.java index ecef792f8..8b33f8ad8 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/AssignExpr.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/AssignExpr.java @@ -166,4 +166,12 @@ public final class AssignExpr extends Expression { public AssignExprMetaModel getMetaModel() { return JavaParserMetaModel.assignExprMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/BinaryExpr.java b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/BinaryExpr.java index f4d41eaf2..2775b6d9f 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/BinaryExpr.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/BinaryExpr.java @@ -167,4 +167,12 @@ public final class BinaryExpr extends Expression { public BinaryExprMetaModel getMetaModel() { return JavaParserMetaModel.binaryExprMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/BooleanLiteralExpr.java b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/BooleanLiteralExpr.java index 09f099231..78e31e42a 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/BooleanLiteralExpr.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/BooleanLiteralExpr.java @@ -104,4 +104,12 @@ public final class BooleanLiteralExpr extends LiteralExpr { public BooleanLiteralExprMetaModel getMetaModel() { return JavaParserMetaModel.booleanLiteralExprMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/CastExpr.java b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/CastExpr.java index 56b4f275e..0381dad24 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/CastExpr.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/CastExpr.java @@ -133,4 +133,12 @@ public final class CastExpr extends Expression implements NodeWithType<CastExpr, public CastExprMetaModel getMetaModel() { return JavaParserMetaModel.castExprMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/CharLiteralExpr.java b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/CharLiteralExpr.java index 787dabfd8..ad9bfc1a9 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/CharLiteralExpr.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/CharLiteralExpr.java @@ -124,4 +124,12 @@ public final class CharLiteralExpr extends LiteralStringValueExpr { public CharLiteralExprMetaModel getMetaModel() { return JavaParserMetaModel.charLiteralExprMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/ClassExpr.java b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/ClassExpr.java index d0375ff33..9c6f25b58 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/ClassExpr.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/ClassExpr.java @@ -111,4 +111,12 @@ public final class ClassExpr extends Expression implements NodeWithType<ClassExp public ClassExprMetaModel getMetaModel() { return JavaParserMetaModel.classExprMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/ConditionalExpr.java b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/ConditionalExpr.java index 6436282ac..30665c5f4 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/ConditionalExpr.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/ConditionalExpr.java @@ -153,4 +153,12 @@ public final class ConditionalExpr extends Expression implements NodeWithConditi public ConditionalExprMetaModel getMetaModel() { return JavaParserMetaModel.conditionalExprMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/DoubleLiteralExpr.java b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/DoubleLiteralExpr.java index 1bd745321..bdac28b0c 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/DoubleLiteralExpr.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/DoubleLiteralExpr.java @@ -102,4 +102,12 @@ public final class DoubleLiteralExpr extends LiteralStringValueExpr { public DoubleLiteralExprMetaModel getMetaModel() { return JavaParserMetaModel.doubleLiteralExprMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/EnclosedExpr.java b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/EnclosedExpr.java index f8a27ef0d..bd4c289f1 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/EnclosedExpr.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/EnclosedExpr.java @@ -124,4 +124,23 @@ public final class EnclosedExpr extends Expression { public EnclosedExprMetaModel getMetaModel() { return JavaParserMetaModel.enclosedExprMetaModel; } + + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public EnclosedExpr replaceInner(Expression replacement) { + return setInner((Expression) replacement); + } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + if (inner != null) { + if (node == inner) { + replaceInner((Expression) replacementNode); + return true; + } + } + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/Expression.java b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/Expression.java index 8580e1f37..36e8a5dbc 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/Expression.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/Expression.java @@ -67,4 +67,12 @@ public abstract class Expression extends Node { public ExpressionMetaModel getMetaModel() { return JavaParserMetaModel.expressionMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/FieldAccessExpr.java b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/FieldAccessExpr.java index eb72bf7eb..1388161f8 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/FieldAccessExpr.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/FieldAccessExpr.java @@ -213,4 +213,20 @@ public final class FieldAccessExpr extends Expression implements NodeWithSimpleN } return super.remove(node); } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + if (typeArguments != null) { + for (int i = 0; i < typeArguments.size(); i++) { + if (typeArguments.get(i) == node) { + typeArguments.set(i, (Type) replacementNode); + return true; + } + } + } + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/InstanceOfExpr.java b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/InstanceOfExpr.java index c965b4df9..dbdcf8f95 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/InstanceOfExpr.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/InstanceOfExpr.java @@ -134,4 +134,12 @@ public final class InstanceOfExpr extends Expression implements NodeWithType<Ins public InstanceOfExprMetaModel getMetaModel() { return JavaParserMetaModel.instanceOfExprMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/IntegerLiteralExpr.java b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/IntegerLiteralExpr.java index 7781e3c2c..dd8bf58d5 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/IntegerLiteralExpr.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/IntegerLiteralExpr.java @@ -114,4 +114,12 @@ public class IntegerLiteralExpr extends LiteralStringValueExpr { public IntegerLiteralExprMetaModel getMetaModel() { return JavaParserMetaModel.integerLiteralExprMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/LambdaExpr.java b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/LambdaExpr.java index d149330fb..67ff241a6 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/LambdaExpr.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/LambdaExpr.java @@ -184,4 +184,18 @@ public class LambdaExpr extends Expression implements NodeWithParameters<LambdaE public LambdaExprMetaModel getMetaModel() { return JavaParserMetaModel.lambdaExprMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + for (int i = 0; i < parameters.size(); i++) { + if (parameters.get(i) == node) { + parameters.set(i, (Parameter) replacementNode); + return true; + } + } + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/LiteralExpr.java b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/LiteralExpr.java index 55beebca6..b775e5abc 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/LiteralExpr.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/LiteralExpr.java @@ -67,4 +67,12 @@ public abstract class LiteralExpr extends Expression { public LiteralExprMetaModel getMetaModel() { return JavaParserMetaModel.literalExprMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/LiteralStringValueExpr.java b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/LiteralStringValueExpr.java index def7555b7..ecc3bb9ad 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/LiteralStringValueExpr.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/LiteralStringValueExpr.java @@ -86,4 +86,12 @@ public abstract class LiteralStringValueExpr extends LiteralExpr { public LiteralStringValueExprMetaModel getMetaModel() { return JavaParserMetaModel.literalStringValueExprMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/LongLiteralExpr.java b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/LongLiteralExpr.java index c3121ed84..3c43ba8b7 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/LongLiteralExpr.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/LongLiteralExpr.java @@ -118,4 +118,12 @@ public class LongLiteralExpr extends LiteralStringValueExpr { public LongLiteralExprMetaModel getMetaModel() { return JavaParserMetaModel.longLiteralExprMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/MarkerAnnotationExpr.java b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/MarkerAnnotationExpr.java index 5fbfefe65..b4901739d 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/MarkerAnnotationExpr.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/MarkerAnnotationExpr.java @@ -90,4 +90,12 @@ public final class MarkerAnnotationExpr extends AnnotationExpr { public MarkerAnnotationExprMetaModel getMetaModel() { return JavaParserMetaModel.markerAnnotationExprMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/MemberValuePair.java b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/MemberValuePair.java index 7b35eca98..94bd7923c 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/MemberValuePair.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/MemberValuePair.java @@ -135,4 +135,12 @@ public final class MemberValuePair extends Node implements NodeWithSimpleName<Me public MemberValuePairMetaModel getMetaModel() { return JavaParserMetaModel.memberValuePairMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/MethodCallExpr.java b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/MethodCallExpr.java index aec0d2834..89484f264 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/MethodCallExpr.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/MethodCallExpr.java @@ -234,4 +234,37 @@ public final class MethodCallExpr extends Expression implements NodeWithTypeArgu public MethodCallExprMetaModel getMetaModel() { return JavaParserMetaModel.methodCallExprMetaModel; } + + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public MethodCallExpr replaceScope(Expression replacement) { + return setScope((Expression) replacement); + } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + for (int i = 0; i < arguments.size(); i++) { + if (arguments.get(i) == node) { + arguments.set(i, (Expression) replacementNode); + return true; + } + } + if (scope != null) { + if (node == scope) { + replaceScope((Expression) replacementNode); + return true; + } + } + if (typeArguments != null) { + for (int i = 0; i < typeArguments.size(); i++) { + if (typeArguments.get(i) == node) { + typeArguments.set(i, (Type) replacementNode); + return true; + } + } + } + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/MethodReferenceExpr.java b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/MethodReferenceExpr.java index 8419e5042..6df00ceb0 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/MethodReferenceExpr.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/MethodReferenceExpr.java @@ -183,4 +183,20 @@ public class MethodReferenceExpr extends Expression implements NodeWithTypeArgum public MethodReferenceExprMetaModel getMetaModel() { return JavaParserMetaModel.methodReferenceExprMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + if (typeArguments != null) { + for (int i = 0; i < typeArguments.size(); i++) { + if (typeArguments.get(i) == node) { + typeArguments.set(i, (Type) replacementNode); + return true; + } + } + } + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/Name.java b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/Name.java index 23796165a..13ac84922 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/Name.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/Name.java @@ -219,4 +219,29 @@ public class Name extends Node implements NodeWithIdentifier<Name>, NodeWithAnno public NameMetaModel getMetaModel() { return JavaParserMetaModel.nameMetaModel; } + + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public Name replaceQualifier(Name replacement) { + return setQualifier((Name) replacement); + } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + for (int i = 0; i < annotations.size(); i++) { + if (annotations.get(i) == node) { + annotations.set(i, (AnnotationExpr) replacementNode); + return true; + } + } + if (qualifier != null) { + if (node == qualifier) { + replaceQualifier((Name) replacementNode); + return true; + } + } + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/NameExpr.java b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/NameExpr.java index 046aaf161..d4fcec258 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/NameExpr.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/NameExpr.java @@ -114,4 +114,12 @@ public class NameExpr extends Expression implements NodeWithSimpleName<NameExpr> public NameExprMetaModel getMetaModel() { return JavaParserMetaModel.nameExprMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/NormalAnnotationExpr.java b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/NormalAnnotationExpr.java index af443945d..a11e6c2f1 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/NormalAnnotationExpr.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/NormalAnnotationExpr.java @@ -141,4 +141,18 @@ public final class NormalAnnotationExpr extends AnnotationExpr { public NormalAnnotationExprMetaModel getMetaModel() { return JavaParserMetaModel.normalAnnotationExprMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + for (int i = 0; i < pairs.size(); i++) { + if (pairs.get(i) == node) { + pairs.set(i, (MemberValuePair) replacementNode); + return true; + } + } + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/NullLiteralExpr.java b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/NullLiteralExpr.java index 69e1602d6..ee4ddebd6 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/NullLiteralExpr.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/NullLiteralExpr.java @@ -80,4 +80,12 @@ public final class NullLiteralExpr extends LiteralExpr { public NullLiteralExprMetaModel getMetaModel() { return JavaParserMetaModel.nullLiteralExprMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/ObjectCreationExpr.java b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/ObjectCreationExpr.java index 1ba605a9f..9681ac44f 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/ObjectCreationExpr.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/ObjectCreationExpr.java @@ -281,4 +281,45 @@ public final class ObjectCreationExpr extends Expression implements NodeWithType public ObjectCreationExprMetaModel getMetaModel() { return JavaParserMetaModel.objectCreationExprMetaModel; } + + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public ObjectCreationExpr replaceScope(Expression replacement) { + return setScope((Expression) replacement); + } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + if (anonymousClassBody != null) { + for (int i = 0; i < anonymousClassBody.size(); i++) { + if (anonymousClassBody.get(i) == node) { + anonymousClassBody.set(i, (BodyDeclaration) replacementNode); + return true; + } + } + } + for (int i = 0; i < arguments.size(); i++) { + if (arguments.get(i) == node) { + arguments.set(i, (Expression) replacementNode); + return true; + } + } + if (scope != null) { + if (node == scope) { + replaceScope((Expression) replacementNode); + return true; + } + } + if (typeArguments != null) { + for (int i = 0; i < typeArguments.size(); i++) { + if (typeArguments.get(i) == node) { + typeArguments.set(i, (Type) replacementNode); + return true; + } + } + } + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/SimpleName.java b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/SimpleName.java index 7ceb98dd8..9bcf5e066 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/SimpleName.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/SimpleName.java @@ -112,4 +112,12 @@ public class SimpleName extends Node implements NodeWithIdentifier<SimpleName> { public SimpleNameMetaModel getMetaModel() { return JavaParserMetaModel.simpleNameMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/SingleMemberAnnotationExpr.java b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/SingleMemberAnnotationExpr.java index f05e5fd13..475ad5196 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/SingleMemberAnnotationExpr.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/SingleMemberAnnotationExpr.java @@ -107,4 +107,12 @@ public final class SingleMemberAnnotationExpr extends AnnotationExpr { public SingleMemberAnnotationExprMetaModel getMetaModel() { return JavaParserMetaModel.singleMemberAnnotationExprMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/StringLiteralExpr.java b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/StringLiteralExpr.java index d76ea6b13..00eeabd61 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/StringLiteralExpr.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/StringLiteralExpr.java @@ -133,4 +133,12 @@ public class StringLiteralExpr extends LiteralStringValueExpr { public StringLiteralExprMetaModel getMetaModel() { return JavaParserMetaModel.stringLiteralExprMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/SuperExpr.java b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/SuperExpr.java index 7e558e642..771ee60bd 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/SuperExpr.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/SuperExpr.java @@ -127,4 +127,23 @@ public final class SuperExpr extends Expression { public SuperExprMetaModel getMetaModel() { return JavaParserMetaModel.superExprMetaModel; } + + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public SuperExpr replaceClassExpr(Expression replacement) { + return setClassExpr((Expression) replacement); + } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + if (classExpr != null) { + if (node == classExpr) { + replaceClassExpr((Expression) replacementNode); + return true; + } + } + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/ThisExpr.java b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/ThisExpr.java index 961025d32..c358fa67d 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/ThisExpr.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/ThisExpr.java @@ -121,4 +121,23 @@ public final class ThisExpr extends Expression { public ThisExprMetaModel getMetaModel() { return JavaParserMetaModel.thisExprMetaModel; } + + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public ThisExpr replaceClassExpr(Expression replacement) { + return setClassExpr((Expression) replacement); + } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + if (classExpr != null) { + if (node == classExpr) { + replaceClassExpr((Expression) replacementNode); + return true; + } + } + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/TypeExpr.java b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/TypeExpr.java index a145eebc7..bb55ddf06 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/TypeExpr.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/TypeExpr.java @@ -112,4 +112,12 @@ public class TypeExpr extends Expression implements NodeWithType<TypeExpr, Type> public TypeExprMetaModel getMetaModel() { return JavaParserMetaModel.typeExprMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/UnaryExpr.java b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/UnaryExpr.java index c8f9b7f07..57aad5720 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/UnaryExpr.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/UnaryExpr.java @@ -170,4 +170,12 @@ public final class UnaryExpr extends Expression implements NodeWithExpression<Un public UnaryExprMetaModel getMetaModel() { return JavaParserMetaModel.unaryExprMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/VariableDeclarationExpr.java b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/VariableDeclarationExpr.java index df435396d..04e563e49 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/VariableDeclarationExpr.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/VariableDeclarationExpr.java @@ -213,4 +213,24 @@ public final class VariableDeclarationExpr extends Expression implements NodeWit public VariableDeclarationExprMetaModel getMetaModel() { return JavaParserMetaModel.variableDeclarationExprMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + for (int i = 0; i < annotations.size(); i++) { + if (annotations.get(i) == node) { + annotations.set(i, (AnnotationExpr) replacementNode); + return true; + } + } + for (int i = 0; i < variables.size(); i++) { + if (variables.get(i) == node) { + variables.set(i, (VariableDeclarator) replacementNode); + return true; + } + } + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/modules/ModuleDeclaration.java b/javaparser-core/src/main/java/com/github/javaparser/ast/modules/ModuleDeclaration.java index 0fa9c6704..79ef8e03d 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/modules/ModuleDeclaration.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/modules/ModuleDeclaration.java @@ -176,4 +176,24 @@ public class ModuleDeclaration extends Node implements NodeWithName<ModuleDeclar public ModuleDeclarationMetaModel getMetaModel() { return JavaParserMetaModel.moduleDeclarationMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + for (int i = 0; i < annotations.size(); i++) { + if (annotations.get(i) == node) { + annotations.set(i, (AnnotationExpr) replacementNode); + return true; + } + } + for (int i = 0; i < moduleStmts.size(); i++) { + if (moduleStmts.get(i) == node) { + moduleStmts.set(i, (ModuleStmt) replacementNode); + return true; + } + } + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/modules/ModuleExportsStmt.java b/javaparser-core/src/main/java/com/github/javaparser/ast/modules/ModuleExportsStmt.java index acb6ba45c..734cb17e5 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/modules/ModuleExportsStmt.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/modules/ModuleExportsStmt.java @@ -121,4 +121,18 @@ public class ModuleExportsStmt extends ModuleStmt implements NodeWithName<Module public ModuleExportsStmtMetaModel getMetaModel() { return JavaParserMetaModel.moduleExportsStmtMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + for (int i = 0; i < moduleNames.size(); i++) { + if (moduleNames.get(i) == node) { + moduleNames.set(i, (Name) replacementNode); + return true; + } + } + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/modules/ModuleOpensStmt.java b/javaparser-core/src/main/java/com/github/javaparser/ast/modules/ModuleOpensStmt.java index 24aa1e903..ca6cb85be 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/modules/ModuleOpensStmt.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/modules/ModuleOpensStmt.java @@ -121,4 +121,18 @@ public class ModuleOpensStmt extends ModuleStmt implements NodeWithName<ModuleOp public ModuleOpensStmtMetaModel getMetaModel() { return JavaParserMetaModel.moduleOpensStmtMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + for (int i = 0; i < moduleNames.size(); i++) { + if (moduleNames.get(i) == node) { + moduleNames.set(i, (Name) replacementNode); + return true; + } + } + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/modules/ModuleProvidesStmt.java b/javaparser-core/src/main/java/com/github/javaparser/ast/modules/ModuleProvidesStmt.java index a540f95e6..3af2870dc 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/modules/ModuleProvidesStmt.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/modules/ModuleProvidesStmt.java @@ -122,4 +122,18 @@ public class ModuleProvidesStmt extends ModuleStmt implements NodeWithType<Modul public ModuleProvidesStmtMetaModel getMetaModel() { return JavaParserMetaModel.moduleProvidesStmtMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + for (int i = 0; i < withTypes.size(); i++) { + if (withTypes.get(i) == node) { + withTypes.set(i, (Type) replacementNode); + return true; + } + } + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/modules/ModuleRequiresStmt.java b/javaparser-core/src/main/java/com/github/javaparser/ast/modules/ModuleRequiresStmt.java index e4bdd7d23..78f66375e 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/modules/ModuleRequiresStmt.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/modules/ModuleRequiresStmt.java @@ -118,4 +118,12 @@ public class ModuleRequiresStmt extends ModuleStmt implements NodeWithStaticModi public ModuleRequiresStmtMetaModel getMetaModel() { return JavaParserMetaModel.moduleRequiresStmtMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/modules/ModuleStmt.java b/javaparser-core/src/main/java/com/github/javaparser/ast/modules/ModuleStmt.java index 9675d7468..4daba70be 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/modules/ModuleStmt.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/modules/ModuleStmt.java @@ -42,4 +42,12 @@ public abstract class ModuleStmt extends Node { public ModuleStmtMetaModel getMetaModel() { return JavaParserMetaModel.moduleStmtMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/modules/ModuleUsesStmt.java b/javaparser-core/src/main/java/com/github/javaparser/ast/modules/ModuleUsesStmt.java index 5402869e6..de8c16b76 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/modules/ModuleUsesStmt.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/modules/ModuleUsesStmt.java @@ -84,4 +84,12 @@ public class ModuleUsesStmt extends ModuleStmt implements NodeWithType<ModuleUse public ModuleUsesStmtMetaModel getMetaModel() { return JavaParserMetaModel.moduleUsesStmtMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/AssertStmt.java b/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/AssertStmt.java index 6649300aa..d23a64902 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/AssertStmt.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/AssertStmt.java @@ -152,4 +152,23 @@ public final class AssertStmt extends Statement { public AssertStmtMetaModel getMetaModel() { return JavaParserMetaModel.assertStmtMetaModel; } + + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public AssertStmt replaceMessage(Expression replacement) { + return setMessage((Expression) replacement); + } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + if (message != null) { + if (node == message) { + replaceMessage((Expression) replacementNode); + return true; + } + } + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/BlockStmt.java b/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/BlockStmt.java index 53536d494..93e1cf39e 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/BlockStmt.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/BlockStmt.java @@ -123,4 +123,18 @@ public final class BlockStmt extends Statement implements NodeWithStatements<Blo public BlockStmtMetaModel getMetaModel() { return JavaParserMetaModel.blockStmtMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + for (int i = 0; i < statements.size(); i++) { + if (statements.get(i) == node) { + statements.set(i, (Statement) replacementNode); + return true; + } + } + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/BreakStmt.java b/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/BreakStmt.java index 0d72b53d8..194b5c1f1 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/BreakStmt.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/BreakStmt.java @@ -129,4 +129,23 @@ public final class BreakStmt extends Statement { public BreakStmtMetaModel getMetaModel() { return JavaParserMetaModel.breakStmtMetaModel; } + + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public BreakStmt replaceLabel(SimpleName replacement) { + return setLabel((SimpleName) replacement); + } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + if (label != null) { + if (node == label) { + replaceLabel((SimpleName) replacementNode); + return true; + } + } + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/CatchClause.java b/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/CatchClause.java index 13c55c913..544a2bfc9 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/CatchClause.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/CatchClause.java @@ -147,4 +147,12 @@ public final class CatchClause extends Node implements NodeWithBlockStmt<CatchCl public CatchClauseMetaModel getMetaModel() { return JavaParserMetaModel.catchClauseMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/ContinueStmt.java b/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/ContinueStmt.java index f0f6452b1..2a23cafd9 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/ContinueStmt.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/ContinueStmt.java @@ -131,4 +131,23 @@ public final class ContinueStmt extends Statement implements NodeWithOptionalLab public ContinueStmtMetaModel getMetaModel() { return JavaParserMetaModel.continueStmtMetaModel; } + + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public ContinueStmt replaceLabel(SimpleName replacement) { + return setLabel((SimpleName) replacement); + } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + if (label != null) { + if (node == label) { + replaceLabel((SimpleName) replacementNode); + return true; + } + } + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/DoStmt.java b/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/DoStmt.java index a037cc222..a78758278 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/DoStmt.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/DoStmt.java @@ -134,4 +134,12 @@ public final class DoStmt extends Statement implements NodeWithBody<DoStmt>, Nod public DoStmtMetaModel getMetaModel() { return JavaParserMetaModel.doStmtMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/EmptyStmt.java b/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/EmptyStmt.java index ec6248245..1aed62406 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/EmptyStmt.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/EmptyStmt.java @@ -77,4 +77,12 @@ public final class EmptyStmt extends Statement { public EmptyStmtMetaModel getMetaModel() { return JavaParserMetaModel.emptyStmtMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/ExplicitConstructorInvocationStmt.java b/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/ExplicitConstructorInvocationStmt.java index a73afce0d..01c9c3751 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/ExplicitConstructorInvocationStmt.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/ExplicitConstructorInvocationStmt.java @@ -239,4 +239,37 @@ public final class ExplicitConstructorInvocationStmt extends Statement implement public ExplicitConstructorInvocationStmtMetaModel getMetaModel() { return JavaParserMetaModel.explicitConstructorInvocationStmtMetaModel; } + + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public ExplicitConstructorInvocationStmt replaceExpression(Expression replacement) { + return setExpression((Expression) replacement); + } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + for (int i = 0; i < arguments.size(); i++) { + if (arguments.get(i) == node) { + arguments.set(i, (Expression) replacementNode); + return true; + } + } + if (expression != null) { + if (node == expression) { + replaceExpression((Expression) replacementNode); + return true; + } + } + if (typeArguments != null) { + for (int i = 0; i < typeArguments.size(); i++) { + if (typeArguments.get(i) == node) { + typeArguments.set(i, (Type) replacementNode); + return true; + } + } + } + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/ExpressionStmt.java b/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/ExpressionStmt.java index b47b129d2..f357656ff 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/ExpressionStmt.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/ExpressionStmt.java @@ -110,4 +110,12 @@ public final class ExpressionStmt extends Statement implements NodeWithExpressio public ExpressionStmtMetaModel getMetaModel() { return JavaParserMetaModel.expressionStmtMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/ForStmt.java b/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/ForStmt.java index 81b9d1643..753de00aa 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/ForStmt.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/ForStmt.java @@ -217,4 +217,35 @@ public final class ForStmt extends Statement implements NodeWithBody<ForStmt> { public ForStmtMetaModel getMetaModel() { return JavaParserMetaModel.forStmtMetaModel; } + + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public ForStmt replaceCompare(Expression replacement) { + return setCompare((Expression) replacement); + } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + if (compare != null) { + if (node == compare) { + replaceCompare((Expression) replacementNode); + return true; + } + } + for (int i = 0; i < initialization.size(); i++) { + if (initialization.get(i) == node) { + initialization.set(i, (Expression) replacementNode); + return true; + } + } + for (int i = 0; i < update.size(); i++) { + if (update.get(i) == node) { + update.set(i, (Expression) replacementNode); + return true; + } + } + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/ForeachStmt.java b/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/ForeachStmt.java index ccb5f057f..7d0621541 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/ForeachStmt.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/ForeachStmt.java @@ -160,4 +160,12 @@ public final class ForeachStmt extends Statement implements NodeWithBody<Foreach public ForeachStmtMetaModel getMetaModel() { return JavaParserMetaModel.foreachStmtMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/IfStmt.java b/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/IfStmt.java index ced836c8d..1f4ddfd98 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/IfStmt.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/IfStmt.java @@ -184,4 +184,23 @@ public final class IfStmt extends Statement implements NodeWithCondition<IfStmt> public IfStmtMetaModel getMetaModel() { return JavaParserMetaModel.ifStmtMetaModel; } + + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public IfStmt replaceElseStmt(Statement replacement) { + return setElseStmt((Statement) replacement); + } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + if (elseStmt != null) { + if (node == elseStmt) { + replaceElseStmt((Statement) replacementNode); + return true; + } + } + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/LabeledStmt.java b/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/LabeledStmt.java index e1dd0d47e..86b122cff 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/LabeledStmt.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/LabeledStmt.java @@ -134,4 +134,12 @@ public final class LabeledStmt extends Statement { public LabeledStmtMetaModel getMetaModel() { return JavaParserMetaModel.labeledStmtMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/LocalClassDeclarationStmt.java b/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/LocalClassDeclarationStmt.java index ca22c346c..6825cd38c 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/LocalClassDeclarationStmt.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/LocalClassDeclarationStmt.java @@ -111,4 +111,12 @@ public final class LocalClassDeclarationStmt extends Statement { public LocalClassDeclarationStmtMetaModel getMetaModel() { return JavaParserMetaModel.localClassDeclarationStmtMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/ReturnStmt.java b/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/ReturnStmt.java index 197465564..4f8595533 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/ReturnStmt.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/ReturnStmt.java @@ -132,4 +132,23 @@ public final class ReturnStmt extends Statement { public ReturnStmtMetaModel getMetaModel() { return JavaParserMetaModel.returnStmtMetaModel; } + + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public ReturnStmt replaceExpression(Expression replacement) { + return setExpression((Expression) replacement); + } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + if (expression != null) { + if (node == expression) { + replaceExpression((Expression) replacementNode); + return true; + } + } + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/Statement.java b/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/Statement.java index 11d37a010..d35991c3b 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/Statement.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/Statement.java @@ -67,4 +67,12 @@ public abstract class Statement extends Node { public StatementMetaModel getMetaModel() { return JavaParserMetaModel.statementMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/SwitchEntryStmt.java b/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/SwitchEntryStmt.java index 526a76dd1..6cc4603b9 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/SwitchEntryStmt.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/SwitchEntryStmt.java @@ -178,4 +178,29 @@ public final class SwitchEntryStmt extends Statement implements NodeWithStatemen public SwitchEntryStmtMetaModel getMetaModel() { return JavaParserMetaModel.switchEntryStmtMetaModel; } + + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public SwitchEntryStmt replaceLabel(Expression replacement) { + return setLabel((Expression) replacement); + } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + if (label != null) { + if (node == label) { + replaceLabel((Expression) replacementNode); + return true; + } + } + for (int i = 0; i < statements.size(); i++) { + if (statements.get(i) == node) { + statements.set(i, (Statement) replacementNode); + return true; + } + } + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/SwitchStmt.java b/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/SwitchStmt.java index 552f1d873..7d01ba07b 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/SwitchStmt.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/SwitchStmt.java @@ -163,4 +163,18 @@ public final class SwitchStmt extends Statement { public SwitchStmtMetaModel getMetaModel() { return JavaParserMetaModel.switchStmtMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + for (int i = 0; i < entries.size(); i++) { + if (entries.get(i) == node) { + entries.set(i, (SwitchEntryStmt) replacementNode); + return true; + } + } + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/SynchronizedStmt.java b/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/SynchronizedStmt.java index 546766aac..5f6c0f20d 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/SynchronizedStmt.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/SynchronizedStmt.java @@ -134,4 +134,12 @@ public final class SynchronizedStmt extends Statement implements NodeWithBlockSt public SynchronizedStmtMetaModel getMetaModel() { return JavaParserMetaModel.synchronizedStmtMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/ThrowStmt.java b/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/ThrowStmt.java index 2b5364751..cbc1f7f37 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/ThrowStmt.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/ThrowStmt.java @@ -111,4 +111,12 @@ public final class ThrowStmt extends Statement implements NodeWithExpression<Thr public ThrowStmtMetaModel getMetaModel() { return JavaParserMetaModel.throwStmtMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/TryStmt.java b/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/TryStmt.java index 73f9cb290..74f3ae189 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/TryStmt.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/TryStmt.java @@ -233,4 +233,46 @@ public final class TryStmt extends Statement { public TryStmtMetaModel getMetaModel() { return JavaParserMetaModel.tryStmtMetaModel; } + + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public TryStmt replaceFinallyBlock(BlockStmt replacement) { + return setFinallyBlock((BlockStmt) replacement); + } + + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public TryStmt replaceTryBlock(BlockStmt replacement) { + return setTryBlock((BlockStmt) replacement); + } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + for (int i = 0; i < catchClauses.size(); i++) { + if (catchClauses.get(i) == node) { + catchClauses.set(i, (CatchClause) replacementNode); + return true; + } + } + if (finallyBlock != null) { + if (node == finallyBlock) { + replaceFinallyBlock((BlockStmt) replacementNode); + return true; + } + } + for (int i = 0; i < resources.size(); i++) { + if (resources.get(i) == node) { + resources.set(i, (VariableDeclarationExpr) replacementNode); + return true; + } + } + if (tryBlock != null) { + if (node == tryBlock) { + replaceTryBlock((BlockStmt) replacementNode); + return true; + } + } + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/UnparsableStmt.java b/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/UnparsableStmt.java index c7def9caa..8d2b6b275 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/UnparsableStmt.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/UnparsableStmt.java @@ -63,4 +63,12 @@ public class UnparsableStmt extends Statement { public Parsedness getParsed() { return UNPARSABLE; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/WhileStmt.java b/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/WhileStmt.java index c3778f432..3d209fc1e 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/WhileStmt.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/WhileStmt.java @@ -134,4 +134,12 @@ public final class WhileStmt extends Statement implements NodeWithBody<WhileStmt public WhileStmtMetaModel getMetaModel() { return JavaParserMetaModel.whileStmtMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/type/ArrayType.java b/javaparser-core/src/main/java/com/github/javaparser/ast/type/ArrayType.java index ecbc8c7cc..738336a51 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/type/ArrayType.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/type/ArrayType.java @@ -204,4 +204,12 @@ public class ArrayType extends ReferenceType implements NodeWithAnnotations<Arra public ArrayTypeMetaModel getMetaModel() { return JavaParserMetaModel.arrayTypeMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/type/ClassOrInterfaceType.java b/javaparser-core/src/main/java/com/github/javaparser/ast/type/ClassOrInterfaceType.java index 4b199dec6..662f0a6a5 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/type/ClassOrInterfaceType.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/type/ClassOrInterfaceType.java @@ -243,4 +243,31 @@ public final class ClassOrInterfaceType extends ReferenceType implements NodeWit public ClassOrInterfaceTypeMetaModel getMetaModel() { return JavaParserMetaModel.classOrInterfaceTypeMetaModel; } + + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public ClassOrInterfaceType replaceScope(ClassOrInterfaceType replacement) { + return setScope((ClassOrInterfaceType) replacement); + } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + if (scope != null) { + if (node == scope) { + replaceScope((ClassOrInterfaceType) replacementNode); + return true; + } + } + if (typeArguments != null) { + for (int i = 0; i < typeArguments.size(); i++) { + if (typeArguments.get(i) == node) { + typeArguments.set(i, (Type) replacementNode); + return true; + } + } + } + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/type/IntersectionType.java b/javaparser-core/src/main/java/com/github/javaparser/ast/type/IntersectionType.java index 83e078d27..af9b37787 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/type/IntersectionType.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/type/IntersectionType.java @@ -140,4 +140,18 @@ public class IntersectionType extends Type implements NodeWithAnnotations<Inters public IntersectionTypeMetaModel getMetaModel() { return JavaParserMetaModel.intersectionTypeMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + for (int i = 0; i < elements.size(); i++) { + if (elements.get(i) == node) { + elements.set(i, (ReferenceType) replacementNode); + return true; + } + } + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/type/PrimitiveType.java b/javaparser-core/src/main/java/com/github/javaparser/ast/type/PrimitiveType.java index 0bef5100a..8aa16e69a 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/type/PrimitiveType.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/type/PrimitiveType.java @@ -196,4 +196,12 @@ public final class PrimitiveType extends Type implements NodeWithAnnotations<Pri public PrimitiveTypeMetaModel getMetaModel() { return JavaParserMetaModel.primitiveTypeMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/type/ReferenceType.java b/javaparser-core/src/main/java/com/github/javaparser/ast/type/ReferenceType.java index 44d7924cb..4595bc8a7 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/type/ReferenceType.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/type/ReferenceType.java @@ -73,4 +73,12 @@ public abstract class ReferenceType extends Type { public ReferenceTypeMetaModel getMetaModel() { return JavaParserMetaModel.referenceTypeMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/type/Type.java b/javaparser-core/src/main/java/com/github/javaparser/ast/type/Type.java index a71427d17..210110a85 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/type/Type.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/type/Type.java @@ -133,4 +133,18 @@ public abstract class Type extends Node { public TypeMetaModel getMetaModel() { return JavaParserMetaModel.typeMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + for (int i = 0; i < annotations.size(); i++) { + if (annotations.get(i) == node) { + annotations.set(i, (AnnotationExpr) replacementNode); + return true; + } + } + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/type/TypeParameter.java b/javaparser-core/src/main/java/com/github/javaparser/ast/type/TypeParameter.java index eb0d6fe69..ab7ee98f1 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/type/TypeParameter.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/type/TypeParameter.java @@ -199,4 +199,18 @@ public final class TypeParameter extends ReferenceType implements NodeWithSimple public TypeParameterMetaModel getMetaModel() { return JavaParserMetaModel.typeParameterMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + for (int i = 0; i < typeBound.size(); i++) { + if (typeBound.get(i) == node) { + typeBound.set(i, (ClassOrInterfaceType) replacementNode); + return true; + } + } + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/type/UnionType.java b/javaparser-core/src/main/java/com/github/javaparser/ast/type/UnionType.java index 919c519e4..cd5c6f944 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/type/UnionType.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/type/UnionType.java @@ -137,4 +137,18 @@ public class UnionType extends Type implements NodeWithAnnotations<UnionType> { public UnionTypeMetaModel getMetaModel() { return JavaParserMetaModel.unionTypeMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + for (int i = 0; i < elements.size(); i++) { + if (elements.get(i) == node) { + elements.set(i, (ReferenceType) replacementNode); + return true; + } + } + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/type/UnknownType.java b/javaparser-core/src/main/java/com/github/javaparser/ast/type/UnknownType.java index e73bd85ac..74ee8bf0b 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/type/UnknownType.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/type/UnknownType.java @@ -106,4 +106,12 @@ public final class UnknownType extends Type { public UnknownTypeMetaModel getMetaModel() { return JavaParserMetaModel.unknownTypeMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/type/VoidType.java b/javaparser-core/src/main/java/com/github/javaparser/ast/type/VoidType.java index 5ed68277a..91ff2161a 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/type/VoidType.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/type/VoidType.java @@ -102,4 +102,12 @@ public final class VoidType extends Type implements NodeWithAnnotations<VoidType public VoidTypeMetaModel getMetaModel() { return JavaParserMetaModel.voidTypeMetaModel; } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + return super.replace(node, replacementNode); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/type/WildcardType.java b/javaparser-core/src/main/java/com/github/javaparser/ast/type/WildcardType.java index 13c76b8d9..78acb4144 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/type/WildcardType.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/type/WildcardType.java @@ -236,4 +236,34 @@ public final class WildcardType extends Type implements NodeWithAnnotations<Wild public WildcardTypeMetaModel getMetaModel() { return JavaParserMetaModel.wildcardTypeMetaModel; } + + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public WildcardType replaceExtendedType(ReferenceType replacement) { + return setExtendedType((ReferenceType) replacement); + } + + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public WildcardType replaceSuperType(ReferenceType replacement) { + return setSuperType((ReferenceType) replacement); + } + + @Override + @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator") + public boolean replace(Node node, Node replacementNode) { + if (node == null) + return false; + if (extendedType != null) { + if (node == extendedType) { + replaceExtendedType((ReferenceType) replacementNode); + return true; + } + } + if (superType != null) { + if (node == superType) { + replaceSuperType((ReferenceType) replacementNode); + return true; + } + } + return super.replace(node, replacementNode); + } } diff --git a/javaparser-testing/src/test/java/com/github/javaparser/ast/ReplaceNodeTest.java b/javaparser-testing/src/test/java/com/github/javaparser/ast/ReplaceNodeTest.java new file mode 100644 index 000000000..5e56c578c --- /dev/null +++ b/javaparser-testing/src/test/java/com/github/javaparser/ast/ReplaceNodeTest.java @@ -0,0 +1,41 @@ +package com.github.javaparser.ast; + +import org.junit.Test; + +import static com.github.javaparser.JavaParser.parse; +import static com.github.javaparser.JavaParser.parsePackageDeclaration; +import static org.junit.Assert.assertEquals; + +public class ReplaceNodeTest { + @Test + public void testSimplePropertyWithDedicatedReplace() { + CompilationUnit cu = parse("package x; class Y {}"); + cu.replacePackageDeclaration(parsePackageDeclaration("package z;")); + assertEquals("package z;\n" + + "\n" + + "class Y {\n" + + "}\n", cu.toString()); + } + + @Test + public void testSimplePropertyWithGenericReplace() { + CompilationUnit cu = parse("package x; class Y {}"); + cu.replace(cu.getPackageDeclaration().get(), parsePackageDeclaration("package z;")); + assertEquals("package z;\n" + + "\n" + + "class Y {\n" + + "}\n", cu.toString()); + } + + @Test + public void testListProperty() { + CompilationUnit cu = parse("package x; class Y {}"); + cu.replace(cu.getClassByName("Y").get(), parse("class B{int y;}").getClassByName("B").get()); + assertEquals("package x;\n" + + "\n" + + "class B {\n" + + "\n" + + " int y;\n" + + "}\n", cu.toString()); + } +} |