|
nsgenbind
|
Go to the source code of this file.
Typedefs | |
| typedef int() | genbind_callback_t(struct genbind_node *node, void *ctx) |
| typedef int() genbind_callback_t(struct genbind_node *node, void *ctx) |
callback for search and iteration routines
Definition at line 62 of file nsgenbind-ast.h.
| enum genbind_method_type |
Definition at line 46 of file nsgenbind-ast.h.
| enum genbind_node_type |
Definition at line 12 of file nsgenbind-ast.h.
| Enumerator | |
|---|---|
| GENBIND_TYPE_NONE | |
| GENBIND_TYPE_TYPE | identifies a type handler |
| GENBIND_TYPE_UNSHARED | unshared item |
| GENBIND_TYPE_TYPE_UNSHARED | identifies a unshared type handler |
Definition at line 38 of file nsgenbind-ast.h.
| int genbind_cmp_node_type | ( | struct genbind_node * | node, |
| void * | ctx | ||
| ) |
Definition at line 341 of file nsgenbind-ast.c.
| int genbind_dump_ast | ( | struct genbind_node * | node | ) |
Dump the binding AST to file
If the debug flag has been set this causes the binding AST to be written to a binding-ast output file
| node | Node of the tree to start dumping from (usually tree root) |
Definition at line 496 of file nsgenbind-ast.c.
| int genbind_fprintf | ( | FILE * | stream, |
| const char * | format, | ||
| ... | |||
| ) |
Definition at line 621 of file nsgenbind-ast.c.
| struct genbind_node * genbind_new_node | ( | enum genbind_node_type | type, |
| struct genbind_node * | l, | ||
| void * | r | ||
| ) |
create a new node with value from pointer
Definition at line 125 of file nsgenbind-ast.c.
| struct genbind_node * genbind_new_number_node | ( | enum genbind_node_type | type, |
| struct genbind_node * | l, | ||
| int | number | ||
| ) |
create a new number node
Create a node with of number type
Definition at line 136 of file nsgenbind-ast.c.
| struct genbind_node * genbind_node_add | ( | struct genbind_node * | node, |
| struct genbind_node * | list | ||
| ) |
Definition at line 73 of file nsgenbind-ast.c.
| int genbind_node_enumerate_type | ( | struct genbind_node * | node, |
| enum genbind_node_type | type | ||
| ) |
count how many nodes of a specified type.
Enumerate how many nodes of the specified type there are by performing a depth first search for nodes of the given type and counting the number of results.
| node | The node to start the search from |
| nodetype | The type of node to count |
Definition at line 183 of file nsgenbind-ast.c.
| struct genbind_node * genbind_node_find | ( | struct genbind_node * | node, |
| struct genbind_node * | prev, | ||
| genbind_callback_t * | cb, | ||
| void * | ctx | ||
| ) |
Depth first left hand search using user provided comparison
| node | The node to start the search from |
| prev | The node at which to stop the search, either NULL to search the full tree depth (initial search) or the result of a previous search to continue. |
| cb | Comparison callback |
| ctx | Context for callback |
Definition at line 196 of file nsgenbind-ast.c.
| struct genbind_node * genbind_node_find_method | ( | struct genbind_node * | node, |
| struct genbind_node * | prev, | ||
| enum genbind_method_type | methodtype | ||
| ) |
Find a method node of a given method type
| node | A node of type GENBIND_NODE_TYPE_CLASS to search for methods. |
| prev | The node at which to stop the search, either NULL to search the full tree depth (initial search) or the result of a previous search to continue. |
| methodtype | The type of method to find. |
Definition at line 279 of file nsgenbind-ast.c.
| struct genbind_node * genbind_node_find_method_ident | ( | struct genbind_node * | node, |
| struct genbind_node * | prev, | ||
| enum genbind_method_type | methodtype, | ||
| const char * | ident | ||
| ) |
Find a method node of a given method type and identifier
| node | A node of type GENBIND_NODE_TYPE_CLASS to search for methods. |
| prev | The node at which to stop the search, either NULL to search the full tree depth (initial search) or the result of a previous search to continue. |
| methodtype | The type of method to find. |
| ident | The identifier to search for |
Definition at line 312 of file nsgenbind-ast.c.
| struct genbind_node * genbind_node_find_type | ( | struct genbind_node * | node, |
| struct genbind_node * | prev, | ||
| enum genbind_node_type | nodetype | ||
| ) |
Depth first left hand search returning nodes of the specified type
| node | The node to start the search from |
| prev | The node at which to stop the search, either NULL to search the full tree depth (initial search) or the result of a previous search to continue. |
| nodetype | The type of node to seach for |
Definition at line 223 of file nsgenbind-ast.c.
| struct genbind_node * genbind_node_find_type_ident | ( | struct genbind_node * | node, |
| struct genbind_node * | prev, | ||
| enum genbind_node_type | nodetype, | ||
| const char * | ident | ||
| ) |
Depth first left hand search returning nodes of the specified type with an ident child node with matching text
| node | The node to start the search from |
| prev | The node at which to stop the search, either NULL to search the full tree depth (initial search) or the result of a previous search to continue. |
| nodetype | The type of node to seach for |
| ident | The text to match the ident child node to |
Definition at line 235 of file nsgenbind-ast.c.
| int genbind_node_foreach_type | ( | struct genbind_node * | node, |
| enum genbind_node_type | type, | ||
| genbind_callback_t * | cb, | ||
| void * | ctx | ||
| ) |
Iterate all nodes of a certian type from a node with a callback.
Depth first search for nodes of the given type calling the callback with context.
| node | The node to start the search from. |
Definition at line 151 of file nsgenbind-ast.c.
| int * genbind_node_getint | ( | struct genbind_node * | node | ) |
get a nodes integer value
| node | The nodes to get integer from |
Definition at line 389 of file nsgenbind-ast.c.
| struct genbind_node * genbind_node_getnode | ( | struct genbind_node * | node | ) |
get a nodes node list content
| node | The nodes to get node list from |
Definition at line 367 of file nsgenbind-ast.c.
| char * genbind_node_gettext | ( | struct genbind_node * | node | ) |
get a nodes text content
| node | The nodes to get text from |
Definition at line 348 of file nsgenbind-ast.c.
| struct genbind_node * genbind_node_link | ( | struct genbind_node * | tgt, |
| struct genbind_node * | src | ||
| ) |
Definition at line 117 of file nsgenbind-ast.c.
| struct genbind_node * genbind_node_prepend | ( | struct genbind_node * | list, |
| struct genbind_node * | inst | ||
| ) |
Definition at line 48 of file nsgenbind-ast.c.
| int genbind_parsefile | ( | char * | infilename, |
| struct genbind_node ** | ast | ||
| ) |
Definition at line 584 of file nsgenbind-ast.c.
| char * genbind_strapp | ( | char * | a, |
| char * | b | ||
| ) |
Definition at line 104 of file nsgenbind-ast.c.
| FILE * genbindopen | ( | const char * | filename | ) |
Definition at line 517 of file nsgenbind-ast.c.