Skip to content

Tiger.sdf3

pdmosses/metaborg-tiger/org.metaborg.lang.tiger.statix/syntax/Tiger.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
module Tiger

imports Base
imports Whitespace
imports Types
imports Identifiers
imports Bindings
imports Variables
imports Functions
imports Numbers
imports Strings
imports Records
imports Arrays
imports Control-Flow

context-free start-symbols Module

sorts Module
context-free syntax

  Module.Mod = Exp

context-free priorities

  {
    Exp.Or
  } > {
    Exp.Array
  } > {
    Exp.Assign
  },

  {
    Exp.Uminus
    LValue.FieldVar
    LValue.Subscript
  } > {left:
    Exp.Times
    Exp.Divide
  }