Commit Graph

109 Commits (75fbaee7efaed6169db1552aa972db8efe90f015)

Author SHA1 Message Date
Chris Double 3f68fb4618 Fix regression where multiply defined ebnf rules didn't result in an error 2008-07-15 15:42:13 +12:00
Chris Double f3145c5961 [EBNF and EBNF: now return ast 2008-07-10 13:56:06 +12:00
Chris Double 72bd6b4dc8 Fix peg tests 2008-07-10 13:56:06 +12:00
Chris Double 4c1fe8f0b3 Add <EBNF ... ENBF> syntax to return a parser object 2008-07-10 13:56:06 +12:00
Chris Double 8aa7bc6d78 [EBNF ... EBNF] now does an implicit call 2008-07-10 13:56:06 +12:00
Chris Double acb6d3a312 Fix peg.ebnf tests. Handle \ in EBNF 2008-07-10 13:56:06 +12:00
Slava Pestov 9d6f21d83c Fix bug exposed by new/boa change 2008-06-27 03:03:31 -05:00
Slava Pestov d65a76d10f Fixing builder failures 2008-06-25 15:35:14 -05:00
Slava Pestov 590ccc49e1 Fix conflict 2008-06-25 04:07:37 -05:00
Eduardo Cavazos bf238283da Update code for combinators.short-circuit 2008-06-24 13:47:54 -05:00
Chris Double 6b83ab9d90 Fix terminal parser with non-default tokenizers 2008-06-21 01:49:07 +12:00
Chris Double 5433553571 Remove EBNF: and [EBNF EBNF] +tokenizer syntax
replaced with tokenizer support in ebnf grammar itself.
2008-06-21 01:00:27 +12:00
Chris Double eca8260799 peg.ebnf syntax for tokenizers 2008-06-21 00:28:13 +12:00
Chris Double b6b5f12732 Provide ability to plug in tokenizers to ebnf parsers 2008-06-20 22:45:19 +12:00
Chris Double 7239c4d79f Make replace-escapes infer and fix remaining unit test breakage in ebnf 2008-06-20 15:14:30 +12:00
Chris Double d22a24a90e Fix some failing ebnf unit tests 2008-06-20 14:13:50 +12:00
Chris Double 6bd761e460 Another breaking unit test for ebnf 2008-06-20 12:35:33 +12:00
Chris Double 91768f171c Rule 'x' defined more than once unit test 2008-06-20 11:53:07 +12:00
Chris Double 001e866b13 Add yet another failing ebnf unit test 2008-06-20 11:49:08 +12:00
Chris Double 9b7e2bacc9 Throw an error if there are duplicate rules in ebnf 2008-06-19 14:44:13 +12:00
Chris Double c92224f5b9 Put '..' around parser error messages 2008-06-19 14:34:09 +12:00
Chris Double 3dc3a6f899 Remove obsolete ebnf stuff 2008-06-19 14:31:14 +12:00
Chris Double 04453b2421 Fix (foo):n usage 2008-06-19 14:23:18 +12:00
Chris Double 179ea21c11 Add a couple of failing peg.ebnf tests 2008-06-19 01:10:44 +12:00
Chris Double fea65df1df Fix ebnf foreign call breakage and add tests 2008-06-18 23:07:26 +12:00
Chris Double 4050ebcbde Javascript parser now works on token sequence 2008-06-18 20:35:32 +12:00
Chris Double f4f4ea7eb6 Fix peg.ebnf unit test failures 2008-06-18 20:35:32 +12:00
Chris Double 0841dbb4ad Fix ebnf unit test 2008-06-18 20:35:32 +12:00
Chris Double 479fa6a5b5 Add support for calling foreign peg.ebnf rules 2008-06-18 20:35:32 +12:00
Chris Double dfa4926a84 Print ebnf quotation on error. Fix generated local quotation 2008-06-18 20:35:32 +12:00
Chris Double f1219c906a Check stack effect of actions in ebnf. Do implicit drop if needed 2008-06-18 20:35:31 +12:00
Chris Double 1b8943a8e0 Add failing peg.ebnf tests 2008-06-18 20:35:31 +12:00
Eduardo Cavazos c5cc533182 peg.ebnf: minor update 2008-06-10 20:31:32 -05:00
Doug Coleman f706b50ac7 remove dipd, it's 2dip 2008-05-23 22:48:58 -05:00
Slava Pestov 26aa656123 with-locals no longer necessary 2008-05-07 08:48:51 -05:00
Chris Double e1f82caf83 Use accessors in places for peg 2008-04-29 14:19:14 +12:00
Chris Double c671ccce99 { ... } whitespace grouping 2008-04-29 14:15:05 +12:00
Chris Double 7319dd5165 Add ~ grouping operator to ignore whitespace between elements in group 2008-04-29 12:37:26 +12:00
Doug Coleman b7c1f9dbe8 extra changes:
index* -> index-from
last-index* -> last-index-from
1 tail -> rest
1 tail-slice -> rest-slice
subset -> filter
prepose
find* -> find-from
find-last* -> find-last-from
before, after generic, < for integers
make between? work for timestamps
2008-04-25 23:17:08 -05:00
Chris Double 9f0f2d0bbc peg delay parsers now infer 2008-04-14 22:42:45 +12:00
Chris Double a641c6d332 Add \r to ebnf escape rules 2008-04-07 14:39:18 +12:00
Chris Double 719376e412 Remove w-c-u from ebnf transform 2008-04-07 13:17:09 +12:00
Chris Double 970f0055c2 Fix failing ebnf unit test 2008-04-03 17:33:37 +13:00
Chris Double cc7d945a80 Change ebnf variables to not use namespaces 2008-04-03 17:28:09 +13:00
Chris Double 27f2992dc5 Add failing ebnf test 2008-04-03 16:09:03 +13:00
Chris Double eac450bdcf Add ebnf rule word 2008-04-02 15:55:18 +13:00
Chris Double bbcc84862f Tweak ast from sequences in ebnf 2008-04-02 15:47:21 +13:00
Chris Double 6b454eed36 Various peg/ebnf fixes
- Box parsers were broken when involved in left recursion detection
- ebnf no longer implicitly ignores white space between terminates/non-terminals
- ebnf now handles \t and \n in grammars so productions to detect white space work
- reset-delegates is now reset-pegs
2008-04-02 12:59:12 +13:00
Chris Double 122fd50d4a Throw error when ebnf uses a non-existant non-terminal 2008-04-01 14:49:20 +13:00
Chris Double 72bfd57f30 Make ebnf forgiving of whitespace at end of expression 2008-04-01 11:28:14 +13:00