Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | restructure AST node creation to avoid casts | Vincent Sanders | 2016-11-27 | 1 | -57/+93 |
| | | | | | | | | | | | | | | | | 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. | ||||
* | Correctly annotate unused variables with a macro | Vincent Sanders | 2016-02-06 | 1 | -2/+3 |
| | |||||
* | Process extended attributes for constructors | Vincent Sanders | 2015-09-30 | 1 | -101/+164 |
| | | | | | Extended attributes for constructors and named constructors are now parsed into the AST as operations ready to be used to generate output. | ||||
* | Add WebIDL parsing of dictionaries | Vincent Sanders | 2015-08-17 | 1 | -75/+225 |
| | | | | | | This adds correct parsing of dictionaries into the AST. These entries in the AST are not yet used but do not affect generation of interfaces. | ||||
* | Basic type checking for operation arguments | Vincent Sanders | 2015-08-13 | 1 | -2/+22 |
| | | | | | | | 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. | ||||
* | Extend WebIDL parsing to cope with second edition IDL static interface elements | Vincent Sanders | 2015-08-11 | 1 | -14/+92 |
| | |||||
* | Update the interface map to contain all operation arguments | Vincent Sanders | 2015-08-09 | 1 | -1/+13 |
| | | | | | | | | | 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. | ||||
* | Update the webidl parser to cope with specials and overloaded methods | Vincent Sanders | 2015-08-02 | 1 | -20/+62 |
| | |||||
* | Add property generation and add it to prototype construction | Vincent Sanders | 2015-07-29 | 1 | -1/+1 |
| | |||||
* | Load the WebIDL files specified in the binding | Vincent Sanders | 2015-07-22 | 1 | -15/+89 |
| | | | | | | | | | | | | | This loads the WebIDL specified in the bindings into an Abstract Syntax Tree (AST) and performs the mixin operations for implements. Additionally the specs now use a slightly extended IDL syntax. Instead of wholesale implementing the second edition of the IDL spec the parser has been updated to cope with iterator and Promise keywords as those are the only changes used in the dom and html specifications. A bug was also fixed in the lexer where negative int literals were not recognised. | ||||
* | cope with older bison deirectives to get a pure parser | Vincent Sanders | 2014-05-02 | 1 | -1/+4 |
| | |||||
* | fix extended attribute AST ordering and nesting | Vincent Sanders | 2013-01-31 | 1 | -16/+36 |
| | |||||
* | annotate the webIDL AST with extended attributes | Vincent Sanders | 2013-01-28 | 1 | -10/+189 |
| | |||||
* | add type suffix annotations to webidl AST | Vincent Sanders | 2012-11-27 | 1 | -4/+25 |
| | |||||
* | make property shared status and type handling selection generic | Vincent Sanders | 2012-11-21 | 1 | -4/+4 |
| | |||||
* | add AST construction of constants in interfaces | Vincent Sanders | 2012-11-11 | 1 | -4/+55 |
| | |||||
* | ensure all Dictionary paths return the correct value and do not add junk nodes | Vincent Sanders | 2012-11-07 | 1 | -0/+1 |
| | |||||
* | implement the "implements" webidl directive | Vincent Sanders | 2012-10-31 | 1 | -18/+37 |
| | |||||
* | fix webidl DictionaryMember grammar | Vincent Sanders | 2012-10-23 | 1 | -1/+1 |
| | |||||
* | The name of teh tool is nsgenbind correct this everywhere | Vincent Sanders | 2012-10-23 | 1 | -1/+1 |
| | |||||
* | remove junk debug | Vincent Sanders | 2012-10-04 | 1 | -5/+0 |
| | |||||
* | fix polymorphism in teh AST generation | Vincent Sanders | 2012-10-04 | 1 | -50/+94 |
| | |||||
* | add modifier to allow setting of readonly or unsigned etc. | Vincent Sanders | 2012-09-26 | 1 | -2/+27 |
| | | | | add property getter/setter body | ||||
* | put return type in argument list so we can have multiple prototypes per ↵ | Vincent Sanders | 2012-09-25 | 1 | -24/+29 |
| | | | | operation (method) | ||||
* | add interface function return type | Vincent Sanders | 2012-09-24 | 1 | -0/+9 |
| | |||||
* | add interface function argument and type processing | Vincent Sanders | 2012-09-24 | 1 | -14/+205 |
| | |||||
* | add basic function body creation | Vincent Sanders | 2012-09-24 | 1 | -1/+1 |
| | |||||
* | cope with partial interfaces | Vincent Sanders | 2012-09-20 | 1 | -17/+69 |
| | |||||
* | add preamble output | Vincent Sanders | 2012-09-14 | 1 | -1/+10 |
| | | | | add operation nodes to webidl ast | ||||
* | fixus interface memer attributes | Vincent Sanders | 2012-09-14 | 1 | -2/+24 |
| | |||||
* | fix linking into global chain | Vincent Sanders | 2012-09-13 | 1 | -2/+9 |
| | |||||
* | add debug dump to webidl | Vincent Sanders | 2012-09-13 | 1 | -0/+30 |
| | |||||
* | construct the interface target node | Vincent Sanders | 2012-09-11 | 1 | -110/+122 |
| | |||||
* | clean up parser warnings | Vincent Sanders | 2012-09-10 | 1 | -2/+21 |
| | |||||
* | clean up AST building for both parsers | Vincent Sanders | 2012-09-10 | 1 | -23/+27 |
| | |||||
* | alter InterfaceMembers to be left recusrsive | Vincent Sanders | 2012-09-07 | 1 | -3/+9 |
| | | | | Document accurately the changes from the w3c grammar | ||||
* | slightly rearrange Web IDL start term to be left recusrsive and not have ↵ | Vincent Sanders | 2012-09-07 | 1 | -7/+4 |
| | | | | reduce/reduce conflicts | ||||
* | add copyright and licence notices | Vincent Sanders | 2012-09-07 | 1 | -5/+10 |
| | |||||
* | fixup error reporting to give linenumber | Vincent Sanders | 2012-09-07 | 1 | -4/+10 |
| | |||||
* | make tests work | Vincent Sanders | 2012-09-05 | 1 | -2/+8 |
| | | | | add basic commandlien handling | ||||
* | Fix up bison usage | John-Mark Bell | 2012-09-05 | 1 | -2/+0 |
| | |||||
* | start using core buildsystem | Vincent Sanders | 2012-09-04 | 1 | -3/+1 |
| | |||||
* | Initial version of netsurf webidl javascript binding geenrator tool | Vincent Sanders | 2012-09-04 | 1 | -0/+762 |