Commit Graph

31 Commits

Author SHA1 Message Date
ryanfleury 6dc8487965 combine StringMatchFlags and NodeMatchFlags into MD_MatchFlags 2021-04-01 22:21:46 -06:00
Miguel Lechon c38bc6de30 [namespaces] Build namespaces as lists of reference nodes. 2021-03-29 17:51:36 +02:00
Miguel Lechon 6478fb24c1 Error for MD_ParseWholeFile of missing file. 2021-03-27 15:47:54 +01:00
Miguel Lechon 20f85761c7 [map] Expose PtrMap on md.h. Remove NodeTable defines. 2021-03-22 15:45:36 +01:00
Miguel Lechon eef82b0554 Pipe error location through error->node. 2021-03-18 17:40:06 +01:00
Miguel Lechon f4965c782d Multi-line string escaping. 2021-03-18 12:28:16 +01:00
Miguel Lechon 6026c3639d Remove MD_Map aliases. 2021-03-16 19:15:48 +01:00
Miguel Lechon 541a5443b6 Test and avoid MD_StringMap collisions. 2021-03-16 19:05:48 +01:00
Miguel Lechon 7645afbcc1 [grammar test] Store production depth on MD_PtrMap. 2021-03-16 11:20:18 +01:00
Miguel Lechon fed011fc52 Switch to map_proposal. 2021-03-16 11:11:13 +01:00
Miguel Lechon eb0cf0c9bf MD_Node->at fix.
node->at now points to the first relevant character in the source .md file.
For namespaces and tags that is the first character of the identifier
(not the '#'/'@' symbols).
For labels it's the first character in node->whole_string if non-empty.
For unlabeled sets it's the opening '(', '[' or '{' character.
2021-03-16 09:19:02 +01:00
Miguel Lechon 084d55d55d Report and skip non-ASCII characters. 2021-03-14 12:12:30 +01:00
Miguel Lechon e3357f0759 Syntax error sanity tests. 2021-03-14 11:24:26 +01:00
Miguel Lechon e4fbe7a81d More parsing errors.
Invalid hash directives.
Invalid tag token.
Reserved characters.
2021-03-13 10:01:08 +01:00
Miguel Lechon 701b77e118 Parsing errors for unbalanced sets and text literals. 2021-03-10 18:32:29 +01:00
Miguel Lechon 35ef98a5fd Sync build scripts. 2021-03-09 18:12:34 +01:00
Miguel Lechon 2d22fc17d5 [grammar test] Remove malformed tagging. Give up on comments. 2021-03-08 20:02:27 +01:00
Miguel Lechon 493f4239d5 [grammar test] Cleaner grammar. 2021-03-05 09:51:26 +01:00
Miguel Lechon 61f9149a2b [grammar test] before_comment. 2021-03-04 15:21:55 +01:00
Miguel Lechon 4a4f4db91a Make , and ; behave like \n as unscoped set delimiters. 2021-02-25 20:03:22 +01:00
Miguel Lechon 71d5235f81 [grammar test] Fairly complete test grammars. 2021-02-22 14:55:39 +01:00
Miguel Lechon de104364b6 [grammar test] Some incomplete test grammars. 2021-02-21 19:13:16 +01:00
Miguel Lechon a2066a0c58 [grammar test] Limit the depth of generated tests. 2021-02-21 19:12:30 +01:00
Miguel Lechon c5d88b890b [grammar test] Extra set delimiters and separators.
Delimiters: Square brackets and parentheses.
Separators: Commas and semicolons
2021-02-17 12:05:56 +01:00
Miguel Lechon 35c802deae [grammar test] Sort tests by increading complexity. 2021-02-17 08:13:24 +01:00
Miguel Lechon 50d6f7cd64 [grammar test] Labeled nodes and tag parameters. 2021-02-16 19:35:24 +01:00
Miguel Lechon e2920e565b Partial MD grammar test. 2021-02-13 19:57:59 +01:00
ryanfleury 710c76192a node comment bugfixes and tests 2021-02-09 08:56:22 -07:00
ryanfleury ba6286f379 pre- and post- comment parsing for nodes 2021-02-09 08:50:06 -07:00
ryanfleury 9253bd0de8 remove MD_NodeKind_UnnamedSet; simplify to MD_NodeKind_Label with zero-string 2021-02-09 08:11:07 -07:00
ryanfleury 90fc1de709 Initial upload 2021-01-20 11:19:34 -07:00