summaryrefslogtreecommitdiff
path: root/src/webidl-ast.h
diff options
context:
space:
mode:
authorVincent Sanders <vincent.sanders@collabora.co.uk>2012-09-20 18:42:58 +0100
committerVincent Sanders <vincent.sanders@collabora.co.uk>2012-09-20 18:42:58 +0100
commit2133ce26a2ec07fb37a5f4cc6cab5326fdf49546 (patch)
tree00c0931ae171de9852b229874b3ec6f0df5af9de /src/webidl-ast.h
parent94259becfc4441d9061c6f34f3e801dda834d01d (diff)
downloadnsgenbind-2133ce26a2ec07fb37a5f4cc6cab5326fdf49546.tar.gz
nsgenbind-2133ce26a2ec07fb37a5f4cc6cab5326fdf49546.tar.bz2
add property and function array generation
Diffstat (limited to 'src/webidl-ast.h')
-rw-r--r--src/webidl-ast.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/webidl-ast.h b/src/webidl-ast.h
index 8af3aeb..682bb27 100644
--- a/src/webidl-ast.h
+++ b/src/webidl-ast.h
@@ -31,6 +31,7 @@ struct webidl_node {
/** callback for search and iteration routines */
typedef int (webidl_callback_t)(struct webidl_node *node, void *ctx);
+int webidl_cmp_node_type(struct webidl_node *node, void *ctx);
struct webidl_node *webidl_node_new(enum webidl_node_type, struct webidl_node *l, void *r);
@@ -47,6 +48,18 @@ int webidl_node_for_each_type(struct webidl_node *node,
webidl_callback_t *cb,
void *ctx);
+struct webidl_node *
+webidl_node_find(struct webidl_node *node,
+ struct webidl_node *prev,
+ webidl_callback_t *cb,
+ void *ctx);
+
+struct webidl_node *
+webidl_node_find_type_ident(struct webidl_node *root_node,
+ enum webidl_node_type type,
+ const char *ident);
+
+
/* debug dump */
int webidl_ast_dump(struct webidl_node *node, int indent);