9#ifndef nsgenbind_webidl_ast_h
10#define nsgenbind_webidl_ast_h
struct webidl_node * node
enum webidl_node_type type
int() webidl_callback_t(struct webidl_node *node, void *ctx)
struct webidl_node * webidl_node_getnode(struct webidl_node *node)
@ WEBIDL_TYPE_SPECIAL_CREATOR
@ WEBIDL_TYPE_SPECIAL_SETTER
@ WEBIDL_TYPE_SPECIAL_DELETER
@ WEBIDL_TYPE_SPECIAL_GETTER
@ WEBIDL_TYPE_SPECIAL_LEGACYCALLER
int webidl_node_enumerate_type(struct webidl_node *node, enum webidl_node_type type)
struct webidl_node * webidl_node_find_type_ident(struct webidl_node *root_node, enum webidl_node_type type, const char *ident)
int webidl_cmp_node_type(struct webidl_node *node, void *ctx)
struct webidl_node * webidl_node_append(struct webidl_node *list, struct webidl_node *node)
struct webidl_node * webidl_node_add(struct webidl_node *node, struct webidl_node *list)
struct webidl_node * webidl_new_number_node(enum webidl_node_type type, struct webidl_node *l, int number)
char * webidl_node_gettext(struct webidl_node *node)
@ WEBIDL_NODE_TYPE_TYPE_ARRAY
@ WEBIDL_NODE_TYPE_LITERAL_STRING
@ WEBIDL_NODE_TYPE_DICTIONARY
@ WEBIDL_NODE_TYPE_TYPE_BASE
@ WEBIDL_NODE_TYPE_LITERAL_NULL
@ WEBIDL_NODE_TYPE_OPERATION
@ WEBIDL_NODE_TYPE_INTERFACE
@ WEBIDL_NODE_TYPE_EXTENDED_ATTRIBUTE
@ WEBIDL_NODE_TYPE_SPECIAL
@ WEBIDL_NODE_TYPE_TYPE_NULLABLE
@ WEBIDL_NODE_TYPE_INHERITANCE
@ WEBIDL_NODE_TYPE_ATTRIBUTE
@ WEBIDL_NODE_TYPE_MODIFIER
@ WEBIDL_NODE_TYPE_OPTIONAL
@ WEBIDL_NODE_TYPE_LITERAL_BOOL
@ WEBIDL_NODE_TYPE_ARGUMENT
@ WEBIDL_NODE_TYPE_ELLIPSIS
@ WEBIDL_NODE_TYPE_LITERAL_INT
@ WEBIDL_NODE_TYPE_INTERFACE_IMPLEMENTS
@ WEBIDL_NODE_TYPE_LITERAL_FLOAT
struct webidl_node * webidl_node_find(struct webidl_node *node, struct webidl_node *prev, webidl_callback_t *cb, void *ctx)
@ WEBIDL_TYPE_MODIFIER_INHERIT
@ WEBIDL_TYPE_MODIFIER_UNSIGNED
@ WEBIDL_TYPE_MODIFIER_NONE
@ WEBIDL_TYPE_MODIFIER_STATIC
@ WEBIDL_TYPE_MODIFIER_UNRESTRICTED
@ WEBIDL_TYPE_MODIFIER_READONLY
int webidl_dump_ast(struct webidl_node *node)
int webidl_node_for_each_type(struct webidl_node *node, enum webidl_node_type type, webidl_callback_t *cb, void *ctx)
const char * webidl_type_to_str(enum webidl_type_modifier m, enum webidl_type t)
struct webidl_node * webidl_node_prepend(struct webidl_node *list, struct webidl_node *node)
int * webidl_node_getint(struct webidl_node *node)
int webidl_parsefile(char *filename, struct webidl_node **webidl_ast)
float * webidl_node_getfloat(struct webidl_node *node)
enum webidl_node_type webidl_node_gettype(struct webidl_node *node)
int webidl_intercalate_implements(struct webidl_node *node)
struct webidl_node * webidl_node_new(enum webidl_node_type, struct webidl_node *l, void *r)
int webidl_fprintf(FILE *stream, const char *format,...)
struct webidl_node * webidl_node_find_type(struct webidl_node *node, struct webidl_node *prev, enum webidl_node_type type)