Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
102 commits
Select commit Hold shift + click to select a range
9176f03
added syntax role modifier syntax
jurgenvinju Jul 7, 2023
ecde46c
regenerated parser with new syntax role modifier syntax
jurgenvinju Jul 7, 2023
0cd1be5
Merge branch 'main' into syntax-role-modifiers
jurgenvinju Sep 26, 2023
82e4422
regenerated parser and AST hierarchy to include SyntaxRoleModifiers i…
jurgenvinju Sep 26, 2023
14fcf36
working on syntax roles
jurgenvinju Sep 28, 2023
e2a0148
Merge branch 'main' into syntax-role-modifiers
jurgenvinju Nov 8, 2023
bf1f3d5
Merge branch 'main' into syntax-role-modifiers
jurgenvinju Nov 16, 2023
0c63da9
added Symbol-level syntax and semantics of syntax role modifiers
jurgenvinju Nov 16, 2023
1c56ba5
added bootstrap declarations for Symbols that represent syntax role m…
jurgenvinju Nov 16, 2023
29fbfa3
implemented isOpen and IsParametrized for syntax types
jurgenvinju Nov 16, 2023
878275e
fixed copy and paste bug
jurgenvinju Nov 16, 2023
0627a87
partially implemented java-level syntax and semantics of syntax role …
jurgenvinju Nov 16, 2023
3e92b42
implementing all the Type operations on Syntax modifiers
jurgenvinju Nov 16, 2023
bdb8f0b
implemented lub on syntax modifiers
jurgenvinju Nov 16, 2023
2036232
implemented Type.glbWithModifySyntax and added subtype cases to Type …
jurgenvinju Nov 16, 2023
95f8a97
fixed compiler error and removed unused imports
jurgenvinju Nov 16, 2023
699219f
added match and instantiate for SyntaxRole modifier types, and remove…
jurgenvinju Nov 17, 2023
b3c14e0
added assert
jurgenvinju Nov 17, 2023
6bd6cc8
match data[&T] against Tree if &T is a non-terminal
jurgenvinju Nov 21, 2023
9136580
fixing corner cases
jurgenvinju Nov 21, 2023
3973aa2
fixed subtle bug in applying syntax role
jurgenvinju Nov 22, 2023
86be7a5
added some initial tests for syntax modifiers
jurgenvinju Nov 22, 2023
0d49956
added a failing test for data[&T] matching against parse tree
jurgenvinju Nov 22, 2023
5abbbe7
typo
jurgenvinju Nov 22, 2023
1599d16
fixed hashcode/equals contract for syntax role modifier types; helps …
jurgenvinju Nov 23, 2023
0e565a4
added test for upcasting data[&T] to data[Tree] when it matches a non…
jurgenvinju Nov 23, 2023
36a587a
started writing the explode function
jurgenvinju Nov 23, 2023
fc694ff
slowly working on explode
jurgenvinju Nov 27, 2023
dfda48a
Merge branch 'main' into syntax-role-modifiers
jurgenvinju Nov 29, 2023
a3a7856
some work on explode
jurgenvinju Nov 29, 2023
ce2ca84
added support for identifiers
jurgenvinju Nov 29, 2023
2468381
Merge branch 'main' into syntax-role-modifiers
jurgenvinju Nov 30, 2023
d9fa4a6
fixed errors
jurgenvinju Nov 30, 2023
ec3c155
added function getConstructor that reifies an actual ConstructorType …
jurgenvinju Nov 30, 2023
37c8b8c
explode can deal with lists now
jurgenvinju Dec 1, 2023
d06117f
working on explode
jurgenvinju Dec 14, 2023
af77ca4
added Explode to ignore because it contains features the type-checker…
jurgenvinju Dec 14, 2023
23e742c
Merge branch 'main' into syntax-role-modifiers
jurgenvinju Dec 28, 2023
a2a7752
Merge branch 'main' into syntax-role-modifiers
jurgenvinju Feb 7, 2024
73e1bdc
turned off tutor for bootstrapping purposes
jurgenvinju Feb 7, 2024
a211457
Merge branch 'main' into syntax-role-modifiers
jurgenvinju Feb 28, 2024
5d5f5ee
Merge branch 'main' into syntax-role-modifiers
jurgenvinju Apr 8, 2024
ceb25d6
Merge branch 'main' into syntax-role-modifiers
jurgenvinju Apr 9, 2024
21e2591
added todos and a make(Production) function to mirror getConstructor …
jurgenvinju Apr 9, 2024
9eb9470
Merge branch 'main' into syntax-role-modifiers
jurgenvinju Apr 11, 2024
3b04a4e
fixed bug in constructor de-reifier and fixed make function in Type.rsc
jurgenvinju Apr 11, 2024
6fdd64d
ported release notes from website. still incomplete
jurgenvinju Apr 11, 2024
65b28ba
simplified make
jurgenvinju Apr 11, 2024
f93982b
re-enabled tutor
jurgenvinju Apr 11, 2024
54aaacf
further simplifications
jurgenvinju Apr 11, 2024
20b0b35
fixed typo
jurgenvinju Apr 11, 2024
f3bf3bb
Merge branch 'main' into syntax-role-modifiers
jurgenvinju May 14, 2024
9f262c2
added more documentation and a missing function
jurgenvinju May 14, 2024
a489a74
fixed ambiguity between lexical prod definition and lexical syntax ro…
jurgenvinju May 13, 2025
e495ecf
dealing better with illegal applications of syntax role modifiers
jurgenvinju May 13, 2025
727d31f
Merge branch 'main' into syntax-role-modifiers
jurgenvinju May 27, 2025
104e44b
regenerated parser to solve merge conflicts
jurgenvinju May 27, 2025
f1e86f6
fixed semi-merge
jurgenvinju May 27, 2025
d3d75a7
more merge fixes in pom.xml
jurgenvinju May 27, 2025
5f1ce00
fixed compilation errors due to new randomValue interface from vallang
jurgenvinju May 27, 2025
2775b73
use module names betterfor test suite descriptions instead of "Module…
jurgenvinju May 27, 2025
535cc76
started implementation of syntax role modifiers in the checker.
jurgenvinju May 27, 2025
b4efbd7
fixed typos
jurgenvinju May 28, 2025
d9b7c75
removed duplicate rule
jurgenvinju May 28, 2025
ce9b92b
fixed NPE in vallang by making sure that ModifySyntaxRole::equals(nul…
jurgenvinju May 28, 2025
df8e26d
more tests
jurgenvinju May 28, 2025
2dd5598
added subtype for syntax role modifiers
jurgenvinju May 28, 2025
d28e545
simplified asyntaxRoleModifiers by grouping all modifiers into one si…
jurgenvinju May 28, 2025
4593a3c
fixed typo
jurgenvinju May 28, 2025
0c3130a
removed old asubtype on asyntax, alexical, and replaced asyntaxRoleMo…
jurgenvinju May 28, 2025
e78634b
added missing alub
jurgenvinju May 28, 2025
b12b845
commented out experimental extension of outerComparable1
jurgenvinju May 28, 2025
1769387
added glb for asyntaxRoleModifiers
jurgenvinju May 28, 2025
b23d0b4
added the collect for all syntax role modifiers
jurgenvinju May 28, 2025
866dc4d
added code generator for runtime type instances of SyntaxRoleModifier…
jurgenvinju May 28, 2025
6428277
added comment to explain
jurgenvinju May 28, 2025
33cf2d2
added minimal amount of error checking to the collect of syntax role …
jurgenvinju May 28, 2025
fcdf0b3
fixed typo
jurgenvinju May 28, 2025
e13923a
fix
jurgenvinju May 28, 2025
7a0dda7
removed dead code
jurgenvinju May 30, 2025
a94d624
sorted extends
jurgenvinju May 30, 2025
2f16b62
Merge branch 'main' into syntax-role-modifiers
jurgenvinju May 30, 2025
442c3b2
Merge branch 'use-installed-typepal-if-project-not-available' into sy…
jurgenvinju May 30, 2025
83a8004
Merge branch 'main' into syntax-role-modifiers
jurgenvinju May 31, 2025
bea9223
Merge branch 'main' into syntax-role-modifiers
jurgenvinju Jun 5, 2025
2725bd8
Merge branch 'main' into syntax-role-modifiers
jurgenvinju Jun 9, 2025
0df668d
Merge branch 'main' into syntax-role-modifiers
jurgenvinju Jun 12, 2025
e3f4071
Merge branch 'main' into syntax-role-modifiers
jurgenvinju Jul 9, 2025
e665154
regenerated parser and asts for Rascal with syntax role modifiers to …
jurgenvinju Jul 9, 2025
58bec27
Merge branch 'main' into syntax-role-modifiers
jurgenvinju Apr 9, 2026
6d11cf8
regenerated parser and AST hierarchy
jurgenvinju Apr 10, 2026
b1b2135
added source location and name of function that was hard to link
jurgenvinju Apr 10, 2026
47095db
removed unused functions that ended up cloned in AType.rsc
jurgenvinju Apr 10, 2026
a87d6ae
explain some unexpected types better if the names are equal but the r…
jurgenvinju Apr 10, 2026
16de49d
fixed comments
jurgenvinju Apr 10, 2026
b9da6c2
Hide Explode.rsc file from previous version of the checker because it…
jurgenvinju Apr 10, 2026
55b2a34
Hide SyntaxRoleModifiers1.rsc for bootstrapping purposes
jurgenvinju Apr 10, 2026
e9ec9ba
Merge branch 'main' into syntax-role-modifiers
jurgenvinju Aug 31, 2026
88b8e1a
regenerated with more modern generator
jurgenvinju Aug 31, 2026
cdb6126
Merge branch 'main' into syntax-role-modifiers
jurgenvinju Aug 31, 2026
98fba88
removed release notes (moved to another pr)
jurgenvinju Sep 2, 2026
fc82a86
removed unrelated change
jurgenvinju Sep 2, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 12 additions & 0 deletions src/org/rascalmpl/ast/IASTVisitor.java
Original file line number Diff line number Diff line change
Expand Up @@ -699,6 +699,16 @@ public interface IASTVisitor<T> {

public T visitSyntaxDefinitionLexical(SyntaxDefinition.Lexical x);

public T visitSyntaxRoleModifierData(SyntaxRoleModifier.Data x);

public T visitSyntaxRoleModifierKeyword(SyntaxRoleModifier.Keyword x);

public T visitSyntaxRoleModifierLayout(SyntaxRoleModifier.Layout x);

public T visitSyntaxRoleModifierLexical(SyntaxRoleModifier.Lexical x);

public T visitSyntaxRoleModifierSyntax(SyntaxRoleModifier.Syntax x);

public T visitTagDefault(Tag.Default x);

public T visitTagEmpty(Tag.Empty x);
Expand All @@ -719,6 +729,8 @@ public interface IASTVisitor<T> {

public T visitTypeFunction(Type.Function x);

public T visitTypeModifier(Type.Modifier x);

public T visitTypeSelector(Type.Selector x);

public T visitTypeStructured(Type.Structured x);
Expand Down
24 changes: 24 additions & 0 deletions src/org/rascalmpl/ast/NullASTVisitor.java
Original file line number Diff line number Diff line change
Expand Up @@ -1381,6 +1381,26 @@ public T visitSyntaxDefinitionLexical(SyntaxDefinition.Lexical x) {
return null;
}

public T visitSyntaxRoleModifierData(SyntaxRoleModifier.Data x) {
return null;
}

public T visitSyntaxRoleModifierKeyword(SyntaxRoleModifier.Keyword x) {
return null;
}

public T visitSyntaxRoleModifierLayout(SyntaxRoleModifier.Layout x) {
return null;
}

public T visitSyntaxRoleModifierLexical(SyntaxRoleModifier.Lexical x) {
return null;
}

public T visitSyntaxRoleModifierSyntax(SyntaxRoleModifier.Syntax x) {
return null;
}

public T visitTagDefault(Tag.Default x) {
return null;
}
Expand Down Expand Up @@ -1421,6 +1441,10 @@ public T visitTypeFunction(Type.Function x) {
return null;
}

public T visitTypeModifier(Type.Modifier x) {
return null;
}

public T visitTypeSelector(Type.Selector x) {
return null;
}
Expand Down
Loading
Loading