diff options
author | Marius Kintel <marius@kintel.net> | 2012-07-15 01:57:55 (GMT) |
---|---|---|
committer | Marius Kintel <marius@kintel.net> | 2012-07-15 01:57:55 (GMT) |
commit | 13557f1f9a44caccb0546717065ed72c27a210b3 (patch) | |
tree | d0ed7bd176d7c0b052431cb99efd358602d6b6bb /src/parser.y | |
parent | 38a4585d1a9abe9c779c5d0677bfc81c407db371 (diff) | |
parent | 2495df6bab07f14f0eed7062dec17d24599aa838 (diff) |
Merge branch 'timestamp-cache'
Diffstat (limited to 'src/parser.y')
-rw-r--r-- | src/parser.y | 31 |
1 files changed, 8 insertions, 23 deletions
diff --git a/src/parser.y b/src/parser.y index 195e7a8..b36c41b 100644 --- a/src/parser.y +++ b/src/parser.y @@ -294,19 +294,13 @@ single_module_instantiation: expr: TOK_TRUE { - $$ = new Expression(); - $$->type = "C"; - $$->const_value = new Value(true); + $$ = new Expression(Value(true)); } | TOK_FALSE { - $$ = new Expression(); - $$->type = "C"; - $$->const_value = new Value(false); + $$ = new Expression(Value(false)); } | TOK_UNDEF { - $$ = new Expression(); - $$->type = "C"; - $$->const_value = new Value(); + $$ = new Expression(Value::undefined); } | TOK_ID { $$ = new Expression(); @@ -322,20 +316,14 @@ expr: free($3); } | TOK_STRING { - $$ = new Expression(); - $$->type = "C"; - $$->const_value = new Value(std::string($1)); - free($1); + $$ = new Expression(Value(std::string($1))); + free($1); } | TOK_NUMBER { - $$ = new Expression(); - $$->type = "C"; - $$->const_value = new Value($1); + $$ = new Expression(Value($1)); } | '[' expr ':' expr ']' { - Expression *e_one = new Expression(); - e_one->type = "C"; - e_one->const_value = new Value(1.0); + Expression *e_one = new Expression(Value(1.0)); $$ = new Expression(); $$->type = "R"; $$->children.push_back($2); @@ -350,10 +338,7 @@ expr: $$->children.push_back($6); } | '[' optional_commas ']' { - $$ = new Expression(); - $$->type = "C"; - $$->const_value = new Value(); - $$->const_value->type = Value::VECTOR; + $$ = new Expression(Value(Value::VectorType())); } | '[' vector_expr optional_commas ']' { $$ = $2; |