diff options
author | Sven Gothel <[email protected]> | 2023-08-08 18:35:16 +0200 |
---|---|---|
committer | Sven Gothel <[email protected]> | 2023-08-08 18:35:16 +0200 |
commit | 33ffd1240a8d4f2cb4032ca2d111142e0f87beac (patch) | |
tree | f0d21c2af4e73f5f4989d187189e213043463610 | |
parent | 4024bdaddd42580d02665b1b1655e7ce51fb28d5 (diff) | |
parent | 496df9c41332a0d606017f0df5ba08b02af0c992 (diff) |
Merge remote-tracking branch 'Mathieu_Fery/1447-java-wildcard-parsing'
-rw-r--r-- | src/antlr/com/jogamp/gluegen/jgram/JavaParser.g | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/antlr/com/jogamp/gluegen/jgram/JavaParser.g b/src/antlr/com/jogamp/gluegen/jgram/JavaParser.g index a4d8c72..85f24d3 100644 --- a/src/antlr/com/jogamp/gluegen/jgram/JavaParser.g +++ b/src/antlr/com/jogamp/gluegen/jgram/JavaParser.g @@ -266,7 +266,13 @@ typeSpec[boolean addImagNode] // A class type specification is a class type with possible brackets afterwards // (which would make it an array type). classTypeSpec[boolean addImagNode] - : identifier (LT gen:classTypeSpec[false] GT)? (lb:LBRACK^ {#lb.setType(ARRAY_DECLARATOR);} RBRACK!)* + : identifier (LT + ( + classTypeSpec[false] + | + QUESTION ("extends" classTypeSpec[false] (BAND classTypeSpec[false])*)? + ) GT + )? (lb:LBRACK^ {#lb.setType(ARRAY_DECLARATOR);} RBRACK!)* { if ( addImagNode ) { #classTypeSpec = #(#[TYPE,"TYPE"], #classTypeSpec); |