Commit Graph

1043 Commits

Author SHA1 Message Date
Andrew Morris
a7db195c8a wip 2023-08-15 11:03:33 +10:00
Andrew Morris
3ffafda8d2 FnMeta 2023-08-14 17:35:24 +10:00
Andrew Morris
5abd1c472e wip 2023-08-14 15:42:43 +10:00
Andrew Morris
cf14a21fe9 hash -> srcHash 2023-08-14 12:17:41 +10:00
Andrew Morris
31a00cba19 Put source_hash in function hash 2023-08-14 10:59:32 +10:00
Andrew Morris
4c6b249c10 VsFunctionMetadata 2023-08-14 09:13:11 +10:00
Andrew Morris
b0fa02a7cf source_hash 2023-08-14 08:57:19 +10:00
Andrew Morris
cd81f79e4b wip 2023-07-27 16:35:58 +10:00
Andrew Morris
9c21f0ee9c Implement instanceof 2023-07-27 11:42:49 +10:00
Andrew Morris
f6546abc97 Fix scope bug 2023-07-27 10:12:40 +10:00
Andrew Morris
69663190ee Add fake hash and use it to compare functions and class instances 2023-07-26 17:27:03 +10:00
Andrew Morris
b683e47bc5 Implement export star 2023-07-26 15:29:49 +10:00
Andrew Morris
960e5ef879 Update ExportStar representation 2023-07-26 13:22:37 +10:00
Andrew Morris
243758f51d Fix method shorthand scope 2023-07-26 10:48:30 +10:00
Andrew Morris
42b8a5ad40 Add failing test 2023-07-26 10:25:33 +10:00
Andrew Morris
e5281a16f0 Fix FnState bug losing kal when try_to_value fails 2023-07-26 10:08:42 +10:00
Andrew Morris
68f122ec37 Optimize subcall into apply and down to just call when %this isn't used 2023-07-26 09:16:50 +10:00
Andrew Morris
296f24e6af Add const_apply instruction 2023-07-25 17:46:41 +10:00
Andrew Morris
c1fca06f23 Add function(uses_this) to kal 2023-07-25 17:34:01 +10:00
Andrew Morris
b300428a38 class static subscripting in kal 2023-07-25 17:18:40 +10:00
Andrew Morris
474047aec2 Move sub() inside kal 2023-07-25 17:14:01 +10:00
Andrew Morris
b0b8e3d192 Add failing test 2023-07-25 17:07:43 +10:00
Andrew Morris
266d4cde11 Remove unnecessary muts 2023-07-25 17:02:05 +10:00
Andrew Morris
44f8f73645 Simplify diagnostics 2023-07-25 16:56:14 +10:00
Andrew Morris
570b3512a0 Implement non-capturing class expressions 2023-07-25 16:43:50 +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