Browse Source

Minor fixes and improvements.

Timur Sağlam 4 years ago
parent
commit
e5952cb6e6

+ 1 - 1
jplag.frontend-utils/src/main/java/de/jplag/Language.java

@@ -8,7 +8,7 @@ import java.io.File;
 public interface Language {
 
     /**
-     * Suffixes for the files containing code of the language.
+     * Suffixes for the files containing code of the language. An empty array means all suffixes are valid.
      */
     String[] suffixes();
 

+ 3 - 1
jplag.frontend.emf/src/main/java/de/jplag/emf/Language.java

@@ -3,6 +3,8 @@ package de.jplag.emf;
 import java.io.File;
 import java.util.Arrays;
 
+import org.eclipse.emf.ecore.EcorePackage;
+
 import de.jplag.ErrorConsumer;
 import de.jplag.TokenList;
 import de.jplag.emf.parser.EcoreParser;
@@ -15,7 +17,7 @@ public class Language implements de.jplag.Language {
     public static final String VIEW_FILE_SUFFIX = ".TreeView";
     private static final String NAME = "EMF metamodels";
     private static final String SHORT_NAME = "EMF";
-    private static final String[] FILE_ENDINGS = new String[] {".ecore"};
+    private static final String[] FILE_ENDINGS = new String[] {"." + EcorePackage.eNAME};
     private static final int DEFAULT_MIN_TOKEN_MATCH = 5;
 
     protected final EcoreParser parser;

+ 14 - 1
jplag.frontend.emf/src/main/java/de/jplag/emf/parser/AbstractMetamodelVisitor.java

@@ -2,9 +2,22 @@ package de.jplag.emf.parser;
 
 import java.util.List;
 
-import org.eclipse.emf.ecore.*;
 import org.eclipse.emf.ecore.EAnnotation;
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.EDataType;
+import org.eclipse.emf.ecore.EEnum;
+import org.eclipse.emf.ecore.EEnumLiteral;
+import org.eclipse.emf.ecore.EFactory;
+import org.eclipse.emf.ecore.EGenericType;
 import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EOperation;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EParameter;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.ETypeParameter;
 
 /**
  * Visitor for the containment tree of an EMF Metamodel.

+ 5 - 1
jplag.frontend.emf/src/main/java/de/jplag/emf/parser/MetamodelTokenGenerator.java

@@ -1,18 +1,22 @@
 package de.jplag.emf.parser;
 
-import static de.jplag.emf.MetamodelTokenConstants.*;
+import static de.jplag.emf.MetamodelTokenConstants.ABSTRACT_CLASS;
 import static de.jplag.emf.MetamodelTokenConstants.ANNOTATION;
 import static de.jplag.emf.MetamodelTokenConstants.ATTRIBUTE;
 import static de.jplag.emf.MetamodelTokenConstants.CLASS;
+import static de.jplag.emf.MetamodelTokenConstants.CONTAINMENT;
 import static de.jplag.emf.MetamodelTokenConstants.DATATYPE;
 import static de.jplag.emf.MetamodelTokenConstants.ENUM;
 import static de.jplag.emf.MetamodelTokenConstants.ENUM_LITERAL;
+import static de.jplag.emf.MetamodelTokenConstants.ID_ATTRIBUTE;
 import static de.jplag.emf.MetamodelTokenConstants.INTERFACE;
 import static de.jplag.emf.MetamodelTokenConstants.OPERATION;
 import static de.jplag.emf.MetamodelTokenConstants.PACKAGE;
 import static de.jplag.emf.MetamodelTokenConstants.PARAMETER;
 import static de.jplag.emf.MetamodelTokenConstants.REFERENCE;
+import static de.jplag.emf.MetamodelTokenConstants.RETURN_TYPE;
 import static de.jplag.emf.MetamodelTokenConstants.SUPER_TYPE;
+import static de.jplag.emf.MetamodelTokenConstants.THROWS_DECLARATION;
 
 import org.eclipse.emf.ecore.EAnnotation;
 import org.eclipse.emf.ecore.EAttribute;