Commit graph

136 commits

Author SHA1 Message Date
Erin a30aed991c Modified Str -> Int coercion 2022-04-26 00:18:11 +02:00
Erin bd0983c4dd Implemented key extraction 2022-04-25 14:56:35 +02:00
Erin aafc03bba6 Added escapes test 2022-04-24 23:47:51 +02:00
Erin 58d8f22e30 Added some comments 2022-04-24 23:33:11 +02:00
Erin c0852fe83e Implemented string unicode escapes 2022-04-24 23:29:15 +02:00
Erin ed83065ee4 sus 2022-04-24 22:01:31 +02:00
Erin e19c701f3c Double Melo causes variable deletion 2022-04-22 21:14:53 +02:00
Erin b52d07f13b Rc is got by reference by default 2022-04-22 21:09:03 +02:00
Erin a103a6e7f6 Reimplemented Melo
- Variable made into enum of `ValueRef or Melo`
- Melo-ing variable causes dropping of the Rc, decreasing reference count
2022-04-22 21:06:34 +02:00
Erin 57bbc44b82 clearer comment 2022-04-18 22:09:56 +02:00
Erin 407c8674a7 Made Parser private and made parse function
Parser had only consturctor and parse functions public.

Likely, there would be just a creation of parser followed by .parse(),
and now this action is performed in `parse` function.
2022-04-18 22:09:41 +02:00
Erin c1698d9b25 Renamed init function in parser 2022-04-18 22:01:35 +02:00
Erin fd0e7012ac Added crate-level docs for ablescript 2022-04-18 21:59:57 +02:00
Erin 165e7c6b5f chore: fmt 2022-04-18 21:43:32 +02:00
Erin f335302b2a fixed comments and naming 2022-04-18 21:43:19 +02:00
Erin 152c5c0f88 replaced if with unless 2022-04-18 21:42:26 +02:00
Erin b346995bfd Chars are no longer special case of identifiers 2022-04-18 21:04:19 +02:00
Erin f7cba4b2b6 Expr::Literal contains Literal type which contains only possible types instead of any Value 2022-04-18 20:56:11 +02:00
Erin e3d49c9c1f Changed variable declaration / assignment and equals syntax:
- `dim <ident> [value];` is now used for declaration
- `<value> =: <assignable>` is used for assignments
- As token `=` doesn't cause any ambiguity now, it can be used for equals operation
2022-04-18 20:34:08 +02:00
Erin 5a18642cd6 No underscore! 2022-04-16 22:06:37 +02:00
Erin f1da9b2117 fmt 2022-04-12 22:15:53 +02:00
Erin 6720ecc534 version bump 2022-04-12 14:17:20 +02:00
Erin afac0cdac7 dependency update + fmt 2022-04-12 14:16:34 +02:00
Erin 7a35885282 removed != in favour of ain't 2022-04-08 17:44:35 +02:00
Erin ec1b8200e0 Removed ! for ain't 2022-04-08 17:39:14 +02:00
Alex Bethel 7dfdb35685 cargo fmt 2022-04-02 12:42:40 -06:00
Erin 6dec02c60c removed \ from idents 2022-04-02 20:39:48 +02:00
Erin 3bb8af5b3f changed line order 2022-04-02 14:13:49 +02:00
Erin ac42fdc5ca This isn't AbleScript, we can just negate expressions :D 2022-04-02 13:44:29 +02:00
Erin 306e6cfc8e Small change 2022-04-02 01:42:13 +02:00
Erin 176467dfc8 Removed ident type, fixed tests 2022-04-02 01:34:25 +02:00
Erin ce2de21d9b Generalised Spanned items 2022-04-02 01:22:46 +02:00
Erin a6ecf782db Simplified base 55 2022-04-02 01:06:47 +02:00
Erin c2e9daf1fc fixed tests 2022-03-30 21:03:17 +02:00
Erin f18742a9b3 Improved type coercions 2022-03-30 20:56:59 +02:00
Erin 8d24ad5528 Removed booleans 2022-03-30 20:55:05 +02:00
Erin 04b44fb01e Used checked next in require 2022-03-20 02:20:55 +01:00
Erin 77c201476b Changed way of String lexing 2022-03-13 13:18:51 +01:00
Erin 8ad10e132b Added support for idents starting with _ 2022-03-12 23:26:39 +01:00
Erin 4d8ee1a0d7 fixed spelling of ain't 2022-03-02 11:36:08 +01:00
Erin e17b67e438 \ is valid part of identifiers 2022-03-01 23:07:23 +01:00
Erin d7ec6b3658 Introduced newtype for Rc<RefCell<Value>> 2022-03-01 22:13:49 +01:00
Erin 81f433e633 Satisfied most of THE ALLMIGHTY CLIPPY's requests. 2022-03-01 21:53:58 +01:00
Erin a3c0e65f6b Bool, Abool and Nil values are no longer tokens 2022-03-01 18:57:03 +01:00
Erin 55a455d110 fixed strings 2022-02-24 21:53:43 +01:00
Erin a3a0663433 Rust 2021
- Consts map generated using iterators
2022-02-23 21:47:07 +01:00
Erin 392a357c8e Fixed tests and examples 2022-02-22 22:49:56 +01:00
Erin 5f135be37c Changed string delimiters
You know what could be cursed? Using Rust's block comment syntax as String delimiters!
2022-02-22 22:39:03 +01:00
Erin 97981c8772 Removed unused tokens from Lexer
Uh, they were lying there with no use for 9 months!
2022-02-22 22:31:05 +01:00
Erin 6fc1f59e23 Exposed variables to public API 2022-02-14 00:12:03 +01:00