From 85c97e42b19b1d555cedc5abd2bdff90e5ee26b1 Mon Sep 17 00:00:00 2001 From: Johannes Mey <johannes.mey@tu-dresden.de> Date: Thu, 16 Jan 2020 09:36:35 +0000 Subject: [PATCH] Resolve "Qualified generic token types" --- src/main/jastadd/RelAst.parser | 4 +--- src/test/jastadd/relations/Relations.relast | 1 + 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/src/main/jastadd/RelAst.parser b/src/main/jastadd/RelAst.parser index 32236a4..12a7044 100644 --- a/src/main/jastadd/RelAst.parser +++ b/src/main/jastadd/RelAst.parser @@ -40,13 +40,11 @@ ArrayList inner_type_use ; TypeUse type_use = -// s_type_use.u {: return u; :} -// | parameterized_type_use.p {: return p; :} | inner_type_use.p {: return new SimpleTypeUse((String)p.stream().map( x -> ((Symbol)x).value.toString()).collect(java.util.stream.Collectors.joining("."))); :} ; ParameterizedTypeUse parameterized_type_use = - ID LT type_use_list.l GT {: return new ParameterizedTypeUse(ID, l); :} + inner_type_use.i LT type_use_list.l GT {: return new ParameterizedTypeUse((String)i.stream().map( x -> ((Symbol)x).value.toString()).collect(java.util.stream.Collectors.joining(".")), l); :} ; List type_use_list = type_use.u {: return new List().add(u); :} diff --git a/src/test/jastadd/relations/Relations.relast b/src/test/jastadd/relations/Relations.relast index 498e4fc..12f132e 100644 --- a/src/test/jastadd/relations/Relations.relast +++ b/src/test/jastadd/relations/Relations.relast @@ -50,6 +50,7 @@ D ::= SingleA:A ListOfA:A* [OptionalA:A] /NTAA:A/ ; // production with tokens, nonterminal-tokens, multi-line E ::= <T1> <T2:String> <T3:boolean> <T4:int> <T5:float> <T6:double> <T7:long> + <T8:java.lang.Object> <T9:ArrayList<String>> <T10:java.util.ArrayList<java.lang.String>> /<NT2:String>/ /<NT3:boolean>/ /<NT4:int>/ /<NT5:float>/ /<NT6:double>/ /<NT7:long>/ ; rel E.NT1 -> A ; -- GitLab