Commit Graph

1020 Commits

Author SHA1 Message Date
Andrew Morris
4fbc0519ce wip2 2023-07-25 15:31:37 +10:00
Andrew Morris
3a8a015f21 wip 2023-07-25 14:35:41 +10:00
Andrew Morris
5fd2a046e2 Simplify function compiling 2023-07-25 12:00:43 +10:00
Andrew Morris
f2e518f343 Directly insert dependent definitions and diagnostics 2023-07-25 10:59:19 +10:00
Andrew Morris
200607f1ae Represent class as just a value in the assembly 2023-07-25 10:47:35 +10:00
Andrew Morris
ed0d2665fd Add Value::Class, Kal::Class 2023-07-25 10:20:48 +10:00
Andrew Morris
b10861389a Class static constants 2023-07-25 09:28:04 +10:00
Andrew Morris
8a13025fd5 Support more static prop names 2023-07-25 09:14:07 +10:00
Andrew Morris
926f8d6cff Move compile_expr into StaticExpressionCompiler 2023-07-25 09:09:29 +10:00
Andrew Morris
9a327ababe Implement static method props 2023-07-24 17:57:51 +10:00
Andrew Morris
2d58ef5ebd Implement method props 2023-07-24 17:47:13 +10:00
Andrew Morris
317ca24cfe Support functions and classes in static expressions 2023-07-24 17:30:34 +10:00
Andrew Morris
72a7ab5c37 Static eval for arrow functions 2023-07-24 14:49:38 +10:00
Andrew Morris
d3383ff11e Simplify export default 2023-07-24 14:39:11 +10:00
Andrew Morris
839aff0de3 Allow fallback to pointer for non-constants 2023-07-24 14:36:22 +10:00
Andrew Morris
a72b26a8ba Make compile_expr non-optional 2023-07-24 14:32:59 +10:00
Andrew Morris
ff47617862 Make compile_enum_value and static_eval_expr methods of ModuleCompiler 2023-07-24 14:10:15 +10:00
Andrew Morris
870c9eed2a Simplify diagnostic reporting 2023-07-24 13:58:12 +10:00
Andrew Morris
267a86fb2c Just pass ModuleCompiler to compile_enum_value, static_eval_expr 2023-07-24 11:24:07 +10:00
Andrew Morris
1a12e57435 Use compile-time borrowing of module compiler to simplify fnc, ec 2023-07-24 11:16:38 +10:00
Andrew Morris
e81eb6d1e2 Fix clippy issues 2023-07-24 10:38:46 +10:00
Andrew Morris
d649272a6e Implement exporting constants 2023-07-24 10:26:54 +10:00
Andrew Morris
0f7ab32fce Remove completed TODO 2023-07-24 09:51:50 +10:00
Andrew Morris
0d59881d82 Document SWC bug 2023-07-21 17:51:19 +10:00
Andrew Morris
0ec8093ae4 Fix category of passing test 2023-07-21 17:32:53 +10:00
Andrew Morris
bccc43f264 Fix doubleCapture.ts 2023-07-21 17:21:22 +10:00
Andrew Morris
7ce3e4b2bb Fix reverting this in try-catch 2023-07-21 16:52:40 +10:00
Andrew Morris
0927e1d312 Fix category of passing test 2023-07-21 16:42:48 +10:00
Andrew Morris
9536a5fc6e Capture this in arrow functions 2023-07-21 16:38:30 +10:00
Andrew Morris
fd116d06a2 Include this in scope analysis 2023-07-21 15:27:02 +10:00
Andrew Morris
fcdebb7b9e Webserver examples 2023-07-21 11:30:21 +10:00
Andrew Morris
6bb533e4ba Update richards.ts using more new features 2023-07-07 17:55:58 +10:00
Andrew Morris
bfe8245103 Update richards.ts 2023-07-07 17:47:32 +10:00
Andrew Morris
24438aecb7 Implement constants that refer to other constants 2023-07-07 17:46:29 +10:00
Andrew Morris
48fd851fb7 Use ScopeAnalysis in static eval 2023-07-07 17:07:09 +10:00
Andrew Morris
581965e01b Make clippy a happy chappy 2023-07-07 16:08:28 +10:00
Andrew Morris
6c72b32111 Handle undefined as a constant 2023-07-07 14:34:39 +10:00
Andrew Morris
559528ab53 Update readme 2023-07-07 11:58:58 +10:00
Andrew Morris
f7cface4cc Support all values as keys in assembly 2023-07-07 11:46:21 +10:00
Andrew Morris
8e5f41cf40 tutorial/typeScriptFeatures.ts 2023-07-07 11:39:08 +10:00
Andrew Morris
4c90c5d484 Update tree shaking example 2023-07-07 10:59:07 +10:00
Andrew Morris
d763e0dd13 Implement enums 2023-07-07 10:49:21 +10:00
Andrew Morris
9552c71109 Take registers on the last pass only, do 3 passes 2023-07-07 00:20:25 +10:00
Andrew Morris
1cbc6fdb09 Simplify just-reg edge case 2023-07-06 23:55:19 +10:00
Andrew Morris
afd0c46495 Avoid making new registers when knowledge is just a register map 2023-07-06 23:48:59 +10:00
Andrew Morris
5a39f7996f Capture registers in knowledge when overwritten 2023-07-06 23:26:05 +10:00
Andrew Morris
06474f38a4 Remove outdated TODO 2023-07-06 22:29:31 +10:00
Andrew Morris
3fc5e62f25 TsTypeAssertion 2023-07-06 22:04:52 +10:00
Andrew Morris
496de4fff2 Mark await as todo instead of not supported 2023-07-06 22:02:32 +10:00
Andrew Morris
46eccda083 Compile seq expressions 2023-07-06 22:01:09 +10:00