summaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Operation generation: When argument type errors are detected, treat as error.tlsa/duktape2Michael Drake2017-03-221-3/+3
|
* Duktape 2.X: duk_error now returns a duk_ret_tMichael Drake2017-03-221-3/+3
| | | | | | | | | | | https://github.com/svaarala/duktape/blob/master/doc/release-notes-v2-0.rst#duk_error-duk_error_va-duk_throw-duk_fatal-have-a-return-value This change suppress warnings about ignoring the return value. However, it looks like we should be returning error in these cases rather than continuing. I'll do that in a separate commit.
* Duktape 2.x: duk_safe_call callbacks now have a void ptr user data param.Michael Drake2017-03-222-3/+3
| | | | https://github.com/svaarala/duktape/blob/master/doc/release-notes-v2-0.rst#duk_safe_call-userdata
* Align the private structs to quieten certain warnings from clangDaniel Silverstone2017-02-051-1/+1
|
* Ensure generated attributes register for correct eventsdsilvers/eventworkDaniel Silverstone2017-02-051-4/+7
|
* Make the #line a commentDaniel Silverstone2017-02-051-1/+1
|
* improve webidl AST dump outputVincent Sanders2016-11-271-9/+96
|
* remove unused node set APIVincent Sanders2016-11-272-8/+0
|
* restructure AST node creation to avoid castsVincent Sanders2016-11-276-69/+153
| | | | | | | | | | | | | | | | This changes Abstract Syntax Tree node creation for both webidl and genbind syntax tress. If a node is to be created with a numeric value instead of a pointer a separate API is now used instead of casting through void. This fixes parsing and AST building on big endian 64bit platforms where casting through void, which is completely undefined behaviour, generates different and non-functioning code. The solution in this patch is properly portable and correct without relying on casting at all. Thanks to James Clarke <jrtc27@jrtc27.com> for the original debugging and patch demonstrating how to work round the bug.
* use bounded string writingVincent Sanders2016-10-141-2/+2
|
* ensure webidl intercalate copes with empty webidlVincent Sanders2016-02-071-10/+14
|
* Bison after version 3.0 require different api prefix handlingVincent Sanders2016-02-071-2/+4
|
* fix ambiguity in grammar around class argumentsVincent Sanders2016-02-071-4/+2
|
* use unsued variable macro to remove warningVincent Sanders2016-02-071-2/+2
|
* Correctly annotate unused variables with a macroVincent Sanders2016-02-065-7/+18
|
* Add support for TreatNullAs=EmptyString extended attribute.John-Mark Bell2016-02-013-2/+20
|
* Expose nullable flag in IR and have generated getters use it.John-Mark Bell2016-02-013-2/+14
|
* Make generated string attribute getters cope with libdom returning NULL.John-Mark Bell2016-01-311-4/+8
| | | | Fixes #2415, #2418.
* simplify strndup detectionVincent Sanders2016-01-241-3/+1
|
* Improve strndup detectionVincent Sanders2016-01-241-1/+3
|
* Use attribute types from IR for generated event handlersVincent Sanders2015-11-052-20/+149
|
* extend IR to have a separate map for attribute typesVincent Sanders2015-11-052-32/+92
|
* Add generated code for short integer valuesVincent Sanders2015-11-011-0/+53
|
* split heuristic code generation out from interface logicVincent Sanders2015-11-014-185/+230
|
* extend the interface attribute setter automatic code generation to cover longsVincent Sanders2015-10-251-0/+29
|
* improve unimplemented warning to include type modifierVincent Sanders2015-10-243-7/+16
|
* extend the interface attribute getter automatic code generation to cover longsVincent Sanders2015-10-241-0/+24
|
* Extend IR attribute entries to contain the type modifilerVincent Sanders2015-10-242-17/+43
|
* Fix putforwards generation to cope with getters leaving a dirty stackVincent Sanders2015-10-141-5/+4
| | | | Kinnison did all teh heavy tjinking on this!
* slightly modify the IDL to c name translationVincent Sanders2015-10-131-8/+14
| | | | | | | This tweaks the IDL name to c name translation to not leave isolated characters. e.g. HTMLIFrameElement became html_i_frame_element now its html_iframe_element HTMLDList became html_d_list and is now html_dlist
* Extend the permitted values of the binding method namesVincent Sanders2015-10-121-2/+21
|
* show the property type on unimplemented getter warningVincent Sanders2015-10-121-2/+4
|
* show the property type on unimplemented setter warningVincent Sanders2015-10-093-2/+60
|
* Improve the generated instanceof in the binding to take an indexVincent Sanders2015-10-091-16/+16
|
* Add automatic generation of property getters and settersVincent Sanders2015-10-083-50/+241
| | | | | | | | | | | This allows the binding to omit specifying code for class property getters and setters. The omitted code will be generated by genbind to directly call suitable libdom accessors. The type of the property (string, boolean etc.) is derived from the IDL. If this type is incorrect, or is a type the generator cannot automatically produce, then the property will be treated like it has no binding implementation and generate unimplemented warnings.
* Split out idl to c name conversionVincent Sanders2015-10-083-64/+69
|
* Add warning for identifying generated outputVincent Sanders2015-10-082-1/+5
|
* make interface operations with elipsis parameters output line directivesVincent Sanders2015-10-011-4/+1
|
* Process extended attributes for constructorsVincent Sanders2015-09-302-101/+168
| | | | | Extended attributes for constructors and named constructors are now parsed into the AST as operations ready to be used to generate output.
* Implement putforwards processing.Vincent Sanders2015-09-305-22/+155
| | | | | | | | | interface attributes with the putforwards extended attribute call the setter specified in that extended attribute. The WebIDL is supposed to ensure the attribute is readonly before allowing a putforwards but we only warn about this as there are several examples where readonly is omitted.
* Allow empty classesVincent Sanders2015-09-281-5/+9
|
* annotates binding AST with source linenumber and fileVincent Sanders2015-09-286-14/+65
| | | | | Uses annotated AST to put line directives in the generated source so any code errors in the binding can be easily located.
* Improve the parser error reportingVincent Sanders2015-09-283-34/+126
| | | | | | | The parser now reports the correct file and line number for errors. Additionally the @n location structure in rules now has a filename member in addition to first_line. These members are useful for adding location information in generated source.
* Simplify genbind AST handling of preface, prologue, epilogue and postfaceVincent Sanders2015-09-268-172/+196
|
* Improve documentation on webidl type specifiersVincent Sanders2015-09-251-15/+15
|
* Make the binding parser understand c typesVincent Sanders2015-09-259-212/+229
| | | | | | Instead of c types being opaque strings this makes the bindig parser understand them. This is necessary for extended attribute parsing in future but also makes the binding more easily understandable.
* Cause string arguments to operations to be coerced.Vincent Sanders2015-09-072-6/+5
| | | | | | It appears that string parameters to operations must be coerced from other types instead of throwing a type error to conform to expected behaviour.
* Change dictionary generation to produce C accessors.Vincent Sanders2015-08-306-511/+421
| | | | | | This generates routines which correctly handle reading a member from a dictionary and returning it as the correct c type. Currently the types "any", "user" and "sequence" remain unhandled.
* add dictionary members to irVincent Sanders2015-08-212-6/+131
|
* only publicly export initialisors and finalisors if necessaryVincent Sanders2015-08-213-19/+33
|