diff options
author | Vincent Sanders <vince@kyllikki.org> | 2015-07-29 00:08:08 +0100 |
---|---|---|
committer | Vincent Sanders <vince@kyllikki.org> | 2015-07-29 00:08:08 +0100 |
commit | cb23f1f911523752db095781d0d5fa3e334f1aa5 (patch) | |
tree | 4c9044542443243067f9e57d4710573b49122f74 /src/interface-map.h | |
parent | 3f0d06f529fb5efaeb4edd89e61b3421951b8bf2 (diff) | |
download | nsgenbind-cb23f1f911523752db095781d0d5fa3e334f1aa5.tar.gz nsgenbind-cb23f1f911523752db095781d0d5fa3e334f1aa5.tar.bz2 |
Add property generation and add it to prototype construction
Diffstat (limited to 'src/interface-map.h')
-rw-r--r-- | src/interface-map.h | 23 |
1 files changed, 21 insertions, 2 deletions
diff --git a/src/interface-map.h b/src/interface-map.h index 7373580..9d66dfb 100644 --- a/src/interface-map.h +++ b/src/interface-map.h @@ -12,12 +12,31 @@ struct genbind_node; struct webidl_node; +struct interface_map_operation_entry { + const char *name; /** operation name */ + struct webidl_node *node; /**< AST operation node */ + struct genbind_node *method; /**< method from binding (if any) */ +}; + +struct interface_map_attribute_entry { + const char *name; /** attribute name */ + struct webidl_node *node; /**< AST attribute node */ + enum webidl_type_modifier modifier; + struct genbind_node *getter; /**< getter from binding (if any) */ + struct genbind_node *setter; /**< getter from binding (if any) */ +}; + struct interface_map_entry { const char *name; /** interface name */ struct webidl_node *node; /**< AST interface node */ const char *inherit_name; /**< Name of interface inhertited from */ - int operations; /**< number of operations on interface */ - int attributes; /**< number of attributes on interface */ + + int operationc; /**< number of operations on interface */ + struct interface_map_operation_entry *operationv; + + int attributec; /**< number of attributes on interface */ + struct interface_map_attribute_entry *attributev; + int inherit_idx; /**< index into map of inherited interface or -1 for * not in map */ |