aboutsummaryrefslogtreecommitdiff
path: root/javaparser-core-generators/src/main/java/com/github/javaparser
diff options
context:
space:
mode:
authorDanny van Bruggen <hexagonaal@gmail.com>2017-07-25 22:07:31 +0200
committerDanny van Bruggen <hexagonaal@gmail.com>2017-07-25 22:13:41 +0200
commit141963f6703b0c9d60b7d9bf59ded934dd5e6faf (patch)
tree937e2139fa840221dc8e4adbd1833ac5e44d3810 /javaparser-core-generators/src/main/java/com/github/javaparser
parente1dd274bd3e9e2b09b50462ae7a68a2cc61aa4c0 (diff)
downloadjavaparser-141963f6703b0c9d60b7d9bf59ded934dd5e6faf.tar.gz
Fix broken replace implementation
Diffstat (limited to 'javaparser-core-generators/src/main/java/com/github/javaparser')
-rw-r--r--javaparser-core-generators/src/main/java/com/github/javaparser/generator/core/node/ReplaceMethodGenerator.java22
1 files changed, 3 insertions, 19 deletions
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
index 9ef9b1d26..19ee26f7b 100644
--- 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
@@ -37,11 +37,7 @@ public class ReplaceMethodGenerator extends NodeGenerator {
if (property.isNodeList()) {
check = nodeListCheck(property);
} else {
- if (property.isRequired()) {
- continue;
- }
- String replaceAttributeMethodName = generateReplaceMethodForAttribute(nodeCoid, nodeMetaModel, property);
- check = attributeCheck(property, replaceAttributeMethodName);
+ check = attributeCheck(property, property.getSetterMethodName());
}
if (property.isOptional()) {
check = f("if (%s != null) { %s }", property.getName(), check);
@@ -58,11 +54,11 @@ public class ReplaceMethodGenerator extends NodeGenerator {
annotateGenerated(replaceNodeMethod);
}
- private String attributeCheck(PropertyMetaModel property, String replaceAttributeMethodName) {
+ private String attributeCheck(PropertyMetaModel property, String attributeSetterName) {
return f("if (node == %s) {" +
" %s((%s) replacementNode);" +
" return true;\n" +
- "}", property.getName(), replaceAttributeMethodName, property.getTypeName());
+ "}", property.getName(), attributeSetterName, property.getTypeName());
}
private String nodeListCheck(PropertyMetaModel property) {
@@ -73,16 +69,4 @@ public class ReplaceMethodGenerator extends NodeGenerator {
" }" +
"}", 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;
- }
}