Andrew Morris
|
e49b1ff3da
|
Implement yield* instruction
|
2023-06-27 14:38:42 +10:00 |
|
Andrew Morris
|
fb7f925bfb
|
Use module constants in richards.ts
|
2023-06-23 16:11:22 +10:00 |
|
Andrew Morris
|
50369d18f3
|
Partial support for module constants
|
2023-06-23 15:41:16 +10:00 |
|
Andrew Morris
|
9135181634
|
Mark most module statements as not supported
|
2023-06-23 14:17:10 +10:00 |
|
Andrew Morris
|
a03aecedac
|
Add static eval for literals
|
2023-06-23 14:10:37 +10:00 |
|
Andrew Morris
|
c880dda7c9
|
Extract string constants
|
2023-06-23 13:48:58 +10:00 |
|
Andrew Morris
|
540b25225a
|
Compile static methods
|
2023-06-23 10:02:32 +10:00 |
|
Andrew Morris
|
41a6a20573
|
Include static in class assembly and bytecode
|
2023-06-23 09:47:12 +10:00 |
|
Andrew Morris
|
b3b5887d8b
|
methods -> prototype
|
2023-06-23 09:23:48 +10:00 |
|
Andrew Morris
|
fdae0c5ff4
|
Use take on iter_res
|
2023-06-22 19:49:54 +10:00 |
|
Andrew Morris
|
62aaa57b7d
|
Fix unnecessary binds
|
2023-06-22 17:46:05 +10:00 |
|
Andrew Morris
|
a4291204cb
|
Remove unnecessary mov
|
2023-06-22 16:41:26 +10:00 |
|
Andrew Morris
|
f12e3ea11b
|
Fix redundant mov in preincrements
|
2023-06-22 16:14:46 +10:00 |
|
Andrew Morris
|
6e1be5a929
|
Add Empty and Comment options to FnLine
|
2023-06-22 15:54:00 +10:00 |
|
Andrew Morris
|
48433d650e
|
Refactor - stop assuming assignment to target_register
|
2023-06-22 13:08:08 +10:00 |
|
Andrew Morris
|
70c695016e
|
Tweaks
|
2023-06-22 10:50:27 +10:00 |
|
Andrew Morris
|
0f3b02c2c5
|
Fix nested register for mov
|
2023-06-22 09:30:40 +10:00 |
|
Andrew Morris
|
1917bb51c6
|
When a value is just a nested register, take it
|
2023-06-22 08:55:52 +10:00 |
|
Andrew Morris
|
c1c5bd6f82
|
Default to take:false, add take()
|
2023-06-22 08:32:38 +10:00 |
|
Andrew Morris
|
b5ecc10b65
|
Add benchmarking
|
2023-06-21 15:07:05 +10:00 |
|
Andrew Morris
|
5969d344c4
|
Fix test - implement TargetAccessor for wrapper expressions
|
2023-06-21 11:00:20 +10:00 |
|
Andrew Morris
|
748769b039
|
Implement var hoisting for missing stmt types
|
2023-06-21 10:17:28 +10:00 |
|
Andrew Morris
|
72f9fbf0f7
|
Represent register taking
|
2023-06-20 16:57:49 +10:00 |
|
Andrew Morris
|
80786cc080
|
Implement yield* using a yield loop
|
2023-06-02 09:41:12 +10:00 |
|
Andrew Morris
|
9786625d97
|
Update playground to use generators
|
2023-06-01 13:18:35 +10:00 |
|
Andrew Morris
|
7e22dbeba0
|
Update this-mutability of yield*
|
2023-06-01 12:01:56 +10:00 |
|
Andrew Morris
|
76f78eb8ec
|
Add unimplemented yield* instruction
|
2023-06-01 09:05:55 +10:00 |
|
Andrew Morris
|
81c613a836
|
Assemble generator functions
|
2023-05-31 14:57:21 +10:00 |
|
Andrew Morris
|
d0f446b901
|
Parse function*
|
2023-05-31 14:55:00 +10:00 |
|
Andrew Morris
|
38b1bcfba2
|
Represent generators in assembly
|
2023-05-31 14:49:08 +10:00 |
|
Andrew Morris
|
56c8229d74
|
Compile yield expressions
|
2023-05-31 14:34:57 +10:00 |
|
Andrew Morris
|
12bfe5bf7f
|
Add unimplemented yield instruction
|
2023-05-31 14:20:45 +10:00 |
|
Andrew Morris
|
1ee2bc30da
|
Implement spreading for calls, news, and methods
|
2023-05-31 11:33:12 +10:00 |
|
Andrew Morris
|
383fcddfa1
|
Split out TargetAccessor
|
2023-05-31 10:03:22 +10:00 |
|
Andrew Morris
|
cd1ca27be8
|
Avoid trailing empty segment
|
2023-05-30 15:34:28 +10:00 |
|
Andrew Morris
|
4c20945c3a
|
Enable spreading in array expressions
|
2023-05-30 15:09:07 +10:00 |
|
Andrew Morris
|
4729d006a3
|
Handle iterators in CatStackFrame
|
2023-05-30 14:00:51 +10:00 |
|
Andrew Morris
|
4164f44ece
|
Cat instruction with limited implementation
|
2023-05-30 11:22:50 +10:00 |
|
Andrew Morris
|
21a0d182b2
|
Test custom iterator
|
2023-05-29 16:27:42 +10:00 |
|
Andrew Morris
|
87dfda4855
|
Compile for-of using iteration instead of indexing
|
2023-05-29 16:07:31 +10:00 |
|
Andrew Morris
|
b949027501
|
Enable defining Symbol.iterator on classes
|
2023-05-29 15:38:22 +10:00 |
|
Andrew Morris
|
79b8523758
|
Add $SymbolIterator
|
2023-05-29 14:52:29 +10:00 |
|
Andrew Morris
|
161ed1c6de
|
Add next and unpack_iter_res instructions (unimplemented)
|
2023-05-29 13:19:04 +10:00 |
|
Andrew Morris
|
ac868be23c
|
Replace VsPointer with cached decoding
|
2023-05-26 17:50:35 +10:00 |
|
Andrew Morris
|
bc89575eae
|
Replace val_to_string with to_string (via fmt::Display)
|
2023-05-26 13:17:31 +10:00 |
|
Andrew Morris
|
cb7af7c8a3
|
Ignore type-only imports
|
2023-04-15 17:38:26 +09:00 |
|
Andrew Morris
|
f0685828de
|
Allow leaving out whitespace
|
2023-04-15 17:18:32 +09:00 |
|
Andrew Morris
|
0785fe0c5e
|
Add args param
|
2023-04-15 16:45:40 +09:00 |
|
Andrew Morris
|
c9b0991907
|
Use this_subcall and avoid require_mutable_this when packing up those calls
|
2023-04-05 10:55:17 +10:00 |
|
Andrew Morris
|
0ee1f473ce
|
this_subcall
|
2023-04-05 10:31:05 +10:00 |
|