Skip to content

Basic.sdf3

pdmosses/sdf/org.metaborg.meta.lang.template/syntax/basic/Basic.sdf3

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
module 

imports kernel/Kernel
                sorts/Sorts
                TemplateLang

context-free syntax

Grammar.Lexical = <
        lexical syntax

                <Productions>

        >
Grammar.Contextfree = <
        context-free syntax

                <Productions>

        >
Grammar.Variables = <
        variables

                <Productions>

        >
Grammar.VariablesProductive = <
    variables

            <{SdfProduction "\n"}*>

    >        {prefer}

Grammar.LexVariables = <
        lexical variables

                <Productions>

        >

Grammar.LexVariablesProductive = <
    lexical variables

            <{SdfProduction "\n"}*>

    > {prefer}

.Cf = <<Symbol>-CF>
.Lex = <<Symbol>-LEX>
.Varsym = <<Symbol>-VAR>
.Layout = <LAYOUT>  

lexical syntax

 = Sort "-LEX" {reject}
 = Sort "-CF" {reject}
 = Sort "-VAR" {reject}
 = "LAYOUT" "-LEX" {reject}
 = "LAYOUT" "-CF" {reject}
 = "LAYOUT" "-VAR" {reject}