Bennet Bleßmann
34eab2e73a
fix crash when trying to load and ffi library with an invalid type specification
2025-08-01 18:22:15 +02:00
Bennet Bleßmann
4f04d2dfca
replace .skip(n).next() with .nth(n)
2025-07-31 21:47:12 +02:00
Bennet Bleßmann
de89a78cbb
remove unecessary cast
2025-07-31 21:47:11 +02:00
Bennet Bleßmann
e7600884fb
remove unecessary into_iter
2025-07-31 21:47:11 +02:00
Bennet Bleßmann
3365cffa96
prefere for loop
2025-07-31 21:47:10 +02:00
Bennet Bleßmann
df3f1236f7
replace always erroring of_else with map_err
2025-07-31 21:47:09 +02:00
Bennet Bleßmann
8766851919
replace single non-wildcard pattern match with if let
2025-07-31 21:47:09 +02:00
Bennet Bleßmann
014d1b0095
remove already implied must_use
2025-07-31 21:47:08 +02:00
Bennet Bleßmann
c885d1a7e7
collaps els-if / if-if
2025-07-31 21:47:08 +02:00
Bennet Bleßmann
7593f88d5a
ingore nerver looping loop, but add a todo
2025-07-31 21:47:07 +02:00
Bennet Bleßmann
6885074006
fix clippy::unit_arg
2025-07-31 21:47:07 +02:00
Bennet Bleßmann
fae5e13bd5
impl From rather than Into
2025-07-31 21:47:05 +02:00
Bennet Bleßmann
6d7c217227
fix unecessary mut
2025-07-31 21:47:05 +02:00
Bennet Bleßmann
166ec02973
ignore clippy::unbuffered_bytes in test helper functions
2025-07-31 21:47:04 +02:00
Bennet Bleßmann
a639fec153
fix match/if-let can be simplified to ?
2025-07-31 21:47:03 +02:00
Bennet Bleßmann
495bcd73f2
fix unecessary return
2025-07-31 21:46:52 +02:00
Bennet Bleßmann
ae3019d923
fix unecessary reference/dereference
2025-07-31 21:46:51 +02:00
Bennet Bleßmann
72631b3e0b
fix clone on copy values
2025-07-31 21:28:39 +02:00
Bennet Bleßmann
8cc74b2af7
fix clippy::uninlined_format_args
2025-07-31 21:26:08 +02:00
Mark Thom
9b293cf1b6
detect end_of_file before end_of_stream in get_char ( #2990 )
2025-07-22 20:39:52 -07:00
Mark Thom
65dda019a2
allow abolish_clause to abolish empty dynamic clauses ( #3010 )
2025-07-20 16:55:07 -07:00
Mark Thom
e303e5a805
correct number_chars ( #2976 )
2025-07-07 22:44:05 -07:00
Mark Thom
762b63e1f4
use granular hierarchical locks in offset_table.rs
2025-07-07 22:44:02 -07:00
Mark Thom
2844b5a958
synchronize offset table growth with the borrowing of offset pointers
2025-07-07 22:39:47 -07:00
Mark Thom
1332611f83
use OffsetTableImpl without synchronization by default
2025-07-07 22:39:47 -07:00
Bennet Bleßmann
725def07cd
fix crash when loading html
2025-07-07 22:39:47 -07:00
Bennet Bleßmann
cbdd0fbf15
make Fixnum::build_with harder to accidentally misuse
...
change trait bound order for better
2025-07-07 22:39:34 -07:00
bakaq
87ca083cfa
Align the heap to the size of heap cells
2025-07-07 22:38:12 -07:00
bakaq
d01557f3c1
Add scan_slice_to_str_from_start
2025-07-07 22:38:12 -07:00
Mark Thom
8b009448f4
correct threshold marking in copy_structure ( #2920 )
2025-07-07 22:38:12 -07:00
Markus Triska
709dc041eb
FIXED: correct partial string tail calculation in arg/3
...
This addresses another aspect of #2924 , found by @haijinSk.
Thank you again!
Example:
?- "aaaaaaa" = [_,_,_,_,_,_|T], arg(2, T, 2).
false.
2025-07-07 22:38:12 -07:00
Markus Triska
8763a42c98
FIXED: arg/3 for partial strings
...
This address #2924 , reported by @haijinSk. Thank you a lot!
Example:
?- arg(2, "a", A).
A = [].
The fact that such a mistake in macro usage is even possible could be
a sign that the macro definition should be stricter.
2025-07-07 22:38:12 -07:00
Mark Thom
d6b6eda77d
fix cont function crashes ( #2920 )
2025-07-07 22:38:12 -07:00
Mark Thom
4e0493474e
replace deprecated unify_complete_string call with allocate_cstr
2025-07-07 22:38:12 -07:00
bakaq
a9847eef65
Migrate to strict and exposed provenance
2025-07-07 22:38:12 -07:00
Markus Triska
d51cbd67e0
ENHANCED: partial_string/3 no longer creates atoms
...
As a consequence, resulting strings are now quickly reclaimed on
backtracking.
This addresses #2912 .
Test case:
:- use_module(library(iso_ext)).
:- use_module(library(lists)).
ab(a).
ab(b).
Sample query:
?- length(Ls, 1_000_000),
maplist(ab, Ls),
partial_string(Ls, Es0, []),
Es0 == Ls.
Ls = "aaaaaaaaaaaaaaaaaaa ...", Es0 = "aaaaaaaaaaaaaaaaaaa ..."
; Ls = "aaaaaaaaaaaaaaaaaaa ...", Es0 = "aaaaaaaaaaaaaaaaaaa ..."
; Ls = "aaaaaaaaaaaaaaaaaaa ...", Es0 = "aaaaaaaaaaaaaaaaaaa ..."
; Ls = "aaaaaaaaaaaaaaaaaaa ...", Es0 = "aaaaaaaaaaaaaaaaaaa ..."
; Ls = "aaaaaaaaaaaaaaaaaaa ...", Es0 = "aaaaaaaaaaaaaaaaaaa ..."
; ... .
running in constant memory.
2025-07-07 22:38:12 -07:00
Mark Thom
b12d1ece17
correct heap-to-cell-index comparison in copy_slice_to_end ( #2906 )
2025-07-07 22:38:12 -07:00
Mark Thom
706ffe7ad9
fix functor! size calculations around indexing_code_ptr
2025-07-07 22:38:12 -07:00
Mark Thom
39ea2d5899
make self.s_offset use bytes in case of HeapPtr::PStr in UnifyVoid ( #2897 )
2025-07-07 22:38:12 -07:00
Mark Thom
6bcbb91e08
correctly increment s_offset for partial strings ( #2897 )
2025-07-07 22:38:12 -07:00
Mark Thom
e1e52338d6
fix typo in try_from_partial_string
2025-07-07 22:38:12 -07:00
Mark Thom
995a39419a
fix read_s logic around HeapPtr::PStrLoc ( #2894 )
2025-07-07 22:38:12 -07:00
Mark Thom
4644ea2404
repair cyclic PStrLoc handling in heap_print.rs
2025-07-07 22:38:12 -07:00
Mark Thom
f3cd6326a3
remove compare_pstr_to_string and related result type
2025-07-07 22:38:12 -07:00
Mark Thom
4c46f0e54d
correct GetPartialString ( #2887 )
2025-07-07 22:38:12 -07:00
Mark Thom
e563fd8e4f
generalize compare_pstr_segments
2025-07-07 22:38:12 -07:00
Mark Thom
16b3bea48e
correct and simplify compute_pstr_size
2025-07-07 22:38:12 -07:00
Mark Thom
e20363b462
correct create_partial_string ( #2593 )
2025-07-07 22:38:12 -07:00
Mark Thom
549a26dd03
restore more tabu_list use to compare_term_tests ( #2633 )
2025-07-07 22:38:12 -07:00
Mark Thom
8981ab72d1
restore tabu_list insertions to PStr-Lis comparisons ( #2636 )
2025-07-07 22:38:12 -07:00