Commit Graph
100 Commits
Author SHA1 Message Date
ryanfleury 4657327976 override for arena cap getter 2021-09-24 20:47:23 -06:00
ryanfleury 6ba42a67e6 make sprintf an overrideable 2021-09-24 19:09:46 -06:00
ryanfleury c73e6961a5 for real this time 2021-09-24 18:57:32 -06:00
ryanfleury 612fad86cf allow optional include of stb sprintf 2021-09-24 18:56:25 -06:00
Ryan Fleury 1b31e6f41d work/tests for reconstruction string' 2021-09-17 01:06:57 -06:00
Ryan Fleury 4a8f470149 remove generate flags from reconstruction string gen 2021-09-16 23:58:43 -06:00
Ryan Fleury 424bd25508 treat all cmd line options after a -- as plain inputs 2021-09-16 23:36:17 -06:00
Ryan Fleury 07ff2afa72 set implicitly-delimited separator set node flags correctly 2021-09-16 23:31:28 -06:00
Ryan Fleury bd754c1816 zero-init 2021-09-16 22:44:52 -06:00
Ryan Fleury 49e7e19364 merge 2021-09-16 22:14:09 -06:00
Ryan Fleury d9e5655564 fix impl names of string gen functions 2021-09-16 22:13:32 -06:00
Ryan Fleury 593da9bf99 parse node set in header 2021-09-16 20:56:19 -06:00
Ryan Fleury c04b7dd04d eliminate ParseTagList and redundant parse result fields 2021-09-16 20:40:06 -06:00
Ryan Fleury 0288b025f8 inline parse tag list call; fix uninitialized memory in string copy 2021-09-16 20:36:13 -06:00
ryanfleury ad07656a48 partial docs pass 2021-09-02 03:54:46 -06:00
ryanfleury ccdb41ce22 reconstructed string - metadesk pretty printer - messy first pass 2021-08-18 02:28:39 -06:00
ryanfleury a4fa811268 fix up parse check 2021-08-18 01:47:18 -06:00
ryanfleury d213f0362f string generation feature options + implementations + tests 2021-08-18 01:46:55 -06:00
ryanfleury 1cd4cc4d60 kill old debug string printer 2021-08-18 01:09:11 -06:00
ryanfleury e3047dc4a4 new debug string list generation helper, intended to replace old printer 2021-08-18 01:08:46 -06:00
ryanfleury 0eee7e5a6c use mdesk extension instead of md 2021-07-04 16:35:42 -06:00
ryanfleury 7740bd0c95 remove todos 2021-07-04 14:14:14 -06:00
ryanfleury 1468129681 todo 2021-07-04 14:13:33 -06:00
ryanfleury 72a6924a69 get toy language building again, get tests passing again 2021-07-03 13:41:22 -06:00
ryanfleury 9ff0392f04 big naming pass for main API 2021-07-02 17:15:51 -06:00
ryanfleury 33bde8cc2f fix bug with child/tag-from-index, in accordance with opl change 2021-07-01 12:53:21 -06:00
ryanfleury 359456fbc6 error for unnamed-set-child-of-implicitly-delimited-set rule; pass all tests 2021-07-01 11:54:24 -06:00
ryanfleury 7be78c48d7 fix up some docs strings 2021-07-01 11:40:53 -06:00
ryanfleury 91e5303e4a finish up main layer docs 2021-06-30 23:23:57 -06:00
ryanfleury 07d9bdf609 error/warning message helper docs 2021-06-30 23:00:34 -06:00
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 9755bc966b get parser function definitions into docs 2021-06-30 16:25:09 -06:00
ryanfleury 3aec1987d2 docs for numeric string stuff 2021-06-30 16:14:02 -06:00
ryanfleury 6ea0e7599c helper macro docs 2021-06-30 15:50:03 -06:00
ryanfleury 3ea512a9d4 file system helper type docs 2021-06-30 15:50:03 -06:00
ryanfleury fba8ebe162 command line helper types docs 2021-06-30 15:50:03 -06:00
ryanfleury faae897671 docs for all the parsing types 2021-06-30 15:50:03 -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
ryanfleury e6d372c989 mark rjf todo items 2021-06-30 13:06:47 -06: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 7f730b0b0b build parse check 2021-06-30 12:35:16 -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
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 bb8bfd4254 update sanity tests in accordance with new tag string rule 2021-06-29 23:03:15 -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 055c152279 update usage of tree outputter 2021-06-29 20:43:58 -06:00
ryanfleury dff40b4f7a bugfixes and convergence in new parser 2021-06-29 20:43:58 -06:00
ryanfleury 665ae03d81 add parse checker sample 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
ryanfleury c3c863c7fa c++ build test, add user-defined-literals for metadesk strings 2021-06-29 20:43:58 -06:00
ryanfleury 2144f62e7e fix static site generator 2021-06-29 20:43:57 -06: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
ryanfleury d5d3b85492 fix checked in merge conflicts 2021-05-25 18:35:33 -06:00
Ryan Fleury 25a80c1def flesh out values in the toy language 2021-04-24 19:48:25 -06:00
Ryan Fleury 5f3528bea5 re-order md_impl; keep everything in same order as header file 2021-04-24 16:20:31 -06:00
Ryan Fleury 30187151ec toy language sample; fix a couple of bugs 2021-04-24 16:07:34 -06:00
Ryan Fleury 9c0babe0a6 node flags seeking helper 2021-04-24 12:56:02 -06:00
ryanfleury 5629c0c995 command line helper pass 2021-04-23 14:30:21 -06:00
ryanfleury 714cb85824 fix samples/tests for removal of JoinStringListWithSeparator helper 2021-04-12 13:21:19 -06:00
ryanfleury 28ea290661 remove MD_JoinStringListWithSeparator, just have separator argument in MD_JoinStringList; helper for making node references 2021-04-11 21:29:35 -06:00
ryanfleury 1b89d3cc90 docs work; clean up TODO list; add TODOs for a couple of helpers and changes 2021-04-11 21:20:51 -06:00
ryanfleury 0be2134fb5 sync reference 2021-04-07 01:45:09 -06:00
ryanfleury 6dc8487965 combine StringMatchFlags and NodeMatchFlags into MD_MatchFlags 2021-04-01 22:21:46 -06:00
ryanfleury ae2e1c6baa fix type for MD_Expr array thing 2021-04-01 21:48:42 -06:00
ryanfleury 2d81355626 update docs 2021-04-01 19:28:48 -06:00
ryanfleury d18ff2846b add some code styling to docs 2021-04-01 10:23:22 -06:00
ryanfleury f19849db87 fix some typos; use code for character symbols in docs 2021-03-31 20:39:07 -06:00
ryanfleury 65e5f728b1 node errors sample 2021-03-09 09:42:43 -07:00
ryanfleury 2e2ff1c42f use strtoll instead of atoll 2021-02-16 13:49:27 -07:00
ryanfleury 192b43770b do not leave spare carriage-return characters in node comments 2021-02-09 18:56:29 -07: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 47fe753411 write out initial basic namespace parsing, without affecting anything 2021-02-09 08:27:24 -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 8847aebca2 Require TokenKind_Symbol to begin an unnamed set 2021-02-06 20:35:18 -07:00
ryanfleury fbe34cd2b8 require token kind to be passed in MD_Parse_Require, to avoid detecting strings that are in string constants 2021-02-06 20:26:39 -07:00
ryanfleury 9da8264116 add const and volatile to type exprs; fix tag list parsing bug, restrict '@'s to symbol tokens 2021-02-06 20:23:29 -07:00
ryanfleury 289b9af732 adjust error/warning output to match MSVC/Clang/etc. format; fix infinite loop bug in index calculation 2021-01-29 12:18:56 -07:00
ryanfleury e8af78ed4c MD_NodeTable_Insert preserve order 2021-01-29 12:18:56 -07:00
ryanfleury 5e48bf8693 C code generation sample, array expressions 2021-01-22 14:58:33 -07:00
ryanfleury 1a2a47e88d Move all ExprKind metadata into a single table 2021-01-22 14:03:16 -07:00