SYNOPSIS

ustr-import [--32|--64] [-d][d] [-c] [-b x] [-e 1|0] [-s 1|0] section

DESCRIPTION

This tool lets you use the Ustr string library without incuring dependencies on the library itself, so API/ABI compatibility is 100% (nothing changes unless you do it) and installing your application doesn't require the library to be pre-installed.

OPTIONS

--32

If you installed with multilib, this runs the 32 bit variant (and installs the variable multilib build code as ustr-conf.h).

--64

If you installed with multilib, this runs the 64 bit variant (and installs the variable multilib build code as ustr-conf.h).

-d

Turn debugging on, USTR_ASSERT() now runs code etc.

-d

Turn extra debugging on, including End of String (EOS) markers that takeup space. Note that you can do -dd to add both at once.

-c

Use C files, this requires that you alter the build system to compile the C files and link them into your application. The default is to just provide headers that you can just include.

-b

Specify the default reference count byte size: 0, 1, 2 or 4 (or 8 on 64 bit platforms). Note that 2 bytes is the minimum if you have explicit size storage.

-e

Specify the default exact sized allocations flag, without this flag allocations are rounded up to the neared half power of two.

-s

Specify the default explicit size storage flag, without this flag allocations have an implicit size based on their length with it a size value is stored with the string (thus taking significantly larger space for small strings, but this doesn't require reallocating the string when growing and shrinking the string). Note that turning this on also increases the minimum sizes for length and reference count storage.

SECTIONS

all

All of the following sections are included.

b

Working with binary numbers in NBO format.

cmp

Comparing, strcmp() for Ustr's, although the Ustr versions are safer and much faster.

cntl

Control options dynamically.

fmt

Formatted output, sprintf() for Ustr's.

gdb

Copy just the .gdbinit file to the local dir.

io

Input Output.

ins

Inserting data.

main

The core functions, including strcat(), strdup() and delete for Ustr's. Always safer and often much faster.

parse

Parsing integers, Ie. Nice versions of strtol().

pool

A bundled memory pool API, to use with the ustrp functions.

replace

Replacing all occurances of data.

sc

Shortcut functions for Ustr's.

set

Setting data, strcpy() for Ustr's.

split

Slit the data, strtok() / strsep() for Ustr's.

spn

Spanning, strspn() / strcspn() for Ustr's.

srch

Searching, strchr() / strrchr() / strstr() for Ustr's, although the Ustr versions are safer and much faster.

sub

Substituting data.

utf8

Working with UTF8.

FILES

/ustr/include/ustr-conf.h /ustr/include/ustr-conf-debug.h

In multilib. this is the header to choose the correct conf.h header based on the byte size.

/ustr/include/ustr*.h

The default "extern" header files.

/usr/share/ustr-*/ustr-*-internal.h

Internal functions, used the implement the public interfaces.

/usr/share/ustr-*/ustr-*-code.h

The code behind the public interfaces.

/usr/share/ustr-*/ustr-*-code.c

The C files, which use the code header files to create objects.

/usr/share/ustr-*/.gdbinit

The GDB init file containing macros to help inspect Ustr's in the debugger.

RELATED TO ustr-import…