Commit Graph

144 Commits

Author SHA1 Message Date
ryanfleury f15fc77bfa introspection helper docs; remove redundant node-sibling helper; ensure that any of the introspection APIs doing string matching take match flags 2021-06-30 22:54:56 -06:00
ryanfleury 0045b05a04 parsing function docs; remove some dead code 2021-06-30 16:39:31 -06:00
ryanfleury 31f60f7dd8 delete old parser types 2021-06-30 15:50:03 -06:00
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 297b1e9259 introduce Reserved token kind; get parser (mostly) working with new token kind 2021-06-30 16:49:37 -04:00
Allen Webster dbfd86d558 simplify single line comment trim 2021-06-30 16:02:46 -04:00
Allen Webster 8c41bea434 emit appropriate errors for BrokenComment and BrokenStringLiteral tokens 2021-06-30 15:50:31 -04:00
Allen Webster 1454f04265 detect broken strings in the lexer 2021-06-30 15:46:39 -04:00
Allen Webster 174e995e00 detect broken comments in the lexer 2021-06-30 15:39:03 -04:00
Allen Webster ac462ca85c Merge branch 'master' of https://github.com/Dion-Systems/metadesk 2021-06-30 15:29:44 -04:00
Allen Webster 5ef77634ef tighter implementation of group mechanism 2021-06-30 15:28:27 -04:00
ryanfleury e6d372c989 mark rjf todo items 2021-06-30 13:06:47 -06: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 d0717e3b5f add modified version of stb_sprintf to library; use it instead of CRT; first-pass on %S for MD_String8 2021-06-30 12:36:05 -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 52f840f5ab add annotations for printf-like calls that may or may not help i dunno 2021-06-30 00:30:03 -06:00
ryanfleury 6ac773f660 oops, flipped conditional 2021-06-29 23:01:47 -06:00
ryanfleury a89f8f5573 properly fill identifier/numeric flags in lexer 2021-06-29 22:57:43 -06:00
ryanfleury 5c99b2a737 trim down token kinds; return node flags from lexer 2021-06-29 22:55:57 -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 dff40b4f7a bugfixes and convergence in new parser 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 2ab0636ce9 first-pass on ctxless parser rewrite 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 15aa4d5b32 flesh out string -> integer functions 2021-06-28 10:45:55 -04:00
Allen Webster 05399a17b6 forgot to save some changes for last commit 2021-06-28 07:26:57 -04:00
Allen Webster 0d57e26ba5 finish the elimination of MD_PushSibling 2021-06-28 06:44:06 -04:00
Allen Webster 0724d0a910 merge 2021-06-27 10:21:41 -04:00
ryanfleury f2991a89bb todo 2021-06-24 23:44:40 -06:00
ryanfleury 792f0a6aa8 cleanup notes on parser details 2021-06-24 23:41:12 -06:00
ryanfleury 4ec674600d split up string literal token kinds to encode which syntax they used; translate these to node flags 2021-06-24 23:30:01 -06:00
ryanfleury f7e40e224f fix up before/after flag helper macro to be more robust to future changes 2021-06-24 23:00:38 -06:00
ryanfleury e1f5953598 reorder node flags, so that after-from-before is always the same 2021-06-24 22:58:27 -06:00
ryanfleury 647dd40a0f kill char literal 2021-06-24 22:57:06 -06:00
ryanfleury 4b8d2c3ade oops; also add zero-allocator macro 2021-06-24 22:52:47 -06:00
ryanfleury a533b75ce4 publicify canonical conversion helper 2021-06-24 22:49:58 -06:00
ryanfleury 4b231f0724 kill ctx node building helper 2021-06-24 22:48:24 -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
ryanfleury 8f8c5cb9d7 move to _COUNT instead of _MAX 2021-06-24 21:52:22 -06:00
Allen Webster aba3c9a164 [api] introduced linked list macros with z-check z-set upgrade 2021-06-12 12:02:44 -07:00
Allen Webster 0832e601b7 cut namespaces 2021-06-12 10:17:14 -07:00
Allen Webster f54f1771b9 [maps] queues instead of stacks to keep things in order 2021-06-12 10:12:55 -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