summaryrefslogtreecommitdiff
path: root/src/duk-libdom.c
Commit message (Collapse)AuthorAgeFilesLines
* only publicly export initialisors and finalisors if necessaryVincent Sanders2015-08-211-19/+20
|
* split up duk-libdom generation source as it had grown unweildyVincent Sanders2015-08-211-1410/+1
|
* add dictionary support and generationVincent Sanders2015-08-211-111/+290
| | | | The dictionary implementation is presetnt but incomplete.
* rename interface map to be intermediate representationVincent Sanders2015-08-171-95/+95
| | | | | | The interface map is now completely inapropriately named and is in fact now an intermediate representation of the webidl and bindings kept in a sorted order.
* Basic type checking for operation argumentsVincent Sanders2015-08-131-5/+113
| | | | | | | Arguments passed to basic operations are checked for type if they are strings, bolleans or numbers. Operations that are overloaded, special or have elipsis are not checked.
* Change to using single instance of constant strings for magic valuesVincent Sanders2015-08-111-27/+51
| | | | | | | Previously every reference to a constant magic string value was a separate and the compiler was not good at making them all common. This makes the string constants an explicit reference to a single instance of the string.
* Ensure the number of parameters is correct for operationsVincent Sanders2015-08-111-23/+270
| | | | | | | | | | For normal operations (not special, overloaded or varadic) check the number of parameters passed is correct and add default values if necessary. This means every normal operation will always have a complete set of parameters and throw an error if there are too few non optional arguments.
* Ensure private member definitions in structures are validVincent Sanders2015-08-101-2/+14
|
* Properly inject interface prototypesDaniel Silverstone2015-08-091-3/+5
|
* Generate interface objectsDaniel Silverstone2015-08-091-2/+21
|
* Update the interface map to contain all operation argumentsVincent Sanders2015-08-091-80/+28
| | | | | | | | | This extends the interface map (the intermediate representation) to have information on every operations arguments including overloading and optional arguments. This is important to allow automated checking of passed parameters numbers and types in future.
* Enable warnings to be enabled and generated for unimplemented elementsVincent Sanders2015-08-061-0/+11
|
* Add ptototype method type to bindingVincent Sanders2015-08-051-2/+13
| | | | | This allows additional cdata to be added to the generated prototype constructor.
* change method and property generators default block generationVincent Sanders2015-08-051-8/+33
| | | | | | | If the binding implementation of a method or property is empty then generate a default implementation (currently simply a return statement) otherwise the binding implementation must be complete including a return statement.
* The Read-only properties generator was using the wrong number of parameters.Vincent Sanders2015-08-041-14/+18
|
* Fix initialiser parameter listVincent Sanders2015-08-021-3/+5
| | | | | | The initialiser parameter list parsing was missing creation of a parameter node in the AST and the parameter iterator was looking for a method node instead of a paramter node.
* generates files with temporary name and only overwites on changeVincent Sanders2015-08-021-12/+23
|
* Update the webidl parser to cope with specials and overloaded methodsVincent Sanders2015-08-021-116/+85
|
* generate binding header and sourceVincent Sanders2015-08-011-72/+354
| | | | | | These allow a closed set of functions used by the automatic bindings and gives an external interface allowing all the generated prototypes to be created in the correct order
* ensure nothing is generated for interfaces marked with NoInterfaceObjectVincent Sanders2015-07-311-1/+25
|
* Generate makefile fragment and add header guardsVincent Sanders2015-07-311-19/+100
|
* Clean up code generation functionsVincent Sanders2015-07-301-186/+221
|
* Generate prototype header and include it from each class sourceVincent Sanders2015-07-301-20/+90
|
* Add generation of private header and cause class files to include itVincent Sanders2015-07-301-14/+85
|
* Generate constant values on the class prototypeVincent Sanders2015-07-291-0/+51
|
* Add property generation and add it to prototype constructionVincent Sanders2015-07-291-80/+155
|
* Generate class methods from interface operationsVincent Sanders2015-07-281-4/+271
|
* Add prototype generationVincent Sanders2015-07-271-7/+116
|
* make the duktape libdom generator output initializersVincent Sanders2015-07-261-27/+299
|
* initial duktape libdom generatorVincent Sanders2015-07-251-0/+268
This generator creates all the output files and generates the finalisers for every class.