diff --git a/proparse/src/main/antlr4/org/prorefactor/proparse/antlr4/Proparse.g4 b/proparse/src/main/antlr4/org/prorefactor/proparse/antlr4/Proparse.g4 index c585819b4..356fa180c 100644 --- a/proparse/src/main/antlr4/org/prorefactor/proparse/antlr4/Proparse.g4 +++ b/proparse/src/main/antlr4/org/prorefactor/proparse/antlr4/Proparse.g4 @@ -1640,7 +1640,7 @@ buttonOption: ; defineDatasetStatement: - DEFINE defineShare? ( PRIVATE | PROTECTED | STATIC )* + DEFINE defineShare? ( PRIVATE | PROTECTED | STATIC | SERIALIZABLE | NONSERIALIZABLE )* DATASET identifier namespaceUri? namespacePrefix? xmlNodeName? serializeName? xmlNodeType? SERIALIZEHIDDEN? REFERENCEONLY? diff --git a/proparse/src/test/java/org/prorefactor/core/NewSyntaxTest.java b/proparse/src/test/java/org/prorefactor/core/NewSyntaxTest.java index c8b105ab9..9747cf0f0 100644 --- a/proparse/src/test/java/org/prorefactor/core/NewSyntaxTest.java +++ b/proparse/src/test/java/org/prorefactor/core/NewSyntaxTest.java @@ -320,4 +320,10 @@ public void testTenantKeywords() { public void testShorthandOperators() { testNewSyntax("12.3/operators.p"); } + + @Test + public void testSerializable() { + testNewSyntax("12.x/SerDS.cls"); + } + } diff --git a/proparse/src/test/resources/data/newsyntax/12.x/SerDS.cls b/proparse/src/test/resources/data/newsyntax/12.x/SerDS.cls new file mode 100644 index 000000000..0fbe1205f --- /dev/null +++ b/proparse/src/test/resources/data/newsyntax/12.x/SerDS.cls @@ -0,0 +1,9 @@ +class SerDS serializable: + + define private serializable temp-table tt1 no-undo + field fld1 as integer + index idx1 is primary unique fld1. + + define serializable dataset ds1 for tt1. + +end class.