Commit graph

134 commits

Author SHA1 Message Date
Erin 19744aa63a Added escapes test 2022-04-24 23:47:51 +02:00
Erin c6f4aaef24 Added some comments 2022-04-24 23:33:11 +02:00
Erin 90f8137b0d Implemented string unicode escapes 2022-04-24 23:29:15 +02:00
Erin 842c121901 sus 2022-04-24 22:01:31 +02:00
Erin db3b56d798 Double Melo causes variable deletion 2022-04-22 21:14:53 +02:00
Erin 5ccc181f47 Rc is got by reference by default 2022-04-22 21:09:03 +02:00
Erin 95e790d8e8 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 3916b20b59 clearer comment 2022-04-18 22:09:56 +02:00
Erin 5aada3c09e 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 98b72b14e2 Renamed init function in parser 2022-04-18 22:01:35 +02:00
Erin 60fb95cb13 Added crate-level docs for ablescript 2022-04-18 21:59:57 +02:00
Erin ee6105dd91 chore: fmt 2022-04-18 21:43:32 +02:00
Erin f2340dd493 fixed comments and naming 2022-04-18 21:43:19 +02:00
Erin ea13c79fc4 replaced if with unless 2022-04-18 21:42:26 +02:00
Erin 6dd32793bb Chars are no longer special case of identifiers 2022-04-18 21:04:19 +02:00
Erin 0eb2698242 Expr::Literal contains Literal type which contains only possible types instead of any Value 2022-04-18 20:56:11 +02:00
Erin eac86b5e0b 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 c1bc0e8a96 No underscore! 2022-04-16 22:06:37 +02:00
Erin 35caa085f8 fmt 2022-04-12 22:15:53 +02:00
Erin de3b6dc048 version bump 2022-04-12 14:17:20 +02:00
Erin cee4a80584 dependency update + fmt 2022-04-12 14:16:34 +02:00
Erin 60505735c9 removed != in favour of ain't 2022-04-08 17:44:35 +02:00
Erin 89326fd344 Removed ! for ain't 2022-04-08 17:39:14 +02:00
Alex Bethel 19fa04f979 cargo fmt 2022-04-02 12:42:40 -06:00
Erin 45007e7d2b removed \ from idents 2022-04-02 20:39:48 +02:00
Erin ec48508ba7 changed line order 2022-04-02 14:13:49 +02:00
Erin 0b4db65ca3 This isn't AbleScript, we can just negate expressions :D 2022-04-02 13:44:29 +02:00
Erin eae118a78e Small change 2022-04-02 01:42:13 +02:00
Erin 38fe23d2b5 Removed ident type, fixed tests 2022-04-02 01:34:25 +02:00
Erin db7fc4d592 Generalised Spanned items 2022-04-02 01:22:46 +02:00
Erin d890d7cfff Simplified base 55 2022-04-02 01:06:47 +02:00
Erin a3d2922f7e fixed tests 2022-03-30 21:03:17 +02:00
Erin c1c8f17c8d Improved type coercions 2022-03-30 20:56:59 +02:00
Erin 6f663839a7 Removed booleans 2022-03-30 20:55:05 +02:00
Erin 86e1391ea2 Used checked next in require 2022-03-20 02:20:55 +01:00
Erin 5a5403a8df Changed way of String lexing 2022-03-13 13:18:51 +01:00
Erin c567341775 Added support for idents starting with _ 2022-03-12 23:26:39 +01:00
Erin 070f3b2f0e fixed spelling of ain't 2022-03-02 11:36:08 +01:00
Erin 9d6f5740b1 \ is valid part of identifiers 2022-03-01 23:07:23 +01:00
Erin 0ec54ecc51 Introduced newtype for Rc<RefCell<Value>> 2022-03-01 22:13:49 +01:00
Erin 3f4cc58b87 Satisfied most of THE ALLMIGHTY CLIPPY's requests. 2022-03-01 21:53:58 +01:00
Erin b975bc52d0 Bool, Abool and Nil values are no longer tokens 2022-03-01 18:57:03 +01:00
Erin 567665a314 fixed strings 2022-02-24 21:53:43 +01:00
Erin a23dac3ce0 Rust 2021
- Consts map generated using iterators
2022-02-23 21:47:07 +01:00
Erin cb6fcceb79 Fixed tests and examples 2022-02-22 22:49:56 +01:00
Erin f55f9e0512 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 d1f18be279 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 43ae772894 Exposed variables to public API 2022-02-14 00:12:03 +01:00
Erin edce9dcc91 Add from_value variable constructor 2022-02-14 00:11:37 +01:00
Erin ca4a9aba4c added new_with_vars 2022-02-14 00:08:48 +01:00