10.4.0
 2
 3  * Swapped arguments for pw_clone2, pw_move, pw_deepcopy, pw_create_string, and pw_create_string_io: result goes first!
 4    That's for consistency with standard C library in particular and assignments in general: right to left.
 5    But: deepcopy method has the result the last arg because self is always first.
 6
 7  * pw_set: value is the last argument now, not first
 8
 9  * pw_this_data macro makes unnecessary wrappers; it returns void* so need either typecast or assigning to a typed variable
10
11  * Renamed trim to strip, added pw_string_strip_chars
12
13  * Removed doubly curly braces from loop bodies, autocleaning works just fine with gcc 14 and clang 19.
14
15  * Added type_id to PwMethod structure.
16
17    Rationale: hardcoding type_id in get_ctor_args is error-prone.
18
19    Previously:
20
21        PwArrayCtorArgs* args = pw_get_ctor_args(PwTypeId_Array, ctor_args);  // XXX using Array type id here, not BasicArray
22
23    Now:
24
25        PwArrayCtorArgs* args = pw_this_ctor_args();
26
27    Aliasing for Array and Map:
28
29        PwArrayCtorArgs* args = pw_this_ctor_args();
30        if (!args) {
31            // try Array type id as an alias
32            args = pw_get_ctor_args(PwTypeId_Array, ctor_args);
33        }
34
350.3.0
36
37  Inception.