Commit Graph

524 Commits

Author SHA1 Message Date
79ce13722a partially parsed class methods nad fields 2021-08-16 17:40:12 +08:00
eb814dd8c3 clean unused use 2021-08-16 13:57:21 +08:00
3734663188 add RefCell to FunSignature in TypeEnum 2021-08-16 13:53:45 +08:00
d8c3c063ec split top level handling in several functions 2021-08-16 13:53:39 +08:00
d3ad894521 removed code comment 2021-08-13 16:30:33 +08:00
784111fdbe Merge remote-tracking branch 'origin/hm-inference_anto' into hm-inference 2021-08-13 16:28:04 +08:00
d30918bea0 worker thread panic handling 2021-08-13 16:20:14 +08:00
e2adf82229 threadpool for parallel code generation 2021-08-13 14:48:46 +08:00
33391c55c2 add Sync bound to Symbol resolver in top level 2021-08-13 14:22:49 +08:00
3f65e1b133 start refactor top_level 2021-08-13 13:57:24 +08:00
ba5bb78f11 top level parse class base/generic 2021-08-13 13:57:24 +08:00
e176aa660d commit for pull new symbol resolver 2021-08-13 13:57:24 +08:00
cb01c79603 removed Arc from TypeEnum 2021-08-13 13:33:59 +08:00
1db8378f60 formatting 2021-08-12 16:36:23 +08:00
8c7ccb626b fixed symbol_resolver blanket implementation 2021-08-12 14:44:50 +08:00
1f6c16e08b fixed compilation failure 2021-08-12 13:56:51 +08:00
77943a8117 added primitive codegen test 2021-08-12 13:56:06 +08:00
3a93e2b048 TypeEnum::TObj.param is now RefCell for interior mutability 2021-08-12 13:17:51 +08:00
824a5cb01a register top level clean up 2021-08-12 10:51:41 +08:00
17ee8fe6d0 starting cleaning up and further add Arc<Mutex> 2021-08-12 10:51:41 +08:00
d46a4b2d38 symbol_resolver: fixed type variable handling 2021-08-12 10:25:32 +08:00
de8b67b605 refactored symbol resolver 2021-08-11 17:28:29 +08:00
0af4e95914 Merge remote-tracking branch 'origin/hm-inference_anto' into hm-inference 2021-08-11 15:42:32 +08:00
99276c8f31 formatted 2021-08-11 15:18:21 +08:00
42a636b4ce add Arc<Mutex<dyn SymbolResolver>> and change from Box<SymbolResolve> to Arc<SymbolResolver>, need format and cleanup 2021-08-11 15:11:51 +08:00
e112354d25 codegen refactored 2021-08-11 14:37:26 +08:00
43236db9bd update some previous work on top level with the clean up 2021-08-11 13:31:59 +08:00
1bec6cf2db continue working on the top level 2021-08-11 11:16:53 +08:00
a73ab922e2 cleanup 2021-08-10 21:57:31 +08:00
82ce816177 refactored top level parsing, need review 2021-08-10 10:37:06 +08:00
6ad953f877 top level class roughly handled, push for review 2021-08-10 10:37:06 +08:00
4db871c244 put alloca in init block 2021-08-09 16:37:28 +08:00
cc0692a34c modified alloca 2021-08-09 16:19:20 +08:00
7a90ff5791 while loop constructs 2021-08-09 16:10:17 +08:00
d8c713ce3d assignment statement 2021-08-09 15:39:50 +08:00
1ffb792000 make tuple a ptr to a struct instead of a struct 2021-08-07 17:41:48 +08:00
057fcfe3df default parameter value generation 2021-08-07 17:31:01 +08:00
86ca02796b function parameter handling 2021-08-07 17:25:14 +08:00
711482d09c expr codegen cleanup 2021-08-07 15:30:03 +08:00
7a38ab3119 codegen for function call 2021-08-07 15:06:39 +08:00
34d3317ea0 store operation method signature 2021-08-07 10:41:53 +08:00
c405e46b00 moving location and symbol_resolver out from typecheck 2021-08-07 10:28:41 +08:00
18db2ddd53 change the type TypeEnum::TObj {object_id} to DefinitionId as with top_level
change TopLevelDef::Class {object_id} to DefinitionId
2021-08-06 10:57:01 +08:00
fe26070364 cleanup basic_test_env 2021-08-06 10:57:01 +08:00
095f28468b added if expr 2021-08-05 16:52:41 +08:00
29286210b5 implementing codegen 2021-08-05 14:56:09 +08:00
b01d0f6fbb formatting 2021-08-05 14:56:09 +08:00
3dcd846302 added rayon dependency 2021-08-05 14:56:09 +08:00
c0227210df bit shift lhs rhs same type; float ** int and float ** float both supported 2021-08-05 11:55:46 +08:00
99c71687a6 fixed: bitwise shift rhs can only be int32; better structured code 2021-08-04 16:46:16 +08:00