Commit Graph

62 Commits

Author SHA1 Message Date
ryanfleury 487ef06b4f get rid of digraph comments, use regular tests as ways of verifying that there is one node per symbolic character. docs pass #1 2021-06-30 15:50:03 -06:00
Allen Webster a477709af3 setup lexing to work (pretty well) with JSON) 2021-06-30 17:46:31 -04:00
Allen Webster bb6face7fe fix some broken 'error' tests 2021-06-30 17:13:31 -04:00
Allen Webster 83b02b1772 update single-line-comment tests 2021-06-30 16:51:38 -04:00
Allen Webster e0ed76c62f Merge branch 'master' of https://github.com/Dion-Systems/metadesk 2021-06-30 15:00:47 -04:00
Allen Webster 1bcd741eeb fill out tests for more corner cases 2021-06-30 14:59:26 -04:00
ryanfleury 5358883431 get stb_sprintf working for MD_String8s 2021-06-30 12:47:53 -06:00
ryanfleury 097541c9b7 fix build errors; remove dumb non-working printf annotations; move C++ user-defined-literal thing into the header 2021-06-30 12:17:30 -06:00
Allen Webster 3648548cfe condense string flags 2021-06-30 14:09:32 -04:00
ryanfleury bb8bfd4254 update sanity tests in accordance with new tag string rule 2021-06-29 23:03:15 -06:00
ryanfleury 0dea16c4c1 ensure MD_Error node parent is filled out always; cleanup a few things 2021-06-29 22:40:07 -06:00
ryanfleury f73f643aed kill old parser 2021-06-29 20:48:37 -06:00
ryanfleury 055c152279 update usage of tree outputter 2021-06-29 20:43:58 -06:00
ryanfleury fb5f420d07 converge new parser on errors and everything 2021-06-29 20:43:58 -06:00
ryanfleury c3c863c7fa c++ build test, add user-defined-literals for metadesk strings 2021-06-29 20:43:58 -06:00
Allen Webster 4c6ab88708 test cases for integer/float lexing to get C style integers, JSON/C style floats 2021-06-28 11:09:27 -04:00
Allen Webster e9c5f28e4b apply grammar plan to sanity tests 2021-06-28 08:06:18 -04:00
ryanfleury 647dd40a0f kill char literal 2021-06-24 22:57:06 -06:00
ryanfleury d1fe089804 bugfix; build dummy root node for error marker nodes, to ensure that they have an accurate way to tell their location 2021-06-24 22:46:56 -06:00
ryanfleury 9175305b08 rely on tree root for filename 2021-06-24 22:12:17 -06:00
Allen Webster 0832e601b7 cut namespaces 2021-06-12 10:17:14 -07:00
Allen Webster fb999476fa [map] overhaul the maps, fewer parts, fewer paths, fewer knobs; same great results 2021-06-06 20:15:48 -07:00
Allen Webster d390326e17 [impl] another test for a weird grammar problem 2021-06-06 01:28:03 -07:00
Allen Webster bf2d161158 [impl] more passing over the parser; found an odd part and made a test to reveal a bug 2021-06-06 01:06:36 -07:00
Allen Webster c3ec42c70c [api] cut subtle wrapper node constructors 2021-06-05 22:56:35 -07:00
Allen Webster 6450cd703c [impl] test for string contents; reduce all string lexing; notes about delimiter error tokens 2021-06-05 22:40:43 -07:00
Allen Webster 8e1b38e21f [namespace] uncovered bug in parser; added test case for namespaces 2021-06-05 18:27:02 -07:00
Ryan Fleury 9c0babe0a6 node flags seeking helper 2021-04-24 12:56:02 -06:00
Allen Webster f52362ef2c rename C helper types; cleanup pass over everything related to C helpers 2021-04-16 19:24:17 -07:00
Allen Webster 3c6cc0414d organize out C helpers 2021-04-16 18:17:46 -07:00
ryanfleury 714cb85824 fix samples/tests for removal of JoinStringListWithSeparator helper 2021-04-12 13:21:19 -06:00
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