ruzne funkce: prace s binarnimi vyhledavacimi stromy prace s tokeny + dalsi |
Modifikátor | Jméno | Parametry | Dokumentace |
char * | b_strncpy | (char *dest,const char *source, size_t count) | jako strncpy, ale posledni znak vzdy nastavi na NULL |
int | chkerror | (char *action,int retcode) | pokud retcode je -1, vypise perror s parametrem action a ukonci program typicke pouziti: chkerror("popis chyby",syscall_co_vraci_-1_pri_chybe(...)); |
int | empty | (const char *a) | vrati 1 pokud je retezec NULL nebo prazdny |
int | eq | (const char *a,const char *b) | vrati 1 pokud se retezce rovnaji |
int | eqi | (const char *a,const char *b) | vrati 1 pokud se retezce rovnaji (case insensitive) |
void | fatal | (char *s) | vyskoci s chybovou hlaskou. Dobre k debugovani |
void | fatalf | (char *fmt,...) | jako fatal(), ale s formatovanym retezcem jako u printf |
void | freetoken | (text_token *t) | uvolni token z pameti, vcetne jeho vnitrku, tedy dat, ze kterych byl token vytvoren |
int | fsize | (const char *f) | vrati velikost souboru |
int | loadfile | (void **out,const char *name) | nahraje soubor do pameti, vrati velikost |
void * | malloc0 | (size_t t) | naalokuje pamet. Pamet je vyplnena nulama |
void * | malloc1 | (size_t t) | naalokuje pamet. Selhani neni povoleno (pri nedostatku pameti program konci s chybovou hlaskou) |
int | str_beginwithi | (const char *s1,const char *s2) | vrati 1 pokud retezec s2 zacina retezcem s1 (case insensitive), jinak 0 |
void | str_free | (char *s) | odalokace retezce s kontrolou na NULL pointery |
text_token | token_create | (void *source,int size) | vytvori z danych dat parsovatelny token |
int | token_loadbinary | (text_token *t,void *i,int s) | nacte z tokenu kus binarnich dat |
int | token_readchar | (text_token *t,char c) | nacte znak z tokenu a odstrani ho. Vraci 1 pri uspechu, 0 pri chybe (je tam jiny znak, nebo tam neni zadny) |
int | token_readfloat | (text_token *t,double *f) | nacte z tokenu jeden float |
int | token_readint | (text_token *t,int *f) | nacte z tokenu jeden integer |
int | token_readkv_sep | (text_token *t,char **key,char **value,char separator) | ze zacatku tokenu nacte a odstrani zaznam ve formatu key=value. Misto = lze pouzit i jiny separator POZOR! dealokovat se musi jenom key, nikdy ne value, nebot to je jeden buffer |
char * | token_readline | (text_token *t) | nacte z tokenu jednu neprazdnou radku |
char * | token_readqstring | (text_token *t) | nacte retezec v uvozovkach z tokenu |
char * | token_readstring | (text_token *t) | nacte retezec z tokenu (znaky az do prvni whitespace nebo konce radky) |
void | token_remove_rest_of_line | (text_token *t) | preskoci vse v tokenu az do konce radky |
void | token_skip_trash | (text_token *t) | preskoci vsechny whitespacy a pokud narazi na komentar, tak i ten |
void | tree_add | (tree **t,const char *name,void *val1) | prida do stromu polozku se jmenem name a hodnovou val1, pokud je jiz obsazena, neprida nic (a pokud je zapnuty debug tak rovnou fatalne spadne) |
int | tree_count | (tree *t) | vrati pocet prvku stromu |
int | tree_del | (tree **t,const char *name) | odstrani ze stormu polozku name 1 - polozka byla odstranena 0 - polozka tam nebyla |
void * | tree_delv | (tree **t,const char *name) | odstrani ze stormu polozku name a vrati ji (nebo NULL, pokud tam neni) 1 - polozka byla odstranena 0 - polozka tam nebyla |
tree * | tree_dup | (const tree *t) | zduplikuje dany strom - vytvori novou kopii |
const tree * | tree_element | (const tree *t,int i) | vytahne ze stromu ukazatel na list s prvek s cislem i (i je mezi 0 a (poctem prvku ve stromu -1) Da se pouzit napr. pro prochazeni cleeho stropu, ackoliv tree_foreach / tree_foreach_p muze byt vhodnejsi Pokud nastane chyba nebo je prvek mimo rozsah, vrati NULL |
void | tree_foreach | (tree *t,tree_func *f) | zavola funkci na kazdy prvek stromu |
void | tree_foreach_p | (tree *t,tree_func_p *f,void *param) | zavola funkci na kazdy prvek stromu (s extra parametrem) |
void | tree_free | (tree *t) | odalokuje strom z pameti |
void * | tree_search | (const tree *t,const char *name) | prohleda strom jestli obsahuje polozku name a vrati ji, pokud neobsahuje, vraci 0 |