Commit Graph

128 Commits

Author SHA1 Message Date
ffb3515aaa Implement generic type swapping 2025-08-25 20:49:38 +03:00
6fbb26ba88 Start adding generics-pass 2025-08-25 20:04:30 +03:00
91fd0d4d5a Add generic typedef 2025-08-25 19:18:25 +03:00
ff83d7b4f0 Add generics to MIR data structures 2025-08-25 18:46:29 +03:00
407c681cb6 Add ordering for how types are chosen for binops 2025-08-16 17:36:37 +03:00
7b4f38406d Add some initial documentation support for functions 2025-08-14 16:28:33 +03:00
8d32f2bbad Add a lot more references to types in places 2025-08-05 23:57:45 +03:00
8a178387ca Allow initializing foreign structs as well 2025-08-04 22:33:06 +03:00
5d19d38682 Add intrinsic min/max to integers and floats 2025-08-04 17:51:32 +03:00
018f3e2561 Fix function signature meta for extern functions 2025-08-03 18:45:27 +03:00
bb9f69ee53 Add autocomplete for imports 2025-08-02 23:03:11 +03:00
b71c253942 Add types to hovers in LSP, fix around and add metas 2025-07-29 21:39:14 +03:00
7d3aaa143a Start adding type-information to tooltips 2025-07-29 20:44:15 +03:00
6619f1f0a9 Add simple error diagnostic from parser 2025-07-29 19:53:12 +03:00
f700c577f1 Add reading file to buffer macro, only works for one global per file 2025-07-29 00:50:07 +03:00
2207c3df83 Add initial support for array globals 2025-07-29 00:06:47 +03:00
735c3231b1 Make macros generate globals 2025-07-28 23:49:22 +03:00
3d8f4bbd24 Implement macro-pass 2025-07-28 22:37:24 +03:00
33ed1fd813 Add macro call convention 2025-07-28 22:18:30 +03:00
67a5fcd002 Basically revert everything, create macro-pass 2025-07-28 22:11:46 +03:00
2e153922f1 Start adding macros 2025-07-28 21:54:51 +03:00
beaba4e7de Mangle function names, except for user defined externs 2025-07-28 20:25:36 +03:00
b643c13582 Use metadata instead of names for allocator identification 2025-07-28 19:22:03 +03:00
a4e18af983 Add intrinsic bit-operators 2025-07-28 12:16:14 +03:00
49084ea0af Add AST -> MIR for bitwise-operations and or 2025-07-28 11:59:20 +03:00
1f56fa5dc3 Fix using self within self 2025-07-28 00:41:35 +03:00
dc360ef196 Implement importing of associated functions with types 2025-07-27 23:28:24 +03:00
676554b6a0 Improve deref parsing 2025-07-27 22:24:38 +03:00
ab94bd7df0 Add AST -> MIR processing for associated functions 2025-07-27 03:08:34 +03:00
a253c032d8 Add parsing for &self and &mut self 2025-07-27 02:49:08 +03:00
0196fb53ed Import binops while importing types as well 2025-07-26 13:18:55 +03:00
269de327b8 Allow importing types 2025-07-26 00:57:39 +03:00
307137d0d9 Fix a significant problem in how the typerefs aren't narrowed properly 2025-07-25 20:16:54 +03:00
8d3dd4a49f Improve binop type narrowing 2025-07-25 16:55:32 +03:00
f8d2e4996a Refactor typecheck into it's own module 2025-07-25 16:19:55 +03:00
0b3ee3bf92 Refactor some more 2025-07-25 15:55:14 +03:00
6ee43d4012 Refactor stuff into codegen-module 2025-07-25 15:52:52 +03:00
be3c415a57 Implement void returns 2025-07-24 21:54:55 +03:00
8810d34d54 Get intrinsics to inline at codegen 2025-07-24 17:14:49 +03:00
9f7022b4c0 Add operator to scopebinop, add some typechecking for binops 2025-07-24 15:09:27 +03:00
aec7d55e9b Add codegen to custom binops 2025-07-24 15:03:05 +03:00
a7795f83db Use FunctionDefinitionKind for binops 2025-07-24 13:40:06 +03:00
50af50c43f Typecheck custom binops 2025-07-24 13:07:49 +03:00
974c7e98f1 Add AST -> MIR for custom binops 2025-07-24 12:34:16 +03:00
954f3438d3 Codegen intrinsics 2025-07-24 11:56:44 +03:00
5ff5651f5f Work on intrinsics, clean up code a bit 2025-07-24 11:29:58 +03:00
4bef1c2379 Start implementing intrinsics 2025-07-24 01:39:49 +03:00
75a7a435d1 Make for-loops syntax sugar instead 2025-07-23 20:44:30 +03:00
1a5e3ef1d9 Add loops ast -> mir 2025-07-23 20:29:13 +03:00
8b79959288 Fix typedefinition in scope 2025-07-23 15:34:01 +03:00