Skip to content

Commit 27e32af

Browse files
committed
updated ssn; added examples
1 parent 6221275 commit 27e32af

File tree

94 files changed

+2605
-298
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

94 files changed

+2605
-298
lines changed

lasso/LQL.g4

Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
/** Author: Marcus Kessel (kessel@informatik.uni-mannheim.de) */
2+
grammar LQL;
3+
4+
/** Allow zero or one system and zero or more filters */
5+
parse
6+
: interfaceSpec? filter* EOF
7+
;
8+
9+
/** System has zero or more method signatures */
10+
interfaceSpec
11+
: (simpletype | qualifiedtype) '{' methodSig* '}'
12+
;
13+
14+
/** Method signature */
15+
methodSig
16+
: NAME ( '(' inputs? ')->' outputs? | '(' inputs? ')' )
17+
;
18+
19+
/** Argument types (input or output) */
20+
parameters
21+
: (simpletype | qualifiedtype | arraytype | namedparam | typeparam) ( ',' (simpletype | qualifiedtype | arraytype | namedparam | typeparam) )*
22+
;
23+
24+
/** alias */
25+
inputs
26+
: parameters
27+
;
28+
29+
/** alias */
30+
outputs
31+
: parameters
32+
;
33+
34+
/** a fully qualified type like aaa.bbb.ccc */
35+
qualifiedtype
36+
: NAME ( '.' NAME )*
37+
;
38+
39+
/** a simple type without "." */
40+
simpletype
41+
: NAME
42+
;
43+
44+
/** an array type */
45+
arraytype
46+
: (simpletype | qualifiedtype) ('[]')*
47+
;
48+
49+
/** a named parameter */
50+
namedparam
51+
: NAME '=' (simpletype | qualifiedtype | arraytype)
52+
;
53+
54+
/** generics */
55+
typeparam
56+
: (simpletype | qualifiedtype) '<' (simpletype | qualifiedtype | typeparam) (',' (simpletype | qualifiedtype | typeparam))* '>'
57+
;
58+
59+
/** simply filter */
60+
filter
61+
: FILTERVALUE
62+
;
63+
64+
/** removed <> */
65+
NAME : [$a-zA-Z_] [$a-zA-Z0-9_]*;
66+
FILTERVALUE : [a-zA-Z_\\*!] [a-zA-Z0-9_:'"\\*'^']*;
67+
TEXT : '\'' ~[\r\n']* '\'';
68+
SPACE : [ \t\r\n]+ -> skip;

lasso/package-lock.json

Lines changed: 18 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

lasso/package.json

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,8 @@
1212
"serve": "docusaurus serve",
1313
"write-translations": "docusaurus write-translations",
1414
"write-heading-ids": "docusaurus write-heading-ids",
15-
"typecheck": "tsc"
15+
"typecheck": "tsc",
16+
"antlr4ts-lql": "antlr4ts ./LQL.g4 -o ./src/antlr-lql"
1617
},
1718
"dependencies": {
1819
"@docusaurus/core": "^3.7.0",
@@ -26,6 +27,7 @@
2627
"@mui/icons-material": "^6.4.4",
2728
"@mui/material": "^6.4.4",
2829
"@mui/x-data-grid": "^7.27.0",
30+
"antlr4ts": "^0.5.0-alpha.4",
2931
"axios": "^1.7.9",
3032
"clsx": "^2.0.0",
3133
"d3": "^5.16.0",
@@ -44,6 +46,7 @@
4446
"@docusaurus/module-type-aliases": "^3.7.0",
4547
"@docusaurus/tsconfig": "^3.7.0",
4648
"@docusaurus/types": "^3.7.0",
49+
"antlr4ts-cli": "^0.5.0-alpha.4",
4750
"typescript": "~5.2.2"
4851
},
4952
"browserslist": {

lasso/src/antlr-lql/LQL.interp

Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
token literal names:
2+
null
3+
'{'
4+
'}'
5+
'('
6+
')->'
7+
')'
8+
','
9+
'.'
10+
'[]'
11+
'='
12+
'<'
13+
'>'
14+
null
15+
null
16+
null
17+
null
18+
19+
token symbolic names:
20+
null
21+
null
22+
null
23+
null
24+
null
25+
null
26+
null
27+
null
28+
null
29+
null
30+
null
31+
null
32+
NAME
33+
FILTERVALUE
34+
TEXT
35+
SPACE
36+
37+
rule names:
38+
parse
39+
interfaceSpec
40+
methodSig
41+
parameters
42+
inputs
43+
outputs
44+
qualifiedtype
45+
simpletype
46+
arraytype
47+
namedparam
48+
typeparam
49+
filter
50+
51+
52+
atn:
53+
[3, 51485, 51898, 1421, 44986, 20307, 1543, 60043, 49729, 3, 17, 143, 4, 2, 9, 2, 4, 3, 9, 3, 4, 4, 9, 4, 4, 5, 9, 5, 4, 6, 9, 6, 4, 7, 9, 7, 4, 8, 9, 8, 4, 9, 9, 9, 4, 10, 9, 10, 4, 11, 9, 11, 4, 12, 9, 12, 4, 13, 9, 13, 3, 2, 5, 2, 28, 10, 2, 3, 2, 7, 2, 31, 10, 2, 12, 2, 14, 2, 34, 11, 2, 3, 2, 3, 2, 3, 3, 3, 3, 5, 3, 40, 10, 3, 3, 3, 3, 3, 7, 3, 44, 10, 3, 12, 3, 14, 3, 47, 11, 3, 3, 3, 3, 3, 3, 4, 3, 4, 3, 4, 5, 4, 54, 10, 4, 3, 4, 3, 4, 5, 4, 58, 10, 4, 3, 4, 3, 4, 5, 4, 62, 10, 4, 3, 4, 5, 4, 65, 10, 4, 3, 5, 3, 5, 3, 5, 3, 5, 3, 5, 5, 5, 72, 10, 5, 3, 5, 3, 5, 3, 5, 3, 5, 3, 5, 3, 5, 5, 5, 80, 10, 5, 7, 5, 82, 10, 5, 12, 5, 14, 5, 85, 11, 5, 3, 6, 3, 6, 3, 7, 3, 7, 3, 8, 3, 8, 3, 8, 7, 8, 94, 10, 8, 12, 8, 14, 8, 97, 11, 8, 3, 9, 3, 9, 3, 10, 3, 10, 5, 10, 103, 10, 10, 3, 10, 7, 10, 106, 10, 10, 12, 10, 14, 10, 109, 11, 10, 3, 11, 3, 11, 3, 11, 3, 11, 3, 11, 5, 11, 116, 10, 11, 3, 12, 3, 12, 5, 12, 120, 10, 12, 3, 12, 3, 12, 3, 12, 3, 12, 5, 12, 126, 10, 12, 3, 12, 3, 12, 3, 12, 3, 12, 5, 12, 132, 10, 12, 7, 12, 134, 10, 12, 12, 12, 14, 12, 137, 11, 12, 3, 12, 3, 12, 3, 13, 3, 13, 3, 13, 2, 2, 2, 14, 2, 2, 4, 2, 6, 2, 8, 2, 10, 2, 12, 2, 14, 2, 16, 2, 18, 2, 20, 2, 22, 2, 24, 2, 2, 2, 2, 158, 2, 27, 3, 2, 2, 2, 4, 39, 3, 2, 2, 2, 6, 50, 3, 2, 2, 2, 8, 71, 3, 2, 2, 2, 10, 86, 3, 2, 2, 2, 12, 88, 3, 2, 2, 2, 14, 90, 3, 2, 2, 2, 16, 98, 3, 2, 2, 2, 18, 102, 3, 2, 2, 2, 20, 110, 3, 2, 2, 2, 22, 119, 3, 2, 2, 2, 24, 140, 3, 2, 2, 2, 26, 28, 5, 4, 3, 2, 27, 26, 3, 2, 2, 2, 27, 28, 3, 2, 2, 2, 28, 32, 3, 2, 2, 2, 29, 31, 5, 24, 13, 2, 30, 29, 3, 2, 2, 2, 31, 34, 3, 2, 2, 2, 32, 30, 3, 2, 2, 2, 32, 33, 3, 2, 2, 2, 33, 35, 3, 2, 2, 2, 34, 32, 3, 2, 2, 2, 35, 36, 7, 2, 2, 3, 36, 3, 3, 2, 2, 2, 37, 40, 5, 16, 9, 2, 38, 40, 5, 14, 8, 2, 39, 37, 3, 2, 2, 2, 39, 38, 3, 2, 2, 2, 40, 41, 3, 2, 2, 2, 41, 45, 7, 3, 2, 2, 42, 44, 5, 6, 4, 2, 43, 42, 3, 2, 2, 2, 44, 47, 3, 2, 2, 2, 45, 43, 3, 2, 2, 2, 45, 46, 3, 2, 2, 2, 46, 48, 3, 2, 2, 2, 47, 45, 3, 2, 2, 2, 48, 49, 7, 4, 2, 2, 49, 5, 3, 2, 2, 2, 50, 64, 7, 14, 2, 2, 51, 53, 7, 5, 2, 2, 52, 54, 5, 10, 6, 2, 53, 52, 3, 2, 2, 2, 53, 54, 3, 2, 2, 2, 54, 55, 3, 2, 2, 2, 55, 57, 7, 6, 2, 2, 56, 58, 5, 12, 7, 2, 57, 56, 3, 2, 2, 2, 57, 58, 3, 2, 2, 2, 58, 65, 3, 2, 2, 2, 59, 61, 7, 5, 2, 2, 60, 62, 5, 10, 6, 2, 61, 60, 3, 2, 2, 2, 61, 62, 3, 2, 2, 2, 62, 63, 3, 2, 2, 2, 63, 65, 7, 7, 2, 2, 64, 51, 3, 2, 2, 2, 64, 59, 3, 2, 2, 2, 65, 7, 3, 2, 2, 2, 66, 72, 5, 16, 9, 2, 67, 72, 5, 14, 8, 2, 68, 72, 5, 18, 10, 2, 69, 72, 5, 20, 11, 2, 70, 72, 5, 22, 12, 2, 71, 66, 3, 2, 2, 2, 71, 67, 3, 2, 2, 2, 71, 68, 3, 2, 2, 2, 71, 69, 3, 2, 2, 2, 71, 70, 3, 2, 2, 2, 72, 83, 3, 2, 2, 2, 73, 79, 7, 8, 2, 2, 74, 80, 5, 16, 9, 2, 75, 80, 5, 14, 8, 2, 76, 80, 5, 18, 10, 2, 77, 80, 5, 20, 11, 2, 78, 80, 5, 22, 12, 2, 79, 74, 3, 2, 2, 2, 79, 75, 3, 2, 2, 2, 79, 76, 3, 2, 2, 2, 79, 77, 3, 2, 2, 2, 79, 78, 3, 2, 2, 2, 80, 82, 3, 2, 2, 2, 81, 73, 3, 2, 2, 2, 82, 85, 3, 2, 2, 2, 83, 81, 3, 2, 2, 2, 83, 84, 3, 2, 2, 2, 84, 9, 3, 2, 2, 2, 85, 83, 3, 2, 2, 2, 86, 87, 5, 8, 5, 2, 87, 11, 3, 2, 2, 2, 88, 89, 5, 8, 5, 2, 89, 13, 3, 2, 2, 2, 90, 95, 7, 14, 2, 2, 91, 92, 7, 9, 2, 2, 92, 94, 7, 14, 2, 2, 93, 91, 3, 2, 2, 2, 94, 97, 3, 2, 2, 2, 95, 93, 3, 2, 2, 2, 95, 96, 3, 2, 2, 2, 96, 15, 3, 2, 2, 2, 97, 95, 3, 2, 2, 2, 98, 99, 7, 14, 2, 2, 99, 17, 3, 2, 2, 2, 100, 103, 5, 16, 9, 2, 101, 103, 5, 14, 8, 2, 102, 100, 3, 2, 2, 2, 102, 101, 3, 2, 2, 2, 103, 107, 3, 2, 2, 2, 104, 106, 7, 10, 2, 2, 105, 104, 3, 2, 2, 2, 106, 109, 3, 2, 2, 2, 107, 105, 3, 2, 2, 2, 107, 108, 3, 2, 2, 2, 108, 19, 3, 2, 2, 2, 109, 107, 3, 2, 2, 2, 110, 111, 7, 14, 2, 2, 111, 115, 7, 11, 2, 2, 112, 116, 5, 16, 9, 2, 113, 116, 5, 14, 8, 2, 114, 116, 5, 18, 10, 2, 115, 112, 3, 2, 2, 2, 115, 113, 3, 2, 2, 2, 115, 114, 3, 2, 2, 2, 116, 21, 3, 2, 2, 2, 117, 120, 5, 16, 9, 2, 118, 120, 5, 14, 8, 2, 119, 117, 3, 2, 2, 2, 119, 118, 3, 2, 2, 2, 120, 121, 3, 2, 2, 2, 121, 125, 7, 12, 2, 2, 122, 126, 5, 16, 9, 2, 123, 126, 5, 14, 8, 2, 124, 126, 5, 22, 12, 2, 125, 122, 3, 2, 2, 2, 125, 123, 3, 2, 2, 2, 125, 124, 3, 2, 2, 2, 126, 135, 3, 2, 2, 2, 127, 131, 7, 8, 2, 2, 128, 132, 5, 16, 9, 2, 129, 132, 5, 14, 8, 2, 130, 132, 5, 22, 12, 2, 131, 128, 3, 2, 2, 2, 131, 129, 3, 2, 2, 2, 131, 130, 3, 2, 2, 2, 132, 134, 3, 2, 2, 2, 133, 127, 3, 2, 2, 2, 134, 137, 3, 2, 2, 2, 135, 133, 3, 2, 2, 2, 135, 136, 3, 2, 2, 2, 136, 138, 3, 2, 2, 2, 137, 135, 3, 2, 2, 2, 138, 139, 7, 13, 2, 2, 139, 23, 3, 2, 2, 2, 140, 141, 7, 15, 2, 2, 141, 25, 3, 2, 2, 2, 21, 27, 32, 39, 45, 53, 57, 61, 64, 71, 79, 83, 95, 102, 107, 115, 119, 125, 131, 135]

lasso/src/antlr-lql/LQL.tokens

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
T__0=1
2+
T__1=2
3+
T__2=3
4+
T__3=4
5+
T__4=5
6+
T__5=6
7+
T__6=7
8+
T__7=8
9+
T__8=9
10+
T__9=10
11+
T__10=11
12+
NAME=12
13+
FILTERVALUE=13
14+
TEXT=14
15+
SPACE=15
16+
'{'=1
17+
'}'=2
18+
'('=3
19+
')->'=4
20+
')'=5
21+
','=6
22+
'.'=7
23+
'[]'=8
24+
'='=9
25+
'<'=10
26+
'>'=11
Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
token literal names:
2+
null
3+
'{'
4+
'}'
5+
'('
6+
')->'
7+
')'
8+
','
9+
'.'
10+
'[]'
11+
'='
12+
'<'
13+
'>'
14+
null
15+
null
16+
null
17+
null
18+
19+
token symbolic names:
20+
null
21+
null
22+
null
23+
null
24+
null
25+
null
26+
null
27+
null
28+
null
29+
null
30+
null
31+
null
32+
NAME
33+
FILTERVALUE
34+
TEXT
35+
SPACE
36+
37+
rule names:
38+
T__0
39+
T__1
40+
T__2
41+
T__3
42+
T__4
43+
T__5
44+
T__6
45+
T__7
46+
T__8
47+
T__9
48+
T__10
49+
NAME
50+
FILTERVALUE
51+
TEXT
52+
SPACE
53+
54+
channel names:
55+
DEFAULT_TOKEN_CHANNEL
56+
HIDDEN
57+
58+
mode names:
59+
DEFAULT_MODE
60+
61+
atn:
62+
[3, 51485, 51898, 1421, 44986, 20307, 1543, 60043, 49729, 2, 17, 88, 8, 1, 4, 2, 9, 2, 4, 3, 9, 3, 4, 4, 9, 4, 4, 5, 9, 5, 4, 6, 9, 6, 4, 7, 9, 7, 4, 8, 9, 8, 4, 9, 9, 9, 4, 10, 9, 10, 4, 11, 9, 11, 4, 12, 9, 12, 4, 13, 9, 13, 4, 14, 9, 14, 4, 15, 9, 15, 4, 16, 9, 16, 3, 2, 3, 2, 3, 3, 3, 3, 3, 4, 3, 4, 3, 5, 3, 5, 3, 5, 3, 5, 3, 6, 3, 6, 3, 7, 3, 7, 3, 8, 3, 8, 3, 9, 3, 9, 3, 9, 3, 10, 3, 10, 3, 11, 3, 11, 3, 12, 3, 12, 3, 13, 3, 13, 7, 13, 61, 10, 13, 12, 13, 14, 13, 64, 11, 13, 3, 14, 3, 14, 7, 14, 68, 10, 14, 12, 14, 14, 14, 71, 11, 14, 3, 15, 3, 15, 7, 15, 75, 10, 15, 12, 15, 14, 15, 78, 11, 15, 3, 15, 3, 15, 3, 16, 6, 16, 83, 10, 16, 13, 16, 14, 16, 84, 3, 16, 3, 16, 2, 2, 2, 17, 3, 2, 3, 5, 2, 4, 7, 2, 5, 9, 2, 6, 11, 2, 7, 13, 2, 8, 15, 2, 9, 17, 2, 10, 19, 2, 11, 21, 2, 12, 23, 2, 13, 25, 2, 14, 27, 2, 15, 29, 2, 16, 31, 2, 17, 3, 2, 8, 6, 2, 38, 38, 67, 92, 97, 97, 99, 124, 7, 2, 38, 38, 50, 59, 67, 92, 97, 97, 99, 124, 8, 2, 35, 35, 44, 44, 67, 92, 94, 94, 97, 97, 99, 124, 10, 2, 36, 36, 41, 41, 44, 44, 50, 60, 67, 92, 94, 94, 96, 97, 99, 124, 5, 2, 12, 12, 15, 15, 41, 41, 5, 2, 11, 12, 15, 15, 34, 34, 2, 91, 2, 3, 3, 2, 2, 2, 2, 5, 3, 2, 2, 2, 2, 7, 3, 2, 2, 2, 2, 9, 3, 2, 2, 2, 2, 11, 3, 2, 2, 2, 2, 13, 3, 2, 2, 2, 2, 15, 3, 2, 2, 2, 2, 17, 3, 2, 2, 2, 2, 19, 3, 2, 2, 2, 2, 21, 3, 2, 2, 2, 2, 23, 3, 2, 2, 2, 2, 25, 3, 2, 2, 2, 2, 27, 3, 2, 2, 2, 2, 29, 3, 2, 2, 2, 2, 31, 3, 2, 2, 2, 3, 33, 3, 2, 2, 2, 5, 35, 3, 2, 2, 2, 7, 37, 3, 2, 2, 2, 9, 39, 3, 2, 2, 2, 11, 43, 3, 2, 2, 2, 13, 45, 3, 2, 2, 2, 15, 47, 3, 2, 2, 2, 17, 49, 3, 2, 2, 2, 19, 52, 3, 2, 2, 2, 21, 54, 3, 2, 2, 2, 23, 56, 3, 2, 2, 2, 25, 58, 3, 2, 2, 2, 27, 65, 3, 2, 2, 2, 29, 72, 3, 2, 2, 2, 31, 82, 3, 2, 2, 2, 33, 34, 7, 125, 2, 2, 34, 4, 3, 2, 2, 2, 35, 36, 7, 127, 2, 2, 36, 6, 3, 2, 2, 2, 37, 38, 7, 42, 2, 2, 38, 8, 3, 2, 2, 2, 39, 40, 7, 43, 2, 2, 40, 41, 7, 47, 2, 2, 41, 42, 7, 64, 2, 2, 42, 10, 3, 2, 2, 2, 43, 44, 7, 43, 2, 2, 44, 12, 3, 2, 2, 2, 45, 46, 7, 46, 2, 2, 46, 14, 3, 2, 2, 2, 47, 48, 7, 48, 2, 2, 48, 16, 3, 2, 2, 2, 49, 50, 7, 93, 2, 2, 50, 51, 7, 95, 2, 2, 51, 18, 3, 2, 2, 2, 52, 53, 7, 63, 2, 2, 53, 20, 3, 2, 2, 2, 54, 55, 7, 62, 2, 2, 55, 22, 3, 2, 2, 2, 56, 57, 7, 64, 2, 2, 57, 24, 3, 2, 2, 2, 58, 62, 9, 2, 2, 2, 59, 61, 9, 3, 2, 2, 60, 59, 3, 2, 2, 2, 61, 64, 3, 2, 2, 2, 62, 60, 3, 2, 2, 2, 62, 63, 3, 2, 2, 2, 63, 26, 3, 2, 2, 2, 64, 62, 3, 2, 2, 2, 65, 69, 9, 4, 2, 2, 66, 68, 9, 5, 2, 2, 67, 66, 3, 2, 2, 2, 68, 71, 3, 2, 2, 2, 69, 67, 3, 2, 2, 2, 69, 70, 3, 2, 2, 2, 70, 28, 3, 2, 2, 2, 71, 69, 3, 2, 2, 2, 72, 76, 7, 41, 2, 2, 73, 75, 10, 6, 2, 2, 74, 73, 3, 2, 2, 2, 75, 78, 3, 2, 2, 2, 76, 74, 3, 2, 2, 2, 76, 77, 3, 2, 2, 2, 77, 79, 3, 2, 2, 2, 78, 76, 3, 2, 2, 2, 79, 80, 7, 41, 2, 2, 80, 30, 3, 2, 2, 2, 81, 83, 9, 7, 2, 2, 82, 81, 3, 2, 2, 2, 83, 84, 3, 2, 2, 2, 84, 82, 3, 2, 2, 2, 84, 85, 3, 2, 2, 2, 85, 86, 3, 2, 2, 2, 86, 87, 8, 16, 2, 2, 87, 32, 3, 2, 2, 2, 7, 2, 62, 69, 76, 84, 3, 8, 2, 2]
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
T__0=1
2+
T__1=2
3+
T__2=3
4+
T__3=4
5+
T__4=5
6+
T__5=6
7+
T__6=7
8+
T__7=8
9+
T__8=9
10+
T__9=10
11+
T__10=11
12+
NAME=12
13+
FILTERVALUE=13
14+
TEXT=14
15+
SPACE=15
16+
'{'=1
17+
'}'=2
18+
'('=3
19+
')->'=4
20+
')'=5
21+
','=6
22+
'.'=7
23+
'[]'=8
24+
'='=9
25+
'<'=10
26+
'>'=11

0 commit comments

Comments
 (0)