diff options
author | Danny van Bruggen <hexagonaal@gmail.com> | 2017-02-10 13:02:33 +0100 |
---|---|---|
committer | Danny van Bruggen <hexagonaal@gmail.com> | 2017-02-10 13:02:33 +0100 |
commit | 814f3f23d37d3e0906e257bdaf16382bad93266e (patch) | |
tree | 5926c9c606e05d5a01913cafd6c06637d6efa20e /javaparser-metamodel-generator | |
parent | d173f05f17fa52920b55ffac2a6b9eab2fe578a7 (diff) | |
download | javaparser-814f3f23d37d3e0906e257bdaf16382bad93266e.tar.gz |
Merge javaparser-generator-utils with javaparser-core
Diffstat (limited to 'javaparser-metamodel-generator')
4 files changed, 8 insertions, 36 deletions
diff --git a/javaparser-metamodel-generator/src/main/java/com/github/javaparser/generator/metamodel/InitializeConstructorParametersStatementsGenerator.java b/javaparser-metamodel-generator/src/main/java/com/github/javaparser/generator/metamodel/InitializeConstructorParametersStatementsGenerator.java index e3e13bc02..32fe88fb1 100644 --- a/javaparser-metamodel-generator/src/main/java/com/github/javaparser/generator/metamodel/InitializeConstructorParametersStatementsGenerator.java +++ b/javaparser-metamodel-generator/src/main/java/com/github/javaparser/generator/metamodel/InitializeConstructorParametersStatementsGenerator.java @@ -3,7 +3,6 @@ package com.github.javaparser.generator.metamodel; import com.github.javaparser.ast.AllFieldsConstructor; import com.github.javaparser.ast.Node; import com.github.javaparser.ast.NodeList; -import com.github.javaparser.ast.body.ClassOrInterfaceDeclaration; import com.github.javaparser.ast.stmt.Statement; import java.lang.annotation.Annotation; @@ -11,39 +10,10 @@ import java.lang.reflect.Constructor; import java.lang.reflect.Field; import static com.github.javaparser.JavaParser.parseStatement; -import static com.github.javaparser.ast.Modifier.PUBLIC; import static com.github.javaparser.generator.metamodel.MetaModelGenerator.*; -import static com.github.javaparser.generator.utils.GeneratorUtils.*; +import static com.github.javaparser.utils.CodeGenerationUtils.*; public class InitializeConstructorParametersStatementsGenerator { - public void generate2(Class<?> nodeClass, Field field, ClassOrInterfaceDeclaration nodeMetaModelClass, String nodeMetaModelFieldName, NodeList<Statement> initializePropertyMetaModelsStatements) throws NoSuchMethodException { - - AstTypeAnalysis fieldAnalysis = new AstTypeAnalysis(nodeClass.getMethod(getter(field)).getGenericReturnType()); - - Class<?> fieldType = fieldAnalysis.innerType; - String typeName = fieldType.getTypeName().replace('$', '.'); - String propertyMetaModelFieldName = propertyMetaModelFieldName(field); - nodeMetaModelClass.addField("PropertyMetaModel", propertyMetaModelFieldName, PUBLIC); - String propertyInitializer = f("new PropertyMetaModel(%s, \"%s\", %s.class, %s, %s, %s, %s, %s)", - nodeMetaModelFieldName, - field.getName(), - typeName, - optionalOf(decapitalize(nodeMetaModelName(fieldType)), isNode(fieldType)), - fieldAnalysis.isOptional, - fieldAnalysis.isNodeList, - fieldAnalysis.isEnumSet, - fieldAnalysis.isSelfType); - String fieldSetting = f("%s.%s=%s;", nodeMetaModelFieldName, propertyMetaModelFieldName, propertyInitializer); - String fieldAddition = f("%s.getDeclaredPropertyMetaModels().add(%s.%s);", nodeMetaModelFieldName, nodeMetaModelFieldName, propertyMetaModelFieldName); - - initializePropertyMetaModelsStatements.add(parseStatement(fieldSetting)); - initializePropertyMetaModelsStatements.add(parseStatement(fieldAddition)); - } - - private String getter(Field field) { - return getterName(field.getType(), field.getName()); - } - public void generate(Class<? extends Node> nodeClass, NodeList<Statement> initializeConstructorParametersStatements) { Constructor<?> constructor = findAllFieldsConstructor(nodeClass); for (java.lang.reflect.Parameter parameter : constructor.getParameters()) { diff --git a/javaparser-metamodel-generator/src/main/java/com/github/javaparser/generator/metamodel/InitializePropertyMetaModelsStatementsGenerator.java b/javaparser-metamodel-generator/src/main/java/com/github/javaparser/generator/metamodel/InitializePropertyMetaModelsStatementsGenerator.java index 84de6d5e6..c8952043c 100644 --- a/javaparser-metamodel-generator/src/main/java/com/github/javaparser/generator/metamodel/InitializePropertyMetaModelsStatementsGenerator.java +++ b/javaparser-metamodel-generator/src/main/java/com/github/javaparser/generator/metamodel/InitializePropertyMetaModelsStatementsGenerator.java @@ -15,7 +15,8 @@ import static com.github.javaparser.JavaParser.parseStatement; import static com.github.javaparser.ast.Modifier.PUBLIC; import static com.github.javaparser.generator.metamodel.MetaModelGenerator.isNode; import static com.github.javaparser.generator.metamodel.MetaModelGenerator.nodeMetaModelName; -import static com.github.javaparser.generator.utils.GeneratorUtils.*; +import static com.github.javaparser.utils.CodeGenerationUtils.*; +import static com.github.javaparser.utils.Utils.decapitalize; public class InitializePropertyMetaModelsStatementsGenerator { public void generate(Class<?> nodeClass, Field field, ClassOrInterfaceDeclaration nodeMetaModelClass, String nodeMetaModelFieldName, NodeList<Statement> initializePropertyMetaModelsStatements) throws NoSuchMethodException { diff --git a/javaparser-metamodel-generator/src/main/java/com/github/javaparser/generator/metamodel/MetaModelGenerator.java b/javaparser-metamodel-generator/src/main/java/com/github/javaparser/generator/metamodel/MetaModelGenerator.java index 9bef20658..2969ec02f 100644 --- a/javaparser-metamodel-generator/src/main/java/com/github/javaparser/generator/metamodel/MetaModelGenerator.java +++ b/javaparser-metamodel-generator/src/main/java/com/github/javaparser/generator/metamodel/MetaModelGenerator.java @@ -10,7 +10,7 @@ import com.github.javaparser.ast.comments.LineComment; import com.github.javaparser.ast.expr.*; import com.github.javaparser.ast.stmt.*; import com.github.javaparser.ast.type.*; -import com.github.javaparser.generator.utils.SourceRoot; +import com.github.javaparser.utils.SourceRoot; import java.io.IOException; import java.lang.reflect.Field; @@ -20,7 +20,7 @@ import java.util.ArrayList; import java.util.Comparator; import java.util.List; -import static com.github.javaparser.generator.utils.GeneratorUtils.decapitalize; +import static com.github.javaparser.utils.Utils.decapitalize; public class MetaModelGenerator { static final String NODE_META_MODEL = "BaseNodeMetaModel"; diff --git a/javaparser-metamodel-generator/src/main/java/com/github/javaparser/generator/metamodel/NodeMetaModelGenerator.java b/javaparser-metamodel-generator/src/main/java/com/github/javaparser/generator/metamodel/NodeMetaModelGenerator.java index 777f8d7ca..66927dbf9 100644 --- a/javaparser-metamodel-generator/src/main/java/com/github/javaparser/generator/metamodel/NodeMetaModelGenerator.java +++ b/javaparser-metamodel-generator/src/main/java/com/github/javaparser/generator/metamodel/NodeMetaModelGenerator.java @@ -6,7 +6,7 @@ import com.github.javaparser.ast.NodeList; import com.github.javaparser.ast.body.*; import com.github.javaparser.ast.stmt.Statement; import com.github.javaparser.ast.type.ClassOrInterfaceType; -import com.github.javaparser.generator.utils.SourceRoot; +import com.github.javaparser.utils.SourceRoot; import java.lang.reflect.Field; import java.util.ArrayList; @@ -19,7 +19,8 @@ import static com.github.javaparser.ast.Modifier.*; import static com.github.javaparser.ast.Modifier.FINAL; import static com.github.javaparser.ast.Modifier.PUBLIC; import static com.github.javaparser.generator.metamodel.MetaModelGenerator.*; -import static com.github.javaparser.generator.utils.GeneratorUtils.*; +import static com.github.javaparser.utils.CodeGenerationUtils.*; +import static com.github.javaparser.utils.Utils.decapitalize; public class NodeMetaModelGenerator { private final InitializePropertyMetaModelsStatementsGenerator initializePropertyMetaModelsStatementsGenerator = new InitializePropertyMetaModelsStatementsGenerator(); |