Commit graph

142 commits

Author SHA1 Message Date
Erin edb03dec94 get_bit returns error kind which makes the error spanned 2022-05-05 00:36:13 +02:00
Erin 7b5a9aed89 Fixed zero division and zero assertion errors when [] / 0 2022-05-04 23:15:12 +02:00
Erin 947c2552b1 fmt + clippy 2022-05-03 23:19:10 +02:00
Erin 6ad0ab5e29 Added non-newline print. 2022-05-03 23:13:17 +02:00
Erin 1a61c66e10 T-Dark letter cases implemented 2022-05-02 23:40:42 +02:00
Erin ab76516624 extracted t-dark substitution to separate function 2022-05-02 23:12:32 +02:00
Erin b76e890fb7 Modified Str -> Int coercion 2022-04-26 00:18:11 +02:00
Erin 85226fbfbb Implemented key extraction 2022-04-25 14:56:35 +02:00
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