Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(54)

Side by Side Diff: packages/petitparser/lib/src/lisp/grammar.dart

Issue 1400473008: Roll Observatory packages and add a roll script (Closed) Base URL: git@github.com:dart-lang/observatory_pub_packages.git@master
Patch Set: Created 5 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 part of lisp; 1 part of petitparser.lisp;
2 2
3 /** 3 /// LISP grammar.
4 * LISP grammar.
5 */
6 class LispGrammar extends GrammarParser { 4 class LispGrammar extends GrammarParser {
7 LispGrammar() : super(new LispGrammarDefinition()); 5 LispGrammar() : super(new LispGrammarDefinition());
8 } 6 }
9 7
10 /** 8 /// LISP grammar definition.
11 * LISP grammar definition.
12 */
13 class LispGrammarDefinition extends GrammarDefinition { 9 class LispGrammarDefinition extends GrammarDefinition {
14 10
15 start() => ref(atom).star().end(); 11 start() => ref(atom).star().end();
16 12
17 atom() => ref(atom_).trim(ref(space)); 13 atom() => ref(atom_).trim(ref(space));
18 atom_() => ref(list) 14 atom_() => ref(list)
19 | ref(number) 15 | ref(number)
20 | ref(string) 16 | ref(string)
21 | ref(symbol) 17 | ref(symbol)
22 | ref(quote) 18 | ref(quote)
(...skipping 27 matching lines...) Expand all
50 quote() => char('\'') & ref(list); 46 quote() => char('\'') & ref(list);
51 quasiquote() => char('`') & ref(list); 47 quasiquote() => char('`') & ref(list);
52 unquote() => char(',') & ref(list); 48 unquote() => char(',') & ref(list);
53 splice() => char('@') & ref(list); 49 splice() => char('@') & ref(list);
54 50
55 space() => whitespace() | ref(comment); 51 space() => whitespace() | ref(comment);
56 comment() => char(';') & Token.newlineParser().neg().star(); 52 comment() => char(';') & Token.newlineParser().neg().star();
57 bracket(String brackets, Parser parser) => char(brackets[0]) & parser & char(b rackets[1]); 53 bracket(String brackets, Parser parser) => char(brackets[0]) & parser & char(b rackets[1]);
58 54
59 } 55 }
OLDNEW
« no previous file with comments | « packages/petitparser/lib/src/lisp/environment.dart ('k') | packages/petitparser/lib/src/lisp/name.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698