Stephen Chung
|
2d80ee2f18
|
Refine optimizer.
|
2020-03-10 11:22:41 +08:00 |
|
Stephen Chung
|
55e7af7b04
|
Add AST optimizer.
|
2020-03-09 21:57:07 +08:00 |
|
Stephen Chung
|
e54fb54da2
|
Catch indexing errors at compile time.
|
2020-03-09 10:41:17 +08:00 |
|
Stephen Chung
|
01d04f717b
|
Natively handle negative numbers in tokenizer instead of the neg() function.
|
2020-03-09 10:10:19 +08:00 |
|
Stephen Chung
|
b1b25d3043
|
Add fallible functions support and replace most arithmetic operations with checked versions.
|
2020-03-08 22:47:13 +08:00 |
|
Stephen Chung
|
3e7adc2e51
|
More comments in code.
|
2020-03-08 19:54:02 +08:00 |
|
Stephen Chung
|
eed7bef974
|
Allow chaining of indexing (one level) and dotting.
|
2020-03-07 22:50:46 +08:00 |
|
Stephen Chung
|
df6950f8f7
|
Fix arrayindexed property access.
|
2020-03-07 20:55:03 +08:00 |
|
Stephen Chung
|
d055638e83
|
Properly detect invalid assignment LHS at compile time.
|
2020-03-07 17:32:15 +08:00 |
|
Stephen Chung
|
a8be700b9f
|
Simplify op-assignment.
|
2020-03-07 13:39:28 +08:00 |
|
Stephen Chung
|
22cb69a16b
|
Allow block expressions.
|
2020-03-07 10:39:00 +08:00 |
|
Stephen Chung
|
473e40e8a4
|
Catch more invalid LHS for assignments.
|
2020-03-07 10:16:20 +08:00 |
|
Stephen Chung
|
024133ae2d
|
Avoid string copying.
|
2020-03-07 10:15:42 +08:00 |
|
Stephen Chung
|
07e396b3f5
|
Allow chaining of array indexing operations.
|
2020-03-06 10:50:52 +08:00 |
|
Stephen Chung
|
3d3b939ba6
|
Simplify code, document logic, refactor and better error messages.
|
2020-03-06 01:05:02 +08:00 |
|
Stephen Chung
|
883f08c026
|
Enable more indexing expressions.
|
2020-03-05 20:28:03 +08:00 |
|
Stephen Chung
|
ba2aac4960
|
General code cleanup.
|
2020-03-04 23:06:05 +08:00 |
|
Stephen Chung
|
bb56a7a843
|
Code refactor, bug fixes, code docs.
|
2020-03-04 22:00:01 +08:00 |
|
Stephen Chung
|
b4d56accd4
|
Reverse commit fa13588f69 . Limit input script size not meaningful.
|
2020-03-04 09:33:35 +08:00 |
|
Stephen Chung
|
b421c8ac50
|
Minor refactor.
|
2020-03-03 23:31:29 +08:00 |
|
Stephen Chung
|
71a3c79915
|
Fix number parsing.
|
2020-03-03 21:39:25 +08:00 |
|
Stephen Chung
|
9f80bf03c4
|
Add throw.
|
2020-03-03 18:15:20 +08:00 |
|
Stephen Chung
|
95d0b2e620
|
Better error messages for function definitions.
|
2020-03-03 16:23:55 +08:00 |
|
Stephen Chung
|
fa13588f69
|
Limit script size to avoid overflowing positions.
|
2020-03-03 13:30:46 +08:00 |
|
Stephen Chung
|
0e96e1080c
|
Comprehensive error line number/character position during evaluation.
|
2020-03-02 22:13:14 +08:00 |
|
Stephen Chung
|
ed8d2ac20f
|
Add else if control flow.
|
2020-03-02 17:04:56 +08:00 |
|
Stephen Chung
|
a5e09295f8
|
Allow comparisons between different types (returning false).
|
2020-03-02 14:28:42 +08:00 |
|
Stephen Chung
|
22a505b57b
|
Short-curcuit boolean operators.
|
2020-03-02 12:08:03 +08:00 |
|
Stephen Chung
|
e93fd7d3fe
|
Properly handle char types.
|
2020-03-01 13:30:22 +08:00 |
|
Stephen Chung
|
5f135353c0
|
Change precedence to i8.
|
2020-02-29 21:18:48 +08:00 |
|
Stephen Chung
|
17f0001b11
|
Fix string handling - error for unterminated strings.
|
2020-02-29 21:10:31 +08:00 |
|
Stephen Chung
|
4b3cf95871
|
Simplify position handling.
|
2020-02-29 20:12:10 +08:00 |
|
Stephen Chung
|
c9daab3754
|
Simplify code by removing redirections.
|
2020-02-29 17:10:51 +08:00 |
|
Stephen Chung
|
e4e471fd20
|
Add line/position in compilation errors; Add compile to AST; FIx infinite loop in close parens.
|
2020-02-24 23:25:52 +08:00 |
|
Stephen Chung
|
157aa2be94
|
Add for statement and range function; New register_box_fn for functions returning Box<dyn Any> (which should not be boxed again); Register standard utility functions in library (e.g. print, string concat).
|
2020-02-23 22:48:46 +08:00 |
|
timfish
|
82fd20b2b1
|
Rust 2018
|
2019-09-18 11:21:07 +01:00 |
|
russ morris
|
2f46af64dd
|
added unit type as ()
|
2018-05-22 16:44:41 -07:00 |
|
Lukáš Hozda
|
b318ec24a9
|
rename OpEquals to OpAssign, as all of them are compound assignment operators
|
2017-12-21 12:32:18 +01:00 |
|
Lukáš Hozda
|
5edcfc2156
|
minor refactor
|
2017-12-21 12:28:59 +01:00 |
|
russ
|
3a5a1d2aff
|
i64 and f64 exponent implementation
|
2017-11-23 23:56:22 -08:00 |
|
Lukáš Hozda
|
3c8feab630
|
allow unary after compound and new binary operators
|
2017-11-01 23:09:07 +01:00 |
|
russ
|
7f6edf732f
|
resolved merge conflicts
|
2017-11-01 11:17:53 -07:00 |
|
russ
|
6d151bc2b9
|
minor refactor for sanity
|
2017-10-31 22:10:46 -07:00 |
|
russ
|
6cff70f2a3
|
binary, hex, octal literal types
|
2017-10-31 22:02:36 -07:00 |
|
russ
|
4fed05c20a
|
bugfix for binary and, modulo, binary ops tests
|
2017-10-31 15:06:13 -07:00 |
|
russ
|
f1cd71a72b
|
candidate compound assignment implementation
|
2017-10-30 22:55:20 -07:00 |
|
russ
|
e5e58fce98
|
sync'd latest master
|
2017-10-30 08:08:44 -07:00 |
|
russ
|
18c6892df3
|
take 2, 100% fewer variable name conflicts
|
2017-10-29 20:32:41 -07:00 |
|
russ
|
01666cefb9
|
candidate f64 support
|
2017-10-27 20:30:12 -07:00 |
|
Lukáš Hozda
|
00dedcc3b4
|
minor refactoring
|
2017-10-14 19:46:22 +02:00 |
|
Lukáš Hozda
|
a1e92d006c
|
clippy refactoring
|
2017-10-02 23:44:45 +02:00 |
|
Lukáš Hozda
|
660fbe2e39
|
[BREAKING CHANGE] change variable keyword to 'let' from 'var'
|
2017-10-02 08:46:35 +02:00 |
|
Lukáš Hozda
|
87b68b79f8
|
check if a char is whitespace instead of explicitly checking against a few chars, ignore Cargo.lock
|
2017-10-02 08:33:47 +02:00 |
|
Jonathan Turner
|
2a28209b38
|
Add string concat/compare. Bump to 0.4
|
2016-08-17 18:33:31 -07:00 |
|
jonathandturner
|
7a46c7d9bc
|
Refactoring a bit of the string/char parser code. Fmt'd
|
2016-04-16 19:32:18 -07:00 |
|
jonathandturner
|
b9ea072d6a
|
Add support for character constants
|
2016-04-13 18:40:06 -07:00 |
|
jonathandturner
|
3364191781
|
Move to i64 by default
|
2016-04-13 18:05:44 -07:00 |
|
jonathandturner
|
4e38b9e611
|
Clean up trailing space and fix rhai_runner print out
|
2016-04-13 18:01:08 -07:00 |
|
jonathandturner
|
3dfc6e627d
|
Move to using i64 by default
|
2016-04-12 19:52:27 -07:00 |
|
jonathandturner
|
b1ccaf4516
|
Add support for arrays
|
2016-03-26 10:46:28 -07:00 |
|
jonathandturner
|
254f4b081c
|
Simplified function registration to not require explicit coercion step. Simplified eval to take &str instead of String
|
2016-03-16 18:07:08 -04:00 |
|
jonathandturner
|
72c23ad7ca
|
Start adding support for dotted expressions
|
2016-03-07 15:39:02 -05:00 |
|
jonathandturner
|
b5075e6511
|
Fix divide support
|
2016-03-03 11:32:02 -05:00 |
|
jonathandturner
|
fbb5b72f24
|
Add support for loop breaks and function returns
|
2016-03-03 09:31:42 -05:00 |
|
jonathandturner
|
30b914e7b7
|
Add else to if
|
2016-03-03 08:20:55 -05:00 |
|
jonathandturner
|
0fd1af9c8d
|
Improve lexer errors a little
|
2016-03-02 09:16:36 -05:00 |
|
jonathandturner
|
2bba8dc429
|
Add support for string constants with escape sequences
|
2016-03-02 08:37:28 -05:00 |
|
jonathandturner
|
a8fa76c2fc
|
Support for methods. Started support for functions defined in script but not yet ready
|
2016-03-01 15:16:10 -05:00 |
|
jonathandturner
|
419781cfb6
|
Fill out support for operators
|
2016-03-01 09:40:48 -05:00 |
|
jonathandturner
|
6739706b64
|
Initial commit
|
2016-02-29 16:43:45 -05:00 |
|