path: root/README
diff options
authorVincent Sanders <>2015-07-21 23:48:45 +0100
committerVincent Sanders <>2015-07-21 23:48:45 +0100
commit1288d8c535edd2ce29eebdc4acca6b2beab89841 (patch)
tree162bd2d090e03a7ffb9523797c1dd2aebbce236f /README
parent94137186a3e2270e9b96f243a82a77a590c17f01 (diff)
Change binding grammar to new approach.
Diffstat (limited to 'README')
1 files changed, 61 insertions, 1 deletions
diff --git a/README b/README
index 70d224f..e260642 100644
--- a/README
+++ b/README
@@ -7,4 +7,64 @@ files and a binding configuration file.
-The tool requires bison and flex as pre-requisites \ No newline at end of file
+The tool requires bison and flex as pre-requisites
+nsgenbind [-v] [-g] [-D] [-W] [-I idlpath] inputfile outputdir
+The verbose switch makes the tool verbose about what operations it is
+performing instead of teh default of only reporting errors.
+The generated code will be augmented with runtime debug logging so it
+can be traced
+The tool will generate output to allow debugging of output conversion.
+This includes dumps of the binding and IDL files AST
+This switch will make the tool generate warnings about various issues
+with the binding or IDL files being processed.
+An additional search path may be given so idl files can be located.
+The tool requires a binding file as input and an output directory in
+which to place its output.
+Web IDL
+The IDL is specified in a w3c document[1] but the second edition is in
+draft[2] and covers many of the features actually used in the whatwg
+dom and html spec.
+The principal usage of the IDL is to define the interface between
+scripts and a browsers internal state. For example the DOM[3] and
+HTML[4] specs contain all the IDL for acessing the DOM and interacting
+with a web browser (this not strictly true as there are several
+interfaces simply not in the standards such as console).
+The IDL uses some slightly strange names than other object orientated
+ IDL | JS | OOP | Notes
+ interface | prototype | class | The data definition of
+ | | | the object
+ constants | read-only value | class variable | Belong to class, one copy
+ | property on the | |
+ | prototype | |
+ operation | method | method | functions that can be called
+ attribute | property | property | Variables set per instance