summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorVincent Sanders <vincent.sanders@collabora.co.uk>2012-11-21 16:18:37 +0000
committerVincent Sanders <vincent.sanders@collabora.co.uk>2012-11-21 16:18:37 +0000
commit2bfd4d2720b55df0141189633ef6fae530663d04 (patch)
treea71fb8a50c0152ad1729523735e290a8d8aba365 /src
parent93c89193c1f2a29b00741d1494f262642108abe2 (diff)
downloadnsgenbind-2bfd4d2720b55df0141189633ef6fae530663d04.tar.gz
nsgenbind-2bfd4d2720b55df0141189633ef6fae530663d04.tar.bz2
name and docuemnt the binding property attribute
Diffstat (limited to 'src')
-rw-r--r--src/jsapi-libdom-property.c6
-rw-r--r--src/nsgenbind-ast.c6
-rw-r--r--src/nsgenbind-ast.h2
-rw-r--r--src/nsgenbind-lexer.l2
-rw-r--r--src/nsgenbind-parser.y24
5 files changed, 24 insertions, 16 deletions
diff --git a/src/jsapi-libdom-property.c b/src/jsapi-libdom-property.c
index 5502030..2bfb591 100644
--- a/src/jsapi-libdom-property.c
+++ b/src/jsapi-libdom-property.c
@@ -31,14 +31,14 @@ get_binding_shared_modifier(struct binding *binding, const char *type, const cha
/* look for node matching the ident first */
shared_node = genbind_node_find_type_ident(binding->binding_list,
NULL,
- GENBIND_NODE_TYPE_BINDING_SHARED,
+ GENBIND_NODE_TYPE_BINDING_PROPERTY,
ident);
/* look for a node matching the type */
if (shared_node == NULL) {
shared_node = genbind_node_find_type_ident(binding->binding_list,
NULL,
- GENBIND_NODE_TYPE_BINDING_SHARED,
+ GENBIND_NODE_TYPE_BINDING_PROPERTY,
type);
}
@@ -779,7 +779,7 @@ output_property_body(struct binding *binding)
if (res == 0) {
res = genbind_node_for_each_type(binding->binding_list,
- GENBIND_NODE_TYPE_BINDING_SHARED,
+ GENBIND_NODE_TYPE_BINDING_PROPERTY,
typehandler_property_cb,
binding);
}
diff --git a/src/nsgenbind-ast.c b/src/nsgenbind-ast.c
index fba7dcb..f5cdc78 100644
--- a/src/nsgenbind-ast.c
+++ b/src/nsgenbind-ast.c
@@ -228,7 +228,7 @@ struct genbind_node *genbind_node_getnode(struct genbind_node *node)
case GENBIND_NODE_TYPE_BINDING:
case GENBIND_NODE_TYPE_BINDING_PRIVATE:
case GENBIND_NODE_TYPE_BINDING_INTERNAL:
- case GENBIND_NODE_TYPE_BINDING_SHARED:
+ case GENBIND_NODE_TYPE_BINDING_PROPERTY:
case GENBIND_NODE_TYPE_OPERATION:
case GENBIND_NODE_TYPE_API:
case GENBIND_NODE_TYPE_GETTER:
@@ -294,8 +294,8 @@ static const char *genbind_node_type_to_str(enum genbind_node_type type)
case GENBIND_NODE_TYPE_BINDING_INTERFACE:
return "Interface";
- case GENBIND_NODE_TYPE_BINDING_SHARED:
- return "Shared";
+ case GENBIND_NODE_TYPE_BINDING_PROPERTY:
+ return "Property";
case GENBIND_NODE_TYPE_OPERATION:
return "Operation";
diff --git a/src/nsgenbind-ast.h b/src/nsgenbind-ast.h
index cddf608..6368519 100644
--- a/src/nsgenbind-ast.h
+++ b/src/nsgenbind-ast.h
@@ -24,7 +24,7 @@ enum genbind_node_type {
GENBIND_NODE_TYPE_BINDING_PRIVATE,
GENBIND_NODE_TYPE_BINDING_INTERNAL,
GENBIND_NODE_TYPE_BINDING_INTERFACE,
- GENBIND_NODE_TYPE_BINDING_SHARED,
+ GENBIND_NODE_TYPE_BINDING_PROPERTY,
GENBIND_NODE_TYPE_API,
GENBIND_NODE_TYPE_OPERATION,
GENBIND_NODE_TYPE_GETTER,
diff --git a/src/nsgenbind-lexer.l b/src/nsgenbind-lexer.l
index 313d37b..e1c7740 100644
--- a/src/nsgenbind-lexer.l
+++ b/src/nsgenbind-lexer.l
@@ -100,6 +100,8 @@ unshared return TOK_UNSHARED;
shared return TOK_SHARED;
+property return TOK_PROPERTY;
+
operation return TOK_OPERATION;
api return TOK_API;
diff --git a/src/nsgenbind-parser.y b/src/nsgenbind-parser.y
index b104f2f..984513e 100644
--- a/src/nsgenbind-parser.y
+++ b/src/nsgenbind-parser.y
@@ -36,7 +36,7 @@ char *errtxt;
{
char* text;
struct genbind_node *node;
- int number;
+ long value;
}
%token TOK_IDLFILE
@@ -54,6 +54,7 @@ char *errtxt;
%token TOK_INTERNAL
%token TOK_UNSHARED
%token TOK_SHARED
+%token TOK_PROPERTY
%token <text> TOK_IDENTIFIER
%token <text> TOK_STRING_LITERAL
@@ -61,8 +62,8 @@ char *errtxt;
%type <text> CBlock
-%type <number> Modifiers
-%type <number> Modifier
+%type <value> Modifiers
+%type <value> Modifier
%type <node> Statement
%type <node> Statements
@@ -77,7 +78,7 @@ char *errtxt;
%type <node> Private
%type <node> Internal
%type <node> Interface
-%type <node> Shared
+%type <node> Property
%type <node> Operation
%type <node> Api
%type <node> Getter
@@ -261,7 +262,7 @@ BindingArg
|
Interface
|
- Shared
+ Property
;
Type
@@ -300,11 +301,11 @@ Interface
}
;
-Shared
+Property
:
- TOK_SHARED Modifiers TOK_IDENTIFIER ';'
+ TOK_PROPERTY Modifiers TOK_IDENTIFIER ';'
{
- $$ = genbind_new_node(GENBIND_NODE_TYPE_BINDING_SHARED,
+ $$ = genbind_new_node(GENBIND_NODE_TYPE_BINDING_PROPERTY,
NULL,
genbind_new_node(GENBIND_NODE_TYPE_MODIFIER,
genbind_new_node(GENBIND_NODE_TYPE_IDENT,
@@ -318,7 +319,7 @@ Modifiers
:
/* empty */
{
- $$ = 0;
+ $$ = GENBIND_TYPE_NONE;
}
|
Modifiers Modifier
@@ -338,6 +339,11 @@ Modifier
{
$$ = GENBIND_TYPE_UNSHARED;
}
+ |
+ TOK_SHARED
+ {
+ $$ = GENBIND_TYPE_NONE;
+ }
;
%%