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