From 68c1ed6cc2b3e0900d7f0ee30249f9c725795e85 Mon Sep 17 00:00:00 2001 From: Victor Lamas Date: Wed, 24 Sep 2025 15:07:29 +0200 Subject: [PATCH 1/3] fix: correct constraint usage in parser and lexer definitions (#65) Co-authored-by: vlamas --- uvl/UVLLexer.g4 | 9 +++++---- uvl/UVLParser.g4 | 2 +- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/uvl/UVLLexer.g4 b/uvl/UVLLexer.g4 index d308e8a..f015728 100644 --- a/uvl/UVLLexer.g4 +++ b/uvl/UVLLexer.g4 @@ -8,6 +8,7 @@ FEATURES_KEY: 'features'; IMPORTS_KEY: 'imports'; NAMESPACE_KEY: 'namespace'; AS_KEY: 'as'; +CONSTRAINT_KEY: 'constraint'; CONSTRAINTS_KEY: 'constraints'; CARDINALITY_KEY: 'cardinality'; STRING_KEY: 'String'; @@ -60,17 +61,17 @@ CLOSE_BRACE: '}'; OPEN_COMMENT: '/*'; CLOSE_COMMENT: '*/'; -FLOAT: '-'? [0-9]* [.][0-9]+; -INTEGER: '0' | '-'? [1-9][0-9]*; +FLOAT: '-'?[0-9]*[.][0-9]+; +INTEGER: '0' | '-'?[1-9][0-9]*; BOOLEAN: 'true' | 'false'; COMMA: ','; DOT: '.'; -ID_NOT_STRICT: '"' ~[\r\n".]+ '"'; +ID_NOT_STRICT: '"'~[\r\n".]+'"'; ID_STRICT: [a-zA-Z]([a-zA-Z0-9_#§%?\\'äüöß;])*; -STRING: '\'' ~[\r\n']+ '\''; +STRING: '\''~[\r\n'.]+'\''; SKIP_: ( SPACES | COMMENT) -> skip; diff --git a/uvl/UVLParser.g4 b/uvl/UVLParser.g4 index 831d380..528ca6a 100644 --- a/uvl/UVLParser.g4 +++ b/uvl/UVLParser.g4 @@ -44,7 +44,7 @@ value: BOOLEAN | FLOAT | INTEGER | STRING | attributes | vector; vector: OPEN_BRACK (value (COMMA value)*)? CLOSE_BRACK; constraintAttribute: - CONSTRAINTS_KEY constraint # SingleConstraintAttribute + CONSTRAINT_KEY constraint # SingleConstraintAttribute | CONSTRAINTS_KEY constraintList # ListConstraintAttribute; constraintList: OPEN_BRACK (constraint (COMMA constraint)*)? CLOSE_BRACK; From 26babba8d5a77ad3d21adb8672162569a7bdce5d Mon Sep 17 00:00:00 2001 From: Chico Sundermann Date: Wed, 24 Sep 2025 15:26:40 +0200 Subject: [PATCH 2/3] Fix: dots are allowed again in string constants --- uvl/UVLLexer.g4 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/uvl/UVLLexer.g4 b/uvl/UVLLexer.g4 index f015728..8013bd4 100644 --- a/uvl/UVLLexer.g4 +++ b/uvl/UVLLexer.g4 @@ -71,7 +71,7 @@ DOT: '.'; ID_NOT_STRICT: '"'~[\r\n".]+'"'; ID_STRICT: [a-zA-Z]([a-zA-Z0-9_#§%?\\'äüöß;])*; -STRING: '\''~[\r\n'.]+'\''; +STRING: '\''~[\r\n']+'\''; SKIP_: ( SPACES | COMMENT) -> skip; From c83c8398829c3ce24735db5fec316bf4108fc97c Mon Sep 17 00:00:00 2001 From: Chico Sundermann Date: Wed, 24 Sep 2025 17:57:03 +0200 Subject: [PATCH 3/3] build: version bump for fixes on variables --- java/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/java/pom.xml b/java/pom.xml index 09b0aa7..18de6a7 100644 --- a/java/pom.xml +++ b/java/pom.xml @@ -11,7 +11,7 @@ io.github.universal-variability-language uvl-parser - 0.4 + 0.4.1