Skip to main content
aboutsummaryrefslogtreecommitdiffstats
path: root/dsls/ACG
diff options
context:
space:
mode:
authorfjouault2008-02-18 17:27:02 +0000
committerfjouault2008-02-18 17:27:02 +0000
commit82211c45f12adac27ce219cc2a595b26d994d2c6 (patch)
tree265996d83f6100c0159cc5ef8cae1022050d5ab1 /dsls/ACG
parent614c16ada650c0c88ab325d9acdce7a2a5ceaf2b (diff)
downloadorg.eclipse.atl-82211c45f12adac27ce219cc2a595b26d994d2c6.tar.gz
org.eclipse.atl-82211c45f12adac27ce219cc2a595b26d994d2c6.tar.xz
org.eclipse.atl-82211c45f12adac27ce219cc2a595b26d994d2c6.zip
improved implementation of terminal STRING
Diffstat (limited to 'dsls/ACG')
-rw-r--r--dsls/ACG/Syntax/ACG.tcs14
1 files changed, 2 insertions, 12 deletions
diff --git a/dsls/ACG/Syntax/ACG.tcs b/dsls/ACG/Syntax/ACG.tcs
index 221b0b36..21d5efd6 100644
--- a/dsls/ACG/Syntax/ACG.tcs
+++ b/dsls/ACG/Syntax/ACG.tcs
@@ -10,7 +10,7 @@ syntax ACG {
value = "%token%";
primitiveTemplate stringSymbol for String using STRING:
- value = "%token%",
+ value = "ei.unescapeString(%token%, 1)",
serializer="'\'' + %value%.toCString() + '\''";
primitiveTemplate integerSymbol for Integer default using INT:
@@ -418,6 +418,7 @@ syntax ACG {
}
token COMMENT : endOfLine(start = "--");
+ token STRING : multiLine(start = "\'", end = "\'", esc = "\\");
lexer = "
NL
@@ -525,17 +526,6 @@ ESC
}
)
;
-
-STRING
- : '\\''!
- ( ESC
- | '\\n' {newline();}
- | ~('\\\\'|'\\''|'\\n')
- )*
- '\\''!
-%v3 {setText(ei.unescapeString(getText(), 1));}
- ;
-
";
}

Back to the top