summaryrefslogtreecommitdiff
path: root/src/jsapi-libdom.c
diff options
context:
space:
mode:
authorVincent Sanders <vince@kyllikki.org>2014-01-09 18:29:29 +0000
committerVincent Sanders <vince@kyllikki.org>2014-05-16 14:38:57 +0100
commit6031dd6e55216bd4d9a78c4869bb8b5e5f5aa3c3 (patch)
tree8776dc38c637434bae6ff1739ab6f6e774604c7f /src/jsapi-libdom.c
parent74158664a1826e5763e7c6949a915c75c8c1a23d (diff)
downloadnsgenbind-6031dd6e55216bd4d9a78c4869bb8b5e5f5aa3c3.tar.gz
nsgenbind-6031dd6e55216bd4d9a78c4869bb8b5e5f5aa3c3.tar.bz2
Expand implements statements in the AST after it has been built
This greatly simplifies output generation because instead of dealing with implements on every traverse they are expanded once. Additionaly errors in expansion are found and generate error early.
Diffstat (limited to 'src/jsapi-libdom.c')
-rw-r--r--src/jsapi-libdom.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/jsapi-libdom.c b/src/jsapi-libdom.c
index 1bb6d28..5e994b9 100644
--- a/src/jsapi-libdom.c
+++ b/src/jsapi-libdom.c
@@ -47,6 +47,10 @@ read_webidl(struct genbind_node *genbind_ast, struct webidl_node **webidl_ast)
webidl_file_cb,
webidl_ast);
+ if (res == 0) {
+ res = webidl_intercalate_implements(*webidl_ast);
+ }
+
/* debug dump of web idl AST */
if (options->verbose) {
webidl_ast_dump(*webidl_ast, 0);