aboutsummaryrefslogtreecommitdiff
path: root/src/lang/parser.clj
diff options
context:
space:
mode:
authorEduardo Julian2014-12-20 23:25:40 -0400
committerEduardo Julian2014-12-20 23:25:40 -0400
commit74d3233f7d7984ebcef0d4e6778f0596e867de6c (patch)
treeacb80d80ecf005fceff316b7ba4084407087c68c /src/lang/parser.clj
parentef185e0ec91af1d22762ef55dc5586c240633e18 (diff)
* Java interop is almost finished.
% _. and _.. syntax has been replaced with ::
Diffstat (limited to '')
-rw-r--r--src/lang/parser.clj13
1 files changed, 4 insertions, 9 deletions
diff --git a/src/lang/parser.clj b/src/lang/parser.clj
index ea3f518f5..376e376d6 100644
--- a/src/lang/parser.clj
+++ b/src/lang/parser.clj
@@ -158,15 +158,11 @@
=record (apply-m parse-form (list ?record))]
(return [::set ?tag =value =record])))
-(defparser ^:private parse-static-access
- [::&lexer/list ([[::&lexer/ident "_.."] [::&lexer/ident ?class] [::&lexer/ident ?member]] :seq)]
- (return [::static-access ?class ?member]))
-
-(defparser ^:private parse-dynamic-access
- [::&lexer/list ([[::&lexer/ident "_."] ?object ?call] :seq)]
+(defparser ^:private parse-access
+ [::&lexer/list ([[::&lexer/ident "::"] ?object ?call] :seq)]
(exec [=object (apply-m parse-form (list ?object))
=call (apply-m parse-form (list ?call))]
- (return [::dynamic-access =object =call])))
+ (return [::access =object =call])))
(defparser ^:private parse-string
[::&lexer/string ?string]
@@ -199,8 +195,7 @@
parse-get
parse-set
parse-remove
- parse-static-access
- parse-dynamic-access
+ parse-access
parse-defclass
parse-definterface
parse-import