summaryrefslogtreecommitdiff
path: root/src/ir.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/ir.h')
-rw-r--r--src/ir.h13
1 files changed, 11 insertions, 2 deletions
diff --git a/src/ir.h b/src/ir.h
index 87c72c3..d3dd5d0 100644
--- a/src/ir.h
+++ b/src/ir.h
@@ -48,14 +48,23 @@ struct ir_operation_entry {
};
/**
+ * ir entry for type of attributes or arguments.
+ */
+struct ir_type_entry {
+ enum webidl_type base; /**< base of the type (long, short, user etc.) */
+ enum webidl_type_modifier modifier; /**< modifier for the type */
+ const char *name; /**< name of type for user types */
+};
+
+/**
* ir entry for attributes on an interface
*/
struct ir_attribute_entry {
const char *name; /**< attribute name */
struct webidl_node *node; /**< AST attribute node */
- enum webidl_type base_type; /**< type of attribute */
- enum webidl_type_modifier type_modifier; /**< modifier for the type */
+ int typec; /**< number of types for attribute */
+ struct ir_type_entry *typev; /**< types on attribute */
enum webidl_type_modifier modifier; /**< modifier for the attribute intself */
const char *putforwards; /**< putforwards attribute */