0bba319126
Big overhaul:
...
- Clean up environment code using type strings instead of manually
defining types
- Add Commands module
- Move Shell lang into an example module that uses Commands module
- Fix some bugs with chained library dependencies
2025-03-17 19:29:28 -04:00
94993c5f11
Add Path:expand_home() as a publicly visible API and bugfix it
2025-03-17 18:59:03 -04:00
3eae595c17
Codegen improvements and fixes
2025-03-17 18:12:59 -04:00
e80571e36f
Remove enum type prefix when printing enum
2025-03-16 17:07:22 -04:00
67191b7078
Fix shell escaping for arrays of paths
2025-03-16 16:54:27 -04:00
b4a0fda409
Fix shell escaping of paths
2025-03-16 16:52:00 -04:00
b0b2504a94
Update file path API and docs
2025-03-16 16:11:43 -04:00
d803502032
Fix other root->type rename
2025-03-16 14:12:21 -04:00
500989cf55
Rename path root
to path type
2025-03-16 14:11:16 -04:00
fd8c961c1d
Remove debug print
2025-03-16 14:05:53 -04:00
5e85306edb
Bugfix for relative_to()
2025-03-16 14:05:30 -04:00
b0b3a5f95a
Add begin:/end: for do: blocks
2025-03-16 14:02:53 -04:00
469b1e0679
Fixes for opaque external structs
2025-03-16 13:35:58 -04:00
f51acef40e
Overhaul of Path so it uses root and array of components instead of
...
stringly typed
2025-03-15 14:22:11 -04:00
7a26535013
Bugfix optional moments
2025-03-15 14:10:24 -04:00
1dd5e726dc
Remove line
2025-03-13 00:15:20 -04:00
35f121bb27
Fix CRLF pattern
2025-03-13 00:14:58 -04:00
bae83f17cf
Simplify RNG seeding
2025-03-12 19:32:04 -04:00
de0e565d00
Fixes for integer truncation
2025-03-11 18:02:13 -04:00
1f6e586b2a
Support external structs with namespaced methods (also C-strings are now
...
`const char*` instead of `char*`)
2025-03-11 17:49:04 -04:00
e7035e6a86
Clean up doctest code a bit
2025-03-11 14:23:41 -04:00
cab9ea0aad
Improve codegen for optional struct types
2025-03-11 13:44:02 -04:00
9885ab1163
For doctests, only print code if there's no expected value. If there's
...
an error, show the mismatch below the stack trace.
2025-03-10 23:46:26 -04:00
6abd4e8024
Add fail_text() so there isn't a hacky/broken fail() with promotion to
...
CString
2025-03-09 17:30:22 -04:00
a24e521fa7
Have floating point modulus use euclidean division
2025-03-09 17:02:48 -04:00
50f8fdd007
Fix some integer stuff that was being implicitly downcast to 32-bit
2025-03-09 16:14:53 -04:00
29358b9cd0
Add some missing modulus and conversion methods for floats/ints
2025-03-09 15:56:44 -04:00
2ebe7893fe
Add text padding functions: :left_pad(), :right_pad(), :middle_pad()
2025-03-07 16:56:23 -05:00
60e971ff7a
Roll back number formatting change
2025-03-07 16:55:35 -05:00
7eb1fbf5d2
Add proper language support for case operations on text
2025-03-07 16:19:12 -05:00
d590b9d386
Fix number precision stuff
2025-03-07 15:30:26 -05:00
bae4ae1a6a
Correctly set locale when starting the program
2025-03-07 14:28:28 -05:00
3ea8540ec6
Incremental improvement to parsing none
for optional arguments
2025-03-07 12:26:22 -05:00
147e0f0269
Overhaul of constructors, making it more consistent and correct. Also
...
changed T(), T, T_t, T_s type names to T(), T$$info, T$$type, T$$struct
for unambiguity
2025-03-05 18:20:54 -05:00
f330f06c21
Add recursive
argument to text:each() and text:map(), plus update docs
2025-03-03 13:45:30 -05:00
44b0db6882
Fix parsing for CLI tables and arrays
2025-03-03 12:53:02 -05:00
bd4ee6a429
Add better error checking for parsing program --array=1 2 3
2025-03-02 01:11:57 -05:00
d8399bb044
Bugfix for recursive replacement on Text.replace_all()
2025-03-02 00:02:23 -05:00
afed636252
Handle case where file can't be found
2025-02-28 18:48:36 -05:00
39e169d5b4
Check for missing argument
2025-02-28 18:15:15 -05:00
12569cb933
Improved call stacks (using addr2line still)
2025-02-26 16:38:22 -05:00
851ec4e29d
Fix non-colorized doctest output newlines
2025-02-25 01:05:58 -05:00
9a62f8d6a6
Add $Shell.execute()
2025-02-25 00:59:31 -05:00
928f3250b3
Add $Shell:execute()
2025-02-24 18:23:18 -05:00
ee2b02d44d
Integer range iteration over fixed width integers should iterate over
...
that type
2025-02-21 15:51:22 -05:00
7a6abd4f8e
Tweak function registration API
2025-02-21 14:59:14 -05:00
29849d1457
Fix shell escaping (add quotes)
2025-02-19 18:24:27 -05:00
c4479e4bd6
Add Int:onward() iterator
2025-02-13 15:21:00 -05:00
5be9559046
Deprecate Range datatype in favor of using iterator methods
2025-02-13 15:03:22 -05:00
04dddda811
Add missing files
2025-02-10 19:04:30 -05:00