diff --git a/dumpAst.base/src/main/jastadd/Frontend.jrag b/dumpAst.base/src/main/jastadd/Frontend.jrag index a13403e613024dc78c5a98717ab3d10f4ea37b9a..86f36a3f6e537553bb68ea6ccce519ff38992897 100644 --- a/dumpAst.base/src/main/jastadd/Frontend.jrag +++ b/dumpAst.base/src/main/jastadd/Frontend.jrag @@ -1,23 +1,4 @@ aspect Frontend { - - // --- match{In,Ex}cludePatternCollection --- - syn PatternCollection BuildConfig.matchIncludePatternCollection(String typeName) { - for (TypePatternCollectionMapping mapping : getIncludeTypePatternList()) { - if (matches(mapping.typePattern(), typeName)) { - return mapping.getPatternCollection(); - } - } - return null; - } - syn PatternCollection BuildConfig.matchExcludePatternCollection(String typeName) { - for (TypePatternCollectionMapping mapping : getExcludeTypePatternList()) { - if (matches(mapping.typePattern(), typeName)) { - return mapping.getPatternCollection(); - } - } - return null; - } - static StyleInformation StyleInformation.createDefault() { StyleInformation result = new StyleInformation(); result.setComputedColor("blue"); diff --git a/dumpAst.base/src/main/jastadd/Transform.jadd b/dumpAst.base/src/main/jastadd/Transform.jadd index a942231d90a4c3eeaf59677fa06c03e5eee9b1b4..c30ecbc9a4e9eb328f39ad7aa5cb5701eb31bc8f 100644 --- a/dumpAst.base/src/main/jastadd/Transform.jadd +++ b/dumpAst.base/src/main/jastadd/Transform.jadd @@ -453,26 +453,12 @@ aspect Transform { node.setTextColor(style.getTextColor()); } - // TODO: add new attributes for: {token,child,relation,attribute,nta}Enabled(String parentType, String name). 1) just move implementation into this attribute. 2) add include/exclude on type-level to it. - // --- isTypeEnabled --- syn boolean DumpAst.isTypeEnabled(String typeName) { - return !matches(getBuildConfig().typeIgnorePattern(), typeName); + return !getBuildConfig().typeIgnorePattern().matcher(typeName).matches(); } - - // --- {typeIgnore,child,token,relation,attribute,nta}Pattern --- + // --- typeIgnorePattern --- syn java.util.regex.Pattern BuildConfig.typeIgnorePattern() = java.util.regex.Pattern.compile(getTypeIgnorePattern()); - syn java.util.regex.Pattern PatternCollection.childPattern() = java.util.regex.Pattern.compile(getChildPattern()); - syn java.util.regex.Pattern PatternCollection.tokenPattern() = java.util.regex.Pattern.compile(getTokenPattern()); - syn java.util.regex.Pattern PatternCollection.relationPattern() = java.util.regex.Pattern.compile(getRelationPattern()); - syn java.util.regex.Pattern PatternCollection.attributePattern() = java.util.regex.Pattern.compile(getAttributePattern()); - syn java.util.regex.Pattern PatternCollection.ntaPattern() = java.util.regex.Pattern.compile(getNonterminalAttributePattern()); - syn java.util.regex.Pattern TypePatternCollectionMapping.typePattern() = java.util.regex.Pattern.compile(getTypeRegex()); - - // --- matches --- - static boolean ASTNode.matches(java.util.regex.Pattern p, String input) { - return p.matcher(input).matches(); - } class TransformationTransferInformation { java.util.Map<Object, DumpNode> transformed = new java.util.HashMap<>(); diff --git a/dumpAst.base/src/main/jastadd/Util.jrag b/dumpAst.base/src/main/jastadd/Util.jrag index 32c0ab008028cd8fc2b9b3aa132b94a942067f21..873e9b6ba6af303528aa3e53c82965030f3fb5fc 100644 --- a/dumpAst.base/src/main/jastadd/Util.jrag +++ b/dumpAst.base/src/main/jastadd/Util.jrag @@ -1,23 +1,4 @@ aspect Util { - // --- find{In,Ex}cludePatternCollection --- - syn PatternCollection BuildConfig.findIncludePatternCollection(String typeRegex) { - for (TypePatternCollectionMapping mapping : getIncludeTypePatternList()) { - if (mapping.getTypeRegex().equals(typeRegex)) { - return mapping.getPatternCollection(); - } - } - return null; - } - - syn PatternCollection BuildConfig.findExcludePatternCollection(String typeRegex) { - for (TypePatternCollectionMapping mapping : getExcludeTypePatternList()) { - if (mapping.getTypeRegex().equals(typeRegex)) { - return mapping.getPatternCollection(); - } - } - return null; - } - private String DumpAst.titleCase(String s) { if (s.isEmpty()) { return s; diff --git a/dumpAst.tests/src/main/jastadd/testDumper.jrag b/dumpAst.tests/src/main/jastadd/testDumper.jrag index a4e17a122827b1b54a814ddd453014a9b8beda0f..2c7c539d5311542577b0ab9f4c3f6d7d4ca8084d 100644 --- a/dumpAst.tests/src/main/jastadd/testDumper.jrag +++ b/dumpAst.tests/src/main/jastadd/testDumper.jrag @@ -39,12 +39,3 @@ aspect GrammarGlobal { return result; } } - -aspect GrammarTypeLevel { - syn int AbstractT.simpleAttr() = 43; - syn nta A AbstractT.getCalculated() { - A result = new A(); - result.setName("Calculated-" + getName()); - return result; - } -} diff --git a/dumpAst.tests/src/main/jastadd/testDumper.relast b/dumpAst.tests/src/main/jastadd/testDumper.relast index cf9d37f4899b1af59099341292e3ecd111200e4d..6bdb7aabeb555cff5e8ba8b47e79dddc0bf05c1a 100644 --- a/dumpAst.tests/src/main/jastadd/testDumper.relast +++ b/dumpAst.tests/src/main/jastadd/testDumper.relast @@ -14,17 +14,6 @@ rel C.biA1 <-> A.biC1 ; rel C.biA2* <-> A.biC2 ; rel C.biA3? <-> A.biC3 ; -// testcases with type-level inclusion/exclusion -TRoot : Nameable ::= A T1 T2 T3 ; -abstract AbstractT : Nameable ::= B Bee:B* <SomeValue> <Unwanted:int> ; -T1 : AbstractT ; -T2 : AbstractT ; -T3 : AbstractT ; - -rel AbstractT.oneA -> A ; -rel AbstractT.maybeA? -> A ; -rel AbstractT.manyA* -> A ; - Position : Nameable ::= <X:double> <Y:double> <Z:double>; Size : Nameable ::= <Length:double> <Width:double> <Height:double>; Orientation : Nameable ::= <X:double> <Y:double> <Z:double> <W:double>; diff --git a/dumpAst.tests/src/test/java/de/tudresden/inf/st/jastadd/testDumper/TestUtils.java b/dumpAst.tests/src/test/java/de/tudresden/inf/st/jastadd/testDumper/TestUtils.java index b421a6fe1c3554b4c7a627044e16a58c12f607b7..9bd634b20ca1c3d231194c3801595678a00a9333 100644 --- a/dumpAst.tests/src/test/java/de/tudresden/inf/st/jastadd/testDumper/TestUtils.java +++ b/dumpAst.tests/src/test/java/de/tudresden/inf/st/jastadd/testDumper/TestUtils.java @@ -30,7 +30,6 @@ public class TestUtils { public static final String T1_NAME = "T1" + Integer.toHexString(rand.nextInt(0xFFFFFF)); public static final String T2_NAME = "T2" + Integer.toHexString(rand.nextInt(0xFFFFFF)); public static final String T3_NAME = "T3" + Integer.toHexString(rand.nextInt(0xFFFFFF)); - public static final String[] Tx_NAMES = {T1_NAME, T2_NAME, T3_NAME}; public static Root createRoot(A a, C c, B... bs) { Root result = new Root(); @@ -92,47 +91,6 @@ public class TestUtils { return result; } - public static TRoot createTRoot(A a, T1 t1, T2 t2, T3 t3) { - TRoot result = new TRoot(); - result.setName(ROOT_NAME); - if (a != null) { - result.setA(a); - } - if (t1 != null) { - result.setT1(t1); - } - if (t2 != null) { - result.setT2(t2); - } - if (t3 != null) { - result.setT3(t3); - } - return result; - } - - @SafeVarargs - public static T1 createT1(Consumer<AbstractT>... additionalSettings) { - return setupAbstractT(new T1(), T1_NAME, additionalSettings); - } - - @SafeVarargs - public static T2 createT2(Consumer<AbstractT>... additionalSettings) { - return setupAbstractT(new T2(), T2_NAME, additionalSettings); - } - - @SafeVarargs - public static T3 createT3(Consumer<AbstractT>... additionalSettings) { - return setupAbstractT(new T3(), T3_NAME, additionalSettings); - } - - private static <T extends AbstractT> T setupAbstractT(T t, String name, Consumer<AbstractT>[] additionalSettings) { - t.setName(name); - for (Consumer<AbstractT> setting : additionalSettings) { - setting.accept(t); - } - return t; - } - public static final Function<DumpNode, String> NAME_EXTRACTOR = node -> { for (DumpToken dumpToken : node.getDumpTokenList()) { if (dumpToken.getName().equals("Name")) {