Commit Graph

141 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 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
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 dd445676f5 [impl] passing over parser implementation (pass 1) 2021-06-05 23:39:26 -07:00
Allen Webster c3ec42c70c [api] cut subtle wrapper node constructors 2021-06-05 22:56:35 -07:00