Skip to content

Strings.sdf3

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

imports Base

lexical sorts StrConst StrChar

lexical syntax

  StrConst = "\"" StrChar* "\""
  StrChar = ~[\\\"\r\n]
  StrChar = [\\] [a]
  StrChar = [\\] [b]
  StrChar = [\\] [f]
  StrChar = [\\] [n]
  StrChar = [\\] [r]
  StrChar = [\\] [t]
  StrChar = [\\] [v]
  StrChar = [\\] [\^] [A-Z]
  StrChar = [\\] [0-9] [0-9] [0-9]
  StrChar = [\\] [x] [0-9a-fA-F] [0-9a-fA-F]
  StrChar = [\\] [\\]
  StrChar = [\\] [\"]

  StrChar = [\\] [\ \t\r\n]+ [\\]

context-free syntax

  Exp.String = StrConst