jwrapper: accept interfaces
authorAlexis Laferrière <alexis.laf@xymus.net>
Tue, 3 Feb 2015 00:38:48 +0000 (19:38 -0500)
committerAlexis Laferrière <alexis.laf@xymus.net>
Tue, 3 Feb 2015 13:04:05 +0000 (08:04 -0500)
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>

contrib/jwrapper/grammar/javap.sablecc
contrib/jwrapper/src/javap_visitor.nit

index 0777c88..ba92bc4 100644 (file)
@@ -9,18 +9,15 @@ separator = ('.'|'/');
 Parser
 Ignored blank;
 
-multi_files = compiled_from? class_or_interface;
-
-class_or_interface = class_declaration | interface_declaration;
+multi_files = compiled_from? class_declaration;
 
 compiled_from = 'Compiled from "' identifier+ '.java"';
 
-class_declaration = class_header '{' property_declaration* '}';
+class_declaration = modifier* class_or_interface full_class_name
+       extends_declaration? implements_declaration? throws_declaration?
+       '{' property_declaration* '}';
 
-class_header = modifier* 'class' full_class_name extends_declaration?
-                          implements_declaration? throws_declaration?;
-interface_declaration = modifier* 'interface' full_class_name extends_interface_declaration?
-                                               '{' property_declaration* '}';
+class_or_interface = 'class'|'interface';
 
 modifier = 'public'|'private'|'protected'|'static'|'final'|'native'|'synchronized'|'abstract'|'threadsafe'|'transient'|'volatile';
 type = type_specifier '[]'*;
index 64415a4..9c1440d 100644 (file)
@@ -213,7 +213,7 @@ end
 #    C L A S S     H E A D E R     #
 #                                  #
 
-redef class Nclass_header
+redef class Nclass_declaration
        redef fun accept_visitor(v)
        do
                v.declaration_type = "class_header"