aboutsummaryrefslogtreecommitdiff
path: root/new-luxc/source/luxc/lang/translation/jvm/procedure/common.jvm.lux
diff options
context:
space:
mode:
authorThe Lux Programming Language2018-08-26 09:14:57 -0400
committerGitHub2018-08-26 09:14:57 -0400
commit2cfa4184f908054b7bb3c3cdc2372cfbeafdd5d2 (patch)
tree4223297955b046205c017b58cf31e490b26e8cea /new-luxc/source/luxc/lang/translation/jvm/procedure/common.jvm.lux
parent58c299b90fbb3a20cf4e624fd20e4bb7f5846672 (diff)
parentb614f2875fb2e98e8867399b7013503f2b1a4e4c (diff)
Merge pull request #47 from LuxLang/faster-lexer
Faster new-luxc lexer/syntax
Diffstat (limited to 'new-luxc/source/luxc/lang/translation/jvm/procedure/common.jvm.lux')
-rw-r--r--new-luxc/source/luxc/lang/translation/jvm/procedure/common.jvm.lux11
1 files changed, 5 insertions, 6 deletions
diff --git a/new-luxc/source/luxc/lang/translation/jvm/procedure/common.jvm.lux b/new-luxc/source/luxc/lang/translation/jvm/procedure/common.jvm.lux
index 1b784ee76..e45a6f8cf 100644
--- a/new-luxc/source/luxc/lang/translation/jvm/procedure/common.jvm.lux
+++ b/new-luxc/source/luxc/lang/translation/jvm/procedure/common.jvm.lux
@@ -223,7 +223,7 @@
paramI <pre-param>
<op> <post>))]
- [text::= id id
+ [text::= (<|) (<|)
(_.INVOKEVIRTUAL "java.lang.Object" "equals" (_t.method (list ///.$Object) (#.Some _t.boolean) (list)) #0)
(_.wrap #$.Boolean)]
[text::< ..check-stringI ..check-stringI
@@ -231,10 +231,10 @@
(predicateI _.IFLT)]
[text::concat ..check-stringI ..check-stringI
(_.INVOKEVIRTUAL "java.lang.String" "concat" (_t.method (list $String) (#.Some $String) (list)) #0)
- id]
+ (<|)]
[text::char ..check-stringI jvm-intI
- (_.INVOKESTATIC ///.runtime-class "text_char" (_t.method (list $String _t.int) (#.Some ///.$Variant) (list)) #0)
- id]
+ (_.INVOKEVIRTUAL "java.lang.String" "charAt" (_t.method (list _t.int) (#.Some _t.char) (list)) #0)
+ lux-intI]
)
(do-template [<name> <pre-subject> <pre-param> <pre-extra> <op>]
@@ -246,8 +246,7 @@
<op>))]
[text::clip ..check-stringI jvm-intI jvm-intI
- (_.INVOKESTATIC ///.runtime-class "text_clip"
- (_t.method (list $String _t.int _t.int) (#.Some ///.$Variant) (list)) #0)]
+ (_.INVOKEVIRTUAL "java.lang.String" "substring" (_t.method (list _t.int _t.int) (#.Some $String) (list)) #0)]
)
(def: index-method Method (_t.method (list $String _t.int) (#.Some _t.int) (list)))