IDZEBRA
2.2.7
|
#include <stdio.h>
#include <assert.h>
#include <stdlib.h>
#include <string.h>
#include <yaz/log.h>
#include <yaz/oid_db.h>
#include <yaz/snprintf.h>
#include <idzebra/data1.h>
#include <idzebra/recctrl.h>
#include <zebra_xpath.h>
#include <d1_absyn.h>
Go to the source code of this file.
Data Structures | |
struct | data1_hash_table |
struct | data1_hash_entry |
struct | data1_systag |
struct | data1_absyn_cache_info |
struct | data1_attset_cache_info |
Macros | |
#define | D1_MAX_NESTING 128 |
#define | DATA1_GETELEMENTBYTAGNAME_VERSION 1 |
#define | l_isspace(c) ((c) == '\t' || (c) == ' ' || (c) == '\n' || (c) == '\r') |
#define D1_MAX_NESTING 128 |
Definition at line 36 of file d1_absyn.c.
#define DATA1_GETELEMENTBYTAGNAME_VERSION 1 |
Definition at line 310 of file d1_absyn.c.
#define l_isspace | ( | c | ) | ((c) == '\t' || (c) == ' ' || (c) == '\n' || (c) == '\r') |
Definition at line 620 of file d1_absyn.c.
|
static |
Definition at line 214 of file d1_absyn.c.
References data1_absyn_cache_info::absyn, data1_absyn_cache_get(), data1_nmem_get(), data1_read_absyn(), data1_absyn_cache_info::name, and data1_absyn_cache_info::next.
Referenced by data1_get_absyn().
void data1_absyn_destroy | ( | data1_handle | dh | ) |
Definition at line 177 of file d1_absyn.c.
References data1_absyn_cache_info::absyn, data1_absyn_cache_get(), data1_xpelement::dfa, dfa_delete(), data1_absyn_cache_info::next, data1_xpelement::next, data1_absyn::xp_elements, and data1_xpelement::xpath_expr.
Referenced by data1_destroy().
data1_element* data1_absyn_getelements | ( | data1_handle | dh, |
data1_node * | root | ||
) |
Definition at line 668 of file d1_absyn.c.
References data1_node::root, and data1_node::u.
Referenced by grs_read_marc(), and grs_read_marcxml().
data1_marctab* data1_absyn_getmarctab | ( | data1_handle | dh, |
data1_node * | root | ||
) |
Definition at line 661 of file d1_absyn.c.
References data1_node::root, and data1_node::u.
Referenced by grs_read_iso2709(), and parse_data1_tree().
data1_absyn* data1_absyn_search | ( | data1_handle | dh, |
const char * | name | ||
) |
Definition at line 160 of file d1_absyn.c.
References data1_absyn_cache_info::absyn, data1_absyn_cache_get(), data1_absyn_cache_info::name, and data1_absyn_cache_info::next.
Referenced by data1_get_absyn().
void data1_absyn_trav | ( | data1_handle | dh, |
void * | handle, | ||
void(*)(data1_handle dh, void *h, data1_absyn *a) | fh | ||
) |
Definition at line 199 of file d1_absyn.c.
References data1_absyn_cache_info::absyn, data1_absyn_cache_get(), and data1_absyn_cache_info::next.
data1_attset* data1_attset_add | ( | data1_handle | dh, |
const char * | name | ||
) |
Definition at line 267 of file d1_absyn.c.
References data1_attset_cache_info::attset, data1_attset_cache_get(), data1_nmem_get(), data1_read_attset(), data1_attset_cache_info::name, data1_attset::name, and data1_attset_cache_info::next.
Referenced by data1_get_attset().
data1_attset* data1_attset_search_id | ( | data1_handle | dh, |
const Odr_oid * | oid | ||
) |
Definition at line 254 of file d1_absyn.c.
References data1_attset_cache_info::attset, data1_attset_cache_get(), data1_attset_cache_info::next, and data1_attset::oid.
Referenced by att_getentbyatt(), and zebraExplain_writeAttributeSet().
data1_attset* data1_attset_search_name | ( | data1_handle | dh, |
const char * | name | ||
) |
Definition at line 241 of file d1_absyn.c.
References data1_attset_cache_info::attset, data1_attset_cache_get(), data1_attset_cache_info::name, and data1_attset_cache_info::next.
Referenced by data1_get_attset().
data1_absyn* data1_get_absyn | ( | data1_handle | dh, |
const char * | name, | ||
enum DATA1_XPATH_INDEXING | en | ||
) |
Definition at line 231 of file d1_absyn.c.
References data1_absyn_add(), and data1_absyn_search().
Referenced by data1_map_record(), data1_mk_root(), data1_set_root(), and zebraExplain_open().
data1_attset* data1_get_attset | ( | data1_handle | dh, |
const char * | name | ||
) |
Definition at line 289 of file d1_absyn.c.
References data1_attset_add(), and data1_attset_search_name().
Referenced by att_loadset(), data1_read_absyn(), and data1_read_attset().
data1_element* data1_getelementbyname | ( | data1_handle | dh, |
data1_absyn * | absyn, | ||
const char * | name | ||
) |
Definition at line 361 of file d1_absyn.c.
References data1_matchstr, data1_absyn::main_elements, data1_element::name, and data1_element::next.
data1_element* data1_getelementbytagname | ( | data1_handle | dh, |
data1_absyn * | abs, | ||
data1_element * | parent, | ||
const char * | tagname | ||
) |
Definition at line 312 of file d1_absyn.c.
References data1_element::children, data1_hash_insert(), data1_hash_lookup(), data1_hash_open(), data1_matchstr, data1_nmem_get(), data1_element::hash, data1_absyn::main_elements, data1_name::name, data1_tag::names, data1_name::next, data1_element::next, and data1_element::tag.
Referenced by data1_add_insert_taggeddata(), and data1_mk_tag_n().
data1_esetname* data1_getesetbyname | ( | data1_handle | dh, |
data1_absyn * | a, | ||
const char * | name | ||
) |
Definition at line 298 of file d1_absyn.c.
References data1_matchstr, data1_absyn::esetnames, data1_esetname::name, and data1_esetname::next.
Referenced by process_comp().
unsigned data1_hash_calc | ( | struct data1_hash_table * | ht, |
const char * | str | ||
) |
Definition at line 50 of file d1_absyn.c.
References data1_hash_table::size, and data1_hash_entry::str.
Referenced by data1_hash_insert(), and data1_hash_lookup().
void data1_hash_insert | ( | struct data1_hash_table * | ht, |
const char * | str, | ||
void * | clientData, | ||
int | copy | ||
) |
Definition at line 81 of file d1_absyn.c.
References data1_hash_table::ar, data1_hash_entry::clientData, data1_hash_calc(), data1_hash_entry::next, data1_hash_table::nmem, data1_hash_table::size, and data1_hash_entry::str.
Referenced by data1_getelementbytagname().
void* data1_hash_lookup | ( | struct data1_hash_table * | ht, |
const char * | str | ||
) |
Definition at line 117 of file d1_absyn.c.
References data1_hash_table::ar, data1_hash_entry::clientData, data1_hash_calc(), data1_hash_entry::next, and data1_hash_entry::str.
Referenced by data1_getelementbytagname().
struct data1_hash_table* data1_hash_open | ( | int | size, |
NMEM | nmem | ||
) |
Definition at line 67 of file d1_absyn.c.
References data1_hash_table::ar, data1_hash_table::nmem, and data1_hash_table::size.
Referenced by data1_getelementbytagname().
data1_element* data1_mk_element | ( | data1_handle | dh | ) |
Definition at line 148 of file d1_absyn.c.
References data1_element::children, data1_nmem_get(), data1_element::hash, data1_element::name, data1_element::next, data1_element::sub_name, data1_element::tag, and data1_element::termlists.
Referenced by data1_read_absyn().
|
static |
Definition at line 676 of file d1_absyn.c.
References data1_attset_child::child, data1_attset::children, data1_element::children, D1_MAX_NESTING, data1_empty_attset(), data1_get_attset(), data1_gettagbynum(), data1_mk_element(), data1_nmem_get(), data1_path_fopen(), data1_read_espec1(), data1_read_maptab(), data1_read_marctab(), data1_read_tagset(), data1_read_varset(), DATA1_XPATH_INDEXING_DISABLE, DATA1_XPATH_INDEXING_ENABLE, DATA1K_string, DATA1T_string, dfa_delete(), dfa_init(), dfa_mkstate(), dfa_parse(), data1_sub_elements::elements, data1_absyn::encoding, data1_absyn::esetnames, fix_element_ref(), data1_tag::kind, data1_absyn::main_elements, data1_absyn::maptabs, data1_absyn::marc, data1_xpelement::match_next, melm2xpath(), mk_xpath_regexp(), data1_systag::name, data1_absyn::name, data1_name::name, data1_esetname::name, data1_element::name, data1_sub_elements::name, data1_tag::names, data1_systag::next, data1_xpelement::next, data1_attset_child::next, data1_attset::next, data1_maptab::next, data1_name::next, data1_marctab::next, data1_esetname::next, data1_tag::next, data1_tagset::next, data1_element::next, data1_sub_elements::next, data1_absyn::oid, parse_termlists(), read_absyn_line(), data1_xpelement::regexp, data1_tag::string, data1_absyn::sub_elements, data1_element::sub_name, data1_absyn::systags, data1_element::tag, data1_absyn::tagset, data1_tag::tagset, data1_element::termlists, data1_systag::value, data1_tag::value, data1_absyn::varset, data1_tag::which, data1_absyn::xp_elements, data1_absyn::xpath_indexing, XPATH_STEP_COUNT, and zebra_parse_xpath_str().
Referenced by data1_absyn_add().
const char* data1_systag_lookup | ( | data1_absyn * | absyn, |
const char * | tag, | ||
const char * | default_value | ||
) |
Definition at line 610 of file d1_absyn.c.
References data1_systag::name, data1_systag::next, data1_absyn::systags, and data1_systag::value.
Referenced by zebra_grs_retrieve().
void fix_element_ref | ( | data1_handle | dh, |
data1_absyn * | absyn, | ||
data1_element * | e | ||
) |
Definition at line 376 of file d1_absyn.c.
References data1_element::children, data1_sub_elements::elements, data1_sub_elements::name, data1_element::next, data1_sub_elements::next, data1_absyn::sub_elements, and data1_element::sub_name.
Referenced by data1_read_absyn().
|
static |
Definition at line 586 of file d1_absyn.c.
Referenced by data1_read_absyn().
|
static |
Definition at line 423 of file d1_absyn.c.
References data1_nmem_get().
Referenced by data1_read_absyn().
|
static |
Definition at line 493 of file d1_absyn.c.
References data1_getattbyname(), data1_nmem_get(), data1_termlist::next, and ZEBRA_XPATH_CDATA.
Referenced by data1_read_absyn().
int read_absyn_line | ( | FILE * | f, |
int * | lineno, | ||
char * | line, | ||
int | len, | ||
char * | argv[], | ||
int | num | ||
) |