7126755275
Add optional types
2024-09-11 01:31:31 -04:00
d356309023
Add (/path):by_line()
2024-09-09 22:16:40 -04:00
23de8e1f5a
Fix up some stuff with path escaping
2024-09-09 16:54:08 -04:00
f6487510d4
Add shims for hashing/equality of langs
2024-09-09 16:08:59 -04:00
02eefdd52c
Fix issues with path reading from pipes (don't UTF8 validate chunks,
...
because they can be fragments) and some misc buffering issues.
2024-09-09 15:28:03 -04:00
6ea6aadd96
Correctly clean up CLI args that are paths
2024-09-09 14:48:33 -04:00
900b456a26
Ensure more rigoroous cleanup and validation of paths
2024-09-09 14:35:00 -04:00
e16792d5eb
Add Text.starts_with() and Text.ends_with()
2024-09-09 05:31:25 -04:00
0b441054b3
Fix up some path logic
2024-09-09 04:49:02 -04:00
bc032de1df
Add Text$compare_values()
2024-09-09 04:42:36 -04:00
d3509e964a
Bugfix for $/{..}/ matching zero-width at the end of text
2024-09-09 04:42:14 -04:00
6f174aa85d
Fix some logic for extensions and base names
2024-09-09 04:19:31 -04:00
3081da3dd0
Add Path.base_name(), Path.parent(), Path.extension()
2024-09-09 03:51:35 -04:00
8423a7ed07
Print paths as the literals look
2024-09-09 03:20:44 -04:00
a306f94557
Add mktemp functionality
2024-09-09 02:43:15 -04:00
1fbe2cb5dd
For parsing paths, use nested parens: (./foo), also add some methods
2024-09-09 02:02:08 -04:00
6752c60f32
More methods
2024-09-09 01:48:37 -04:00
11c560ebcc
More path stuff including some methods
2024-09-09 01:14:33 -04:00
13a9304dec
Initial working version
2024-09-09 00:22:12 -04:00
f86cc6549f
Bugfixes
2024-09-08 19:33:49 -04:00
aeed1992e9
Fix nearly every GCC warning and add __attribute__((pure/const)) where
...
appropriate
2024-09-08 17:17:15 -04:00
cf9d5b1619
$/{!..}/ is the same as $/{end}/
2024-09-07 03:02:37 -04:00
6bacf34211
Fix captures for {..} optimization
2024-09-07 03:00:42 -04:00
cbf0bc9207
Optimization to terminate pattern searches early if there's a greedy
...
{..} at the end
2024-09-07 02:51:14 -04:00
5927ba86e3
Optimize text matching
2024-09-07 02:46:01 -04:00
0a4d18c8bd
Bugfix uninitialized variables
2024-09-07 01:07:13 -04:00
cf7ea6fbef
Add exit() function
2024-09-07 00:44:47 -04:00
8670cbf943
Make {start} and {end} non-capturing
2024-09-06 23:12:15 -04:00
594d1a627f
Fix some C string and path resolving issues
2024-09-06 15:39:00 -04:00
176205a22d
Print stack trace if $TOMO_STACKTRACE is set
2024-09-06 14:41:34 -04:00
4b352f89a3
Add Shell dsl type
2024-09-06 11:37:33 -04:00
5221584d28
Minor cleanup
2024-09-06 11:37:16 -04:00
57b9719715
Add convenience function for debug printing
2024-09-06 11:36:42 -04:00
fa56d845c0
Add missing file
2024-09-06 11:35:42 -04:00
89a1f8a401
Misc fixes
2024-09-06 04:10:41 -04:00
84a4d94ca6
Flush stdout more
2024-09-06 03:29:51 -04:00
c789d25878
Text overhaul
2024-09-06 03:29:07 -04:00
44892df4c5
Add Text.trim()
2024-09-06 00:03:28 -04:00
1000423d2b
Some const stuff
2024-09-05 17:06:27 -04:00
bac14fa6c7
Fully clean up siphash code and fix some issues
2024-09-05 16:23:05 -04:00
df61a0805f
Correctly resolve '../' paths
2024-09-05 15:47:00 -04:00
e92ea6fe1b
Remove unused macro
2024-09-05 15:33:43 -04:00
04c8fb0362
Replace $Type with Type$info for builtin TypeInfos
2024-09-05 15:31:54 -04:00
391c1b6bde
Rename table_t -> Table_t
2024-09-05 14:57:31 -04:00
abe45a3c25
Rename array_t -> Array_t
2024-09-05 14:56:37 -04:00
a8be9efcd3
Rework CLI compilation so that all of the argument parsing is written to
...
the .tm.c file and the runner program is *just* a single function call
to the function that parses args and runs the main function. Also
improved some CLI usage error code
2024-09-05 14:38:37 -04:00
8d41b2b1fb
Do the extremely obvious optimization of checking if two pieces of data
...
are at the same location before bothering to compare them
2024-09-05 10:31:35 -04:00
41e4ddb973
Clear out some CRLF cruft
2024-09-05 03:58:20 -04:00
73df39ff7e
Fix stability of concatenation
2024-09-05 03:47:15 -04:00
e3cc4f88e0
Be extra correct about prefix codepoints
2024-09-05 02:56:56 -04:00