summaryrefslogtreecommitdiff
path: root/module/language/ecmascript/parse.scm
diff options
context:
space:
mode:
authorAndy Wingo <wingo@pobox.com>2009-02-19 17:14:16 +0100
committerAndy Wingo <wingo@pobox.com>2009-02-19 17:14:16 +0100
commitb72880eb170ccec1177a6c93b1694014ee54a453 (patch)
treec29c5d42518c60e751cb3c0d93037dc134063515 /module/language/ecmascript/parse.scm
parent984dce236bd742083f3f284c9fe7b93c2df9f908 (diff)
downloadguile-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.scm10
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