diff options
author | Andy Wingo <wingo@pobox.com> | 2009-02-19 17:14:16 +0100 |
---|---|---|
committer | Andy Wingo <wingo@pobox.com> | 2009-02-19 17:14:16 +0100 |
commit | b72880eb170ccec1177a6c93b1694014ee54a453 (patch) | |
tree | c29c5d42518c60e751cb3c0d93037dc134063515 /module/language/ecmascript/parse.scm | |
parent | 984dce236bd742083f3f284c9fe7b93c2df9f908 (diff) | |
download | guile-b72880eb170ccec1177a6c93b1694014ee54a453.tar.gz |
implement object literals
* module/language/ecmascript/impl.scm:
* module/language/ecmascript/compile-ghil.scm (comp): Object literals.
* module/language/ecmascript/parse.scm (parse-ecmascript): Fix some
object literal parsing.
Diffstat (limited to 'module/language/ecmascript/parse.scm')
-rw-r--r-- | module/language/ecmascript/parse.scm | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/module/language/ecmascript/parse.scm b/module/language/ecmascript/parse.scm index d034f7f4f..4c3d447bc 100644 --- a/module/language/ecmascript/parse.scm +++ b/module/language/ecmascript/parse.scm @@ -199,11 +199,11 @@ (ObjectLiteral (lbrace rbrace) -> `(object) (lbrace PropertyNameAndValueList rbrace) -> `(object ,@$2)) - (PropertyNameAndValueList (PropertyName colon AssignmentExpression) -> `((,$1 . ,$3)) - (PropertyNameAndValueList comma PropertyName colon AssignmentExpression) -> `(,@$1 (,$3 . ,$5))) - (PropertyName (Identifier) -> `(ref ,$1) - (StringLiteral) -> `(string ,$1) - (NumericLiteral) -> `(number ,$1)) + (PropertyNameAndValueList (PropertyName colon AssignmentExpression) -> `((,$1 ,$3)) + (PropertyNameAndValueList comma PropertyName colon AssignmentExpression) -> `(,@$1 (,$3 ,$5))) + (PropertyName (Identifier) -> $1 + (StringLiteral) -> (string->symbol $1) + (NumericLiteral) -> $1) (MemberExpression (PrimaryExpression) -> $1 (FunctionExpression) -> $1 |