diff options
author | Vincent Sanders <vince@kyllikki.org> | 2015-11-05 23:56:35 +0000 |
---|---|---|
committer | Vincent Sanders <vince@kyllikki.org> | 2015-11-05 23:56:35 +0000 |
commit | e87ed9a82296b8481b0d867e41bbfb65ea5fae9f (patch) | |
tree | 03f8cdfb6fbb6145aa14354ce919c04caa3f8111 /src/duk-libdom-interface.c | |
parent | 35fe42358429770a4a305dff991b8090736e4957 (diff) | |
download | nsgenbind-e87ed9a82296b8481b0d867e41bbfb65ea5fae9f.tar.gz nsgenbind-e87ed9a82296b8481b0d867e41bbfb65ea5fae9f.tar.bz2 |
Use attribute types from IR for generated event handlers
Diffstat (limited to 'src/duk-libdom-interface.c')
-rw-r--r-- | src/duk-libdom-interface.c | 25 |
1 files changed, 21 insertions, 4 deletions
diff --git a/src/duk-libdom-interface.c b/src/duk-libdom-interface.c index d7214e3..8741815 100644 --- a/src/duk-libdom-interface.c +++ b/src/duk-libdom-interface.c @@ -1231,13 +1231,21 @@ output_attribute_getter(FILE* outf, } /* no implementation so generate default and warnings if required */ + const char *type_str; + if (atributee->typec == 0) { + type_str = ""; + } else if (atributee->typec == 1) { + type_str = webidl_type_to_str(atributee->typev[0].modifier, + atributee->typev[0].base); + } else { + type_str = "multiple"; + } WARN(WARNING_UNIMPLEMENTED, "Unimplemented: getter %s::%s(%s);", interfacee->name, atributee->name, - webidl_type_to_str(atributee->type_modifier, - atributee->base_type)); + type_str); if (options->dbglog) { fprintf(outf, "\tLOG(\"Unimplemented\");\n" ); @@ -1321,12 +1329,21 @@ output_attribute_setter(FILE* outf, /* implementation not generated from any other source */ if (res < 0) { + const char *type_str; + if (atributee->typec == 0) { + type_str = ""; + } else if (atributee->typec == 1) { + type_str = webidl_type_to_str( + atributee->typev[0].modifier, + atributee->typev[0].base); + } else { + type_str = "multiple"; + } WARN(WARNING_UNIMPLEMENTED, "Unimplemented: setter %s::%s(%s);", interfacee->name, atributee->name, - webidl_type_to_str(atributee->type_modifier, - atributee->base_type)); + type_str); if (options->dbglog) { fprintf(outf, "\tLOG(\"Unimplemented\");\n" ); } |