This documentation describes the Prokee module interface.
Static Methods:
main
int nvpairs::main(int argc,char **argv)
create
nvPairs *nvpairs::create(uint32_t size)
destroy
void nvpairs::destroy(nvPairs *nvp)
set
int nvpairs::set(nvPairs *nvp,const char *name,const char *value)
set2
int nvpairs::set2(nvPairs *nvp,const char *name,const char *value,uint8_t flags)
update_flags
int nvpairs::update_flags(nvPairs *nvp,const char *name,uint8_t flags)
add
int nvpairs::add(nvPairs *nvp,const char *name,const char *value,uint8_t flags)
get
const char *nvpairs::get(nvPairs *nvp,const char *name)
get2
const char *nvpairs::get2(nvPairs *nvp,const char *name,const char *def)
get_copy
char *nvpairs::get_copy(nvPairs *nvp,const char *name)
get_copy2
char *nvpairs::get_copy2(nvPairs *nvp,const char *name,const char *def)
get_flags
uint8_t nvpairs::get_flags(nvPairs *nvp,const char *name)
exists
bool nvpairs::exists(nvPairs *nvp,const char *name)
remove
bool nvpairs::remove(nvPairs *nvp,const char *name)
count
uint32_t nvpairs::count(nvPairs *nvp)
memsize
uint32_t nvpairs::memsize(nvPairs *nvp)
load
nvPairs *nvpairs::load(const char *filename)
save
int nvpairs::save(nvPairs *nvp,const char *filename)
read
nvPairs *nvpairs::read(FILE *f)
write
int nvpairs::write(nvPairs *nvp,FILE *f)
load_csv
nvPairs *nvpairs::load_csv(const char *filename)
save_csv
int nvpairs::save_csv(nvPairs *nvp,const char *filename)
read_csv
nvPairs *nvpairs::read_csv(FILE *f)
write_csv
int nvpairs::write_csv(nvPairs *nvp,FILE *f)
sort
void nvpairs::sort(nvPairs *nvp)
bset_union
nvPairs *nvpairs::bset_union(nvPairs *A,nvPairs *B)
bset_symdiff
nvPairs *nvpairs::bset_symdiff(nvPairs *A,nvPairs *B)
bset_minus
nvPairs *nvpairs::bset_minus(nvPairs *A,nvPairs *B)
check
uint32_t nvpairs::check(nvPairs *nvp,uint32_t flags)
copy
nvPairs *nvpairs::copy(nvPairs *A,uint8_t flags)
mem_expand
uint32_t nvpairs::mem_expand(nvPairs *nvp,uint32_t req_space)
mem_realloc
uint32_t nvpairs::mem_realloc(nvPairs *nvp,uint32_t req_size)
mem_fitmin
uint32_t nvpairs::mem_fitmin(nvPairs *nvp)
Motivation
This module manages name/value pairs.
The following creteria are met:
- No STL-containers should be used.
- Only strings are required to handle as values.
- The order of name/value pairs does not matter.
- An c-interface should be provided (using struct types).
Static Methods
main
Runs
nvpairs as if it would be called from the command-line.
See
Commandline-Interface.
Signature:
int nvpairs::main(int argc,char **argv)
Parameters:
| int | argc | | The number of command-line parameters. |
| char ** | argv | [IN] | The command-line parameters. |
Return value:Exit status.
create
Creates a new name/value pairs object.
Signature:
nvPairs *nvpairs::create(uint32_t size)
Parameters:
| uint32_t | size | | The initial size of the container. (This is the number of name/value pairs, the container may hold without reallocation of memory.) |
Return value:A name/value pairs object.
destroy
Frees memory allocated for the name/value pairs object.
The name- and value strings of a pair are also freed, if the NVPAIRS_FLAG_DOFREE flag is set for this pair.
Signature:
void nvpairs::destroy(nvPairs *nvp)
Parameters:
| nvPairs * | nvp | [IN/OUT] | A name/value pairs object. |
set
Signature:
int nvpairs::set(nvPairs *nvp,const char *name,const char *value)
Parameters:
| nvPairs * | nvp | [IN/OUT] | A name/value pairs object. |
| const char * | name | | The name of the name/value pair. |
| const char * | value | | The value of the name/value pair. |
set2
Signature:
int nvpairs::set2(nvPairs *nvp,const char *name,const char *value,uint8_t flags)
Parameters:
| nvPairs * | nvp | [IN/OUT] | A name/value pairs object. |
| const char * | name | | The name of the name/value pair. |
| const char * | value | | The value of the name/value pair. |
| uint8_t | flags | | The flags of the name/value pair. |
update_flags
Signature:
int nvpairs::update_flags(nvPairs *nvp,const char *name,uint8_t flags)
Parameters:
| nvPairs * | nvp | [IN/OUT] | A name/value pairs object. |
| const char * | name | | The name of the name/value pair. |
| uint8_t | flags | | The flags of the name/value pair. |
add
Signature:
int nvpairs::add(nvPairs *nvp,const char *name,const char *value,uint8_t flags)
Parameters:
| nvPairs * | nvp | [IN/OUT] | A name/value pairs object. |
| const char * | name | | The name of the name/value pair. |
| const char * | value | | The value of the name/value pair. |
| uint8_t | flags | | The flags of the name/value pair. |
get
Signature:
const char *nvpairs::get(nvPairs *nvp,const char *name)
Parameters:
| nvPairs * | nvp | [IN/OUT] | A name/value pairs object. |
| const char * | name | | The name of the name/value pair. |
Return value:The value of the name/value pair.
get2
Signature:
const char *nvpairs::get2(nvPairs *nvp,const char *name,const char *def)
Parameters:
| nvPairs * | nvp | [IN/OUT] | A name/value pairs object. |
| const char * | name | | The name of the name/value pair. |
| const char * | def | | The default value. |
Return value:The value of the name/value pair.
get_copy
Signature:
char *nvpairs::get_copy(nvPairs *nvp,const char *name)
Parameters:
| nvPairs * | nvp | [IN/OUT] | A name/value pairs object. |
| const char * | name | | The name of the name/value pair. |
Return value:The value of the name/value pair.
get_copy2
Signature:
char *nvpairs::get_copy2(nvPairs *nvp,const char *name,const char *def)
Parameters:
| nvPairs * | nvp | [IN/OUT] | A name/value pairs object. |
| const char * | name | | The name of the name/value pair. |
| const char * | def | | The default value. |
Return value:The value of the name/value pair.
get_flags
Signature:
uint8_t nvpairs::get_flags(nvPairs *nvp,const char *name)
Parameters:
| nvPairs * | nvp | [IN/OUT] | A name/value pairs object. |
| const char * | name | | The name of the name/value pair. |
Return value:The flags of the name/value pair.
exists
Signature:
bool nvpairs::exists(nvPairs *nvp,const char *name)
Parameters:
| nvPairs * | nvp | [IN/OUT] | A name/value pairs object. |
| const char * | name | | The name of the name/value pair. |
remove
Signature:
bool nvpairs::remove(nvPairs *nvp,const char *name)
Parameters:
| nvPairs * | nvp | [IN/OUT] | A name/value pairs object. |
| const char * | name | | The name of the name/value pair. |
count
Signature:
uint32_t nvpairs::count(nvPairs *nvp)
Parameters:
| nvPairs * | nvp | [IN/OUT] | A name/value pairs object. |
memsize
Signature:
uint32_t nvpairs::memsize(nvPairs *nvp)
Parameters:
| nvPairs * | nvp | [IN/OUT] | A name/value pairs object. |
concat_length
Signature:
uint64_t nvpairs::concat_length(nvPairs *nvp)
Parameters:
| nvPairs * | nvp | [IN/OUT] | A name/value pairs object. |
load
Signature:
nvPairs *nvpairs::load(const char *filename)
Parameters:
| const char * | filename | | The null-terminated filename (or path). |
Return value:A name/value pairs object.
save
Signature:
int nvpairs::save(nvPairs *nvp,const char *filename)
Parameters:
| nvPairs * | nvp | [IN/OUT] | A name/value pairs object. |
| const char * | filename | | The null-terminated filename (or path). |
read
This is not jet implemented!
Signature:
nvPairs *nvpairs::read(FILE *f)
Parameters:
| FILE * | f | | A file handle of a opened file. |
Return value:A name/value pairs object.
write
Signature:
int nvpairs::write(nvPairs *nvp,FILE *f)
Parameters:
| nvPairs * | nvp | [IN/OUT] | A name/value pairs object. |
| FILE * | f | | A file handle of a opened file. |
load_csv
Signature:
nvPairs *nvpairs::load_csv(const char *filename)
Parameters:
| const char * | filename | | The null-terminated filename (or path). |
Return value:A name/value pairs object.
save_csv
Signature:
int nvpairs::save_csv(nvPairs *nvp,const char *filename)
Parameters:
| nvPairs * | nvp | [IN/OUT] | A name/value pairs object. |
| const char * | filename | | The null-terminated filename (or path). |
read_csv
Signature:
nvPairs *nvpairs::read_csv(FILE *f)
Parameters:
| FILE * | f | | A file handle of a opened file. |
Return value:A name/value pairs object.
write_csv
Signature:
int nvpairs::write_csv(nvPairs *nvp,FILE *f)
Parameters:
| nvPairs * | nvp | [IN/OUT] | A name/value pairs object. |
| FILE * | f | | A file handle of a opened file. |
write_attributes
Signature:
uint64_t nvpairs::write_attributes(nvPairs *nvp,FILE *f)
Parameters:
| nvPairs * | nvp | [IN/OUT] | A name/value pairs object. |
| FILE * | f | | A file handle of a opened file. |
Return value:Number of characters written.
write_styledef
Signature:
uint64_t nvpairs::write_styledef(nvPairs *nvp,FILE *f)
Parameters:
| nvPairs * | nvp | [IN/OUT] | A name/value pairs object. |
| FILE * | f | | A file handle of a opened file. |
Return value:Number of characters written.
sort
This is not jet implemented!
Signature:
void nvpairs::sort(nvPairs *nvp)
Parameters:
| nvPairs * | nvp | [IN/OUT] | A name/value pairs object. |
bset_union
This is not jet implemented!
Signature:
nvPairs *nvpairs::bset_union(nvPairs *A,nvPairs *B)
Parameters:
| nvPairs * | A | | A name/value pairs object. |
| nvPairs * | B | | A name/value pairs object. |
Return value:A name/value pairs object.
bset_intersection
This is not jet implemented!
Signature:
nvPairs *nvpairs::bset_intersection(nvPairs *A,nvPairs *B)
Parameters:
| nvPairs * | A | | A name/value pairs object. |
| nvPairs * | B | | A name/value pairs object. |
Return value:A name/value pairs object.
bset_symdiff
This is not jet implemented!
Signature:
nvPairs *nvpairs::bset_symdiff(nvPairs *A,nvPairs *B)
Parameters:
| nvPairs * | A | | A name/value pairs object. |
| nvPairs * | B | | A name/value pairs object. |
Return value:A name/value pairs object.
bset_minus
This is not jet implemented!
Signature:
nvPairs *nvpairs::bset_minus(nvPairs *A,nvPairs *B)
Parameters:
| nvPairs * | A | | A name/value pairs object. |
| nvPairs * | B | | A name/value pairs object. |
Return value:A name/value pairs object.
check
This is not jet implemented!
Signature:
uint32_t nvpairs::check(nvPairs *nvp,uint32_t flags)
Parameters:
| nvPairs * | nvp | [IN/OUT] | A name/value pairs object. |
| uint32_t | flags | | ... |
copy
This is not jet implemented!
Signature:
nvPairs *nvpairs::copy(nvPairs *A,uint8_t flags)
Parameters:
| nvPairs * | A | | A name/value pairs object. |
| uint8_t | flags | | The flags of the name/value pair. |
Return value:A name/value pairs object.
mem_expand
Signature:
uint32_t nvpairs::mem_expand(nvPairs *nvp,uint32_t req_space)
Parameters:
| nvPairs * | nvp | [IN/OUT] | A name/value pairs object. |
| uint32_t | req_space | | ... |
mem_realloc
Expands the size of the container to be able to hold at least
req_size name/value pairs.
The allocated size may be larger than requested. The return value tells the size of the container.
If
req_size is smaller as the current size, the container may also be reduced in size. The function will always keep the container large enough to hold the currently stored name/value pairs.
Signature:
uint32_t nvpairs::mem_realloc(nvPairs *nvp,uint32_t req_size)
Parameters:
| nvPairs * | nvp | [IN/OUT] | A name/value pairs object. |
| uint32_t | req_size | | ... |
Return value:Returns the new size of the container.
mem_fitmin
Signature:
uint32_t nvpairs::mem_fitmin(nvPairs *nvp)
Parameters:
| nvPairs * | nvp | [IN/OUT] | A name/value pairs object. |