| Age | Commit message (Collapse) | Author |
|
|
|
cstr_null => cstr_NULL
csview_null => csview_NULL
cstr_npos => c_NPOS
csview_npos => c_NPOS
c_ARGsv(sv) => c_ARGSV(sv)
c_init(x) => c_INIT(x)
|
|
|
|
defining i_extern before including <stc/cstr.h> and <stc/cregex.h>. I.e.
#define i_extern
#define i_implement // define cstr functions as shared symbols (static if not defined).
#include <stc/cregex.h> // include cstr.h, utf8code.c, cregex.c, unless already included.
|
|
to always have flags at last (sorry for inconveniences).
Fixed a small bug in cregex_find_sv(), and added cre_default flag for readability.
|
|
c_foreach_token() => c_fortoken()
c_foreach_match() => c_formatch()
Added:
c_forfiltered()
c_forpred()
|
|
- Changed c_foreach_match(it, ...): to access matches, use it.match[j]
- splitstr.c now shows usages of both the above.
|
|
c_autodefer => c_defer. May or may not be reverted before V4.0 release.
|
|
Removed usage of c_ARGsv() macro in examples => printf formatting ".*s". csview fully inlined.
|
|
..), as it gives smaller executables and is convenient for small applications. (no need to define i_implement when functions is used in one translaton unit only).
|
|
|
|
- Non-templated types (cstr, csview, cbits, crandom) have no longer default static linking. Now i_header is defined, i.e. files are as headers only.
==> Define `i_implement` before file inclusion. Still possible to do static linkage by defining `i_static` before inclusion or global STC_STATIC.
- Templated containers still have static linkage by default.
- Renamed csview_substr(), csview_slice() to csview_substr_ex(), csview_slice_ex(). Added simpler inlined csview_substr(), csview_slice().
|
|
|
|
PRIxYYY macros from inttypes.h. E.g. printf("%40" c_PRIsv "\n", c_ARGsv(sv)); to specify 40 character right aligned output of sv. Check your usage.
|
|
string. Fixed misc warnings.
|
|
intrusive.
The change was needed to be consistent in using 'sv' as a shorthand for "string view" everywhere, and is easier to understand than _v().
|
|
|
|
file strings.h.
|
|
changes.
|
|
|
|
'_del' to '_drop' and '_compare' to '_cmp'.
Also i_key_ref (earlier i_key_sptr) and i_val_ref replaced by more general i_key_bind/i_val_bind.
|
|
Renamed *cstr_assign_fmt()* to `cstr_printf()`.
Renamed cbits_from_str() to cbits_from().
|
|
/ Rust Box.
- Replaced example for **csptr** in docs.
- Added [**c_forpair**](docs/ccommon_api.md) macro: for-loop with "structural binding" as in c++.
- Deprecated *csptr_X_make()*. Renamed to *csptr_X_new()*. Corresponding **cbox** method is *cbox_X_new()*.
- Deprecated *c_default_fromraw(raw)*. Renamed to *c_default_clone(raw)*.
- Deprecated `i_key_csptr` / `i_val_csptr`. Use `i_key_ref` / `i_val_ref` when specifying containers with **csptr** or **cbox** elements.
- Deprecated `i_cnt`. Use `i_type` instead to define the full container type name.
- Bugfixes and docs updates.
|
|
|
|
c_forvar => c_autovar
c_forscope => c_autoscope
c_forauto => c_auto
Removed: c_fordefer(x); use c_forscope(0, x) instead.
Added: c_exitauto; // continue
|
|
|
|
cstr_sv(cstr), and c_lit(string literal) => c_sv(string literal). Hopefully not too much used yet, as they are fairly new.
|
|
input argument variants. Changed def of cstr_npos.
|
|
|
|
special for printing csviews with "%.*s" format.
|