edits
[cdsspec-compiler.git] / grammer / util.jj
index 7e8b0c3dc788f2420527ceb4840fa121bc727e52..901e2e6f6fac466097a50336d768546f5f50a9fa 100644 (file)
@@ -49,6 +49,12 @@ public class UtilParser {
                return parser.FuncDecl();
        }
 
                return parser.FuncDecl();
        }
 
+       public static VariableDeclaration parseDeclaration(String line)
+       throws ParseException {
+               InputStream input = new ByteArrayInputStream(line.getBytes());
+               UtilParser parser = new UtilParser(input);
+               return parser.Declaration();
+       }
 
        public static String stringArray2String(ArrayList<String> content) {
                StringBuilder sb = new StringBuilder();
 
        public static String stringArray2String(ArrayList<String> content) {
                StringBuilder sb = new StringBuilder();
@@ -426,6 +432,17 @@ ArrayList<VariableDeclaration > FormalParamList() :
        }
 }
 
        }
 }
 
+VariableDeclaration Declaration() :
+{
+       String type, param;
+}
+{
+       (type = Type()) (param = <IDENTIFIER>.image)  <SEMI_COLON>
+       {
+               return new VariableDeclaration(type, param);
+       }
+}
+
 VariableDeclaration TypeParam() :
 {
        String type, param;
 VariableDeclaration TypeParam() :
 {
        String type, param;