Skip to content
Snippets Groups Projects
Commit dbe2b6e2 authored by Sven Gestegård Robertz's avatar Sven Gestegård Robertz
Browse files

WiP: started adding intentions to parser

parent 5d955a0c
No related branches found
No related tags found
No related merge requests found
......@@ -54,7 +54,20 @@ List var_decl_list =
| var_decl_list.l var_decl.v {: return l.add(v); :}
;
List intentions = {: return new List(); :}
List intentions =
/* empty list */ {: return new List(); :}
| intention_list.l {: return l; :}
;
List intention_list =
intention.i {: return new List().add(i); :}
| intention_list.l intention.i {: return l.add(i); :}
;
String key = IDENTIFIER;
String stringliteral = IDENTIFIER;
Intention intention = LPAREN key.k COLON stringliteral.v RPAREN {: return new Intention(k,v); :};
TypeInstance type_instance =
intentions.i type.t IDENTIFIER {: return new TypeInstance(t, IDENTIFIER, i); :}
......
......@@ -76,7 +76,10 @@ NonZeroDigit = [1-9]
"}" { return sym(Terminals.RBRACE); }
"[" { return sym(Terminals.LBRACK); }
"]" { return sym(Terminals.RBRACK); }
"(" { return sym(Terminals.LPAREN); }
")" { return sym(Terminals.RPAREN); }
";" { return sym(Terminals.SEMICOLON); }
":" { return sym(Terminals.COLON); }
"," { return sym(Terminals.COMMA); }
{Identifier} { return sym(Terminals.IDENTIFIER); }
......
......@@ -11,4 +11,9 @@ aspect Refactoring {
this(t, n, new List<Annotation>());
System.out.println("WARNING! TypeInstance(DataType, String) ignoring intention list");
}
public ConcreteType.ConcreteType(Type t, String n) {
this(t, n, new List<Intention>());
System.out.println("WARNING! ConcreteType(Type, String) ignoring intention list");
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment