208 Commits
Author SHA1 Message Date
gingerBill 55f398b734 Add #no_bounds_check to appropriate procedures 2026-03-15 16:00:40 +00:00
miningape 4ec443df9b fix: strings.substring not returning end of range 2026-02-28 00:44:26 +01:00
Shane Shrybman ce2a1f5d02 Remove core:mem dependency from strings builder 2026-02-12 14:04:38 -05:00
Shane Shrybman bb9d45867f Remove core:mem dependency from strings conversion.odin 2026-02-12 13:35:34 -05:00
Shane Shrybman 671c46235a Remove core:mem dependency from strings builder 2026-02-12 13:21:19 -05:00
Shane Shrybman d1927e4eba strings.compare() can be an alias of runtime.string_cmp() 2026-02-12 11:52:55 -05:00
Shane Shrybman 8a2a0c5a93 Remove core:mem dependency from strings intern.odin 2026-02-12 11:05:23 -05:00
Shane Shrybman 871ad16501 Add the length checks back to string.compare() 2026-02-12 10:54:59 -05:00
Shane Shrybman a484937fb7 strings.compare() can wrap runtime.string_cmp() 2026-02-12 10:43:27 -05:00
Shane Shrybman edcefaac12 Remove core:mem dependency from core:strings 2026-02-11 17:22:53 -05:00
Jeroen van Rijn 2b539bfcd5 Fix #6198 2026-01-31 10:50:42 +01:00
gingerBill 71c4da8e34 Fix typo in strings.equal_fold 2026-01-16 09:19:01 +00:00
gingerBill ca20a9c8e7 Prereserve the memory needed for strings.builder_replace 2025-12-21 15:21:26 +00:00
gingerBill 750d99019c Add strings.builder_replace and strings.builder_replace_all 2025-12-15 11:21:54 +00:00
gingerBill e4fcebe4bf Empty -> Unsupported 2025-11-14 11:17:38 +00:00
Jeroen van Rijn 9df81bed9f Fix detached comment 2025-10-20 19:14:18 +02:00
Jeroen van Rijn 7a9ea3ee6d Further overhaul of package line comments. 2025-10-09 23:05:29 +02:00
gingerBill 20e67f2ad9 Add some more docs 2025-10-07 14:27:19 +01:00
Damian Tarnawski 413b44d05c Add missing caller location param to append in strings builder 2025-09-10 13:23:56 +02:00
Jeroen van Rijn 4b36306674 Deprecate old @(deprecated) things. 2025-06-06 10:42:34 +02:00
Feoramund b7de15caa3 Clarify strconv.append_* to strconv.write_* 2025-06-05 16:56:00 -04:00
Jeroen van Rijn c705756389 Fix doctest 2025-05-31 20:35:25 +02:00
Jeroen van Rijn 890e923051 Vectorize strings.prefix_length.
Also add `strings.common_prefix`.
2025-05-31 20:24:21 +02:00
Jeroen van Rijn 39789bc6cb Make strings.to_cstring adhere to #optional_allocator_error 2025-05-12 01:17:34 +02:00
mtarik34b f4212b60e7 Remove redundant calls to builder_init 2025-04-16 13:16:51 +02:00
Jeroen van Rijn f7c4c80ef3 Fix broken examples in documentation tester.
No more:
```
We could not find the procedure "pkg_foo_example :: proc()" needed to test the example created for "pkg.foo"
The following procedures were found:
   bar()
```
2025-04-05 16:36:26 +02:00
Feoramund fef5f526f3 Remove unneeded slicing in strings.clone 2025-03-05 13:54:31 -05:00
Feoramund b2e3b34ce0 Fix #4890
`strings.to_cstring` previously would not check if the buffer could
handle the extra null byte and could lead to segmentation violations
when using the resulting string in an API expecting the terminator.
2025-02-27 18:54:38 -05:00
Jacob Friedman 385f5f5014 Small optimization 2025-02-04 19:51:48 +01:00
Jacob Friedman 4c0b145bad Fix unicode handling 2025-02-04 15:49:23 +01:00
Jacob Friedman 239c511ce9 Fix strings.split_iterator when separator is empty 2025-02-04 15:09:12 +01:00
Laytan Laats 16e3abfe82 strings: use map_entry 2025-01-08 22:20:43 +01:00
Adam Zadrożny 5dfc24882f improve strings.index_multi
There's no point searching for substrings after lowest_index,
so let's not.

This significantly improves performance on long strings.
2024-12-04 14:29:49 +01:00
Jeroen van Rijn 6f23b5bb60 Fix #4359
Fixes #4359
2024-10-09 14:31:01 +02:00
Laytan Laats 5ae27c6ebc wasm: support more vendor libraries
Adds support for:
- box2d
- cgltf
- stb image
- stb rect pack
2024-09-09 18:49:13 +02:00
Jeroen van Rijn 645207b8b0 Merge pull request #4192 from laytan/strings-substring-rune-wise
strings: add `substring`, `substring_to` and `substring_from`
2024-09-03 22:47:56 +02:00
Laytan Laats 597ba796b7 strings: add substring, substring_to and substring_from 2024-09-03 21:13:35 +02:00
Jeroen van Rijn 996175753c strings.cut without allocation. 2024-09-03 19:02:40 +02:00
gingerBill 2999c02f65 Fix random typo 2024-08-19 16:33:17 +01:00
gingerBill 9d7ab8d5ca Add strings.contains_space 2024-08-19 16:31:03 +01:00
gingerBill 31bb3dc4f0 Merge pull request #3971 from jasonKercher/os2-process-linux
os2 process linux implementation
2024-08-16 12:38:27 +01:00
jason 07a9c69714 update core:filepath's clean, join and split_list to return optional Allocator_Errors 2024-08-16 01:48:27 -04:00
gingerBill 62911539cd Minor style change 2024-08-13 14:27:25 +01:00
Feoramund c69fa87d53 Merge core:simd/util into core:bytes 2024-08-10 07:17:03 -04:00
Feoramund c8a62ee4ec Make simd_util index procs contextless where applicable 2024-08-09 18:54:04 -04:00
Feoramund 12dd0cb72a Simplify and make simd_util cross-platform
This new algorithm uses a Scalar->Vector->Scalar iteration loop which
requires no masking off of any incomplete data chunks.

Also, the width was reduced to 32 bytes instead of 64, as I found this
to be about as fast as the previous 64-byte x86 version.
2024-08-09 18:54:04 -04:00
Feoramund f66fcd9acb Use vectorized index_* procs in core 2024-08-06 15:19:05 -04:00
gingerBill f75a45c3fa Add aliases starts_with and ends_with 2024-07-10 16:34:15 +01:00
Jeroen van Rijn 258f120d52 Remove nil checks.
The caller should really not pass `foo: ^string = nil`. A `for ch, in foo` would also crash,
so let's not introduce new semantics for iteration.

A caller shouldn't pass garbage if they can help it, and a `nil` ^string is not a useful ZII usage here.
2024-07-06 18:34:52 +02:00
gingerBill e296d6fb90 Fix loads of indentation issues with mixing spaces and tabs 2024-06-29 19:50:51 +01:00