Commit Graph

462 Commits

Author SHA1 Message Date
7f5af625e5 Support useing .c files and .S files (assembly) 2024-09-18 15:39:22 -04:00
2158bb97fc Clean up struct code a bit 2024-09-18 01:01:15 -04:00
0829e1a2d1 Clean up enum code 2024-09-18 00:58:41 -04:00
7e0b1a3214 Deprecate linker directives 2024-09-18 00:43:13 -04:00
ec88848f6b Support explicit discards better by allowing multiple declared "_" vars 2024-09-18 00:30:05 -04:00
03a7d5f44d Overhaul of header logic so it now uses topological ordering and
deduplication for libraries with multiple files.
2024-09-17 16:20:30 -04:00
aaa51fc734 Perform topological ordering when compiling typedefs so users don't need
to think about ordering their definitions.
2024-09-17 15:17:13 -04:00
e5f432d4c9 Fix not x for optional values 2024-09-16 16:10:05 -04:00
de49bc5bb3 Deprecate :or_else()/:or_fail()/:or_exit() in favor of the or operator 2024-09-16 16:06:19 -04:00
821bde156c Support (optional or skip) 2024-09-16 15:48:06 -04:00
68c4731ae6 Show more error info 2024-09-16 14:27:18 -04:00
6b5a9d65e3 Overhaul of how libraries are installed 2024-09-15 21:18:42 -04:00
8a1ace4d65 Fix optional text CLI args 2024-09-15 17:53:20 -04:00
8ee23054bf Update Inline C syntax and documentation/tests 2024-09-15 17:34:34 -04:00
835eb7e896 Add optional:or_exit(...) 2024-09-15 16:42:42 -04:00
fb37b0ee42 Fix up if var := ...: in ternary expressions and optional checking
logic
2024-09-15 16:29:45 -04:00
e422079fcc Add a Byte datatype 2024-09-15 15:33:47 -04:00
c455e7b67d Rename builtins/ -> stdlib/ 2024-09-13 20:18:08 -04:00
34c562e88e Move cord helper functions into their own file 2024-09-13 14:23:24 -04:00
da9cc93c46 Make functions print with func name(...)->... [file:line] info 2024-09-12 23:41:32 -04:00
46a2aa2ffc Fix up comprehensions so set comprehensions work and everything is a bit
more clean
2024-09-12 14:27:13 -04:00
990846debb Add enum scoping to arrya/set/table literals 2024-09-12 13:11:03 -04:00
56a4d13975 Automatic promotion to single-argument enum tags with a unique type 2024-09-12 13:05:08 -04:00
1d05704fdd Use CString literals as constant values 2024-09-12 02:18:05 -04:00
327d466b95 Table:get() now uses optional values instead of default or failure modes 2024-09-12 00:55:43 -04:00
fa7e52787f Add postfix ! operator for optionals 2024-09-12 00:13:53 -04:00
8e300312a0 Change check_optional -> check_null 2024-09-11 23:55:49 -04:00
c034175ae1 Add optional:or_else(fallback) and optional:or_fail(message) 2024-09-11 23:17:03 -04:00
cfef667a89 Fix optional integer promotion 2024-09-11 23:13:41 -04:00
0f7cf28af1 Fix threads and integers 2024-09-11 22:50:03 -04:00
3443edf760 Use optionals for iterators 2024-09-11 22:28:43 -04:00
6723ea46c2 Bugfix big int literals 2024-09-11 15:03:39 -04:00
db0d5a1c20 Change *:from_text() methods to return optional values and set up CLI
parsing to use that approach
2024-09-11 14:53:48 -04:00
0b5bb32912 Fix optional bools 2024-09-11 14:18:01 -04:00
273e2f995f Rename channel_t -> Channel_t for consistency 2024-09-11 13:57:21 -04:00
75fbaa79bc Rename closure_t -> Closure_t for consistency 2024-09-11 13:56:39 -04:00
b0b23acf88 Rename "Nil"->"Null" for consistency 2024-09-11 13:55:41 -04:00
02930b84f8 Optionals for threads 2024-09-11 12:56:16 -04:00
908673c9d9 Optional channels (plus fixed some channel bugs) 2024-09-11 12:50:46 -04:00
30d39378c7 Optional C Strings 2024-09-11 12:39:56 -04:00
210179ee67 Optional enums (deprecated custom tag values) 2024-09-11 12:29:48 -04:00
dee3742b48 Optional structs 2024-09-11 12:01:17 -04:00
bba9f1b141 Optional fixed-size ints 2024-09-11 11:08:15 -04:00
0ca48c98e8 Support conditionals for tables/arrays/sets 2024-09-11 01:51:16 -04:00
989dc3f442 Support if x := blah: ... 2024-09-11 01:48:15 -04:00
7126755275 Add optional types 2024-09-11 01:31:31 -04:00
23de8e1f5a Fix up some stuff with path escaping 2024-09-09 16:54:08 -04:00
8e27f0e796 remove debug code 2024-09-09 16:09:13 -04:00
013fbe22e0 Clean up CLI path arrays 2024-09-09 14:55:04 -04:00
6ea6aadd96 Correctly clean up CLI args that are paths 2024-09-09 14:48:33 -04:00