Commit Graph

88 Commits

Author SHA1 Message Date
Luna c80f887597 update to latest zig 2020-07-23 16:38:26 -03:00
Luna 38f0b04351 updates for latest zig 2020-04-10 16:48:10 -03:00
Luna f9e8543b7c fixes for latest zig 2019-12-07 19:45:12 -03:00
Luna 8bce47f5cc add for statements 2019-08-29 14:30:33 -03:00
Luna 9781a28df7 add enum support 2019-08-27 12:31:02 -03:00
Luna 6ab7cdbe20 add array parsing 2019-08-27 12:19:10 -03:00
Luna 4479e78356 scanner: fix SlashEqual generation not skipping its own chars
- parser: allow SlashEqual on main mkAssign/mkSet call
 - readme: += and gang are done
2019-08-27 12:05:29 -03:00
Luna e0a60ddc2c add SlashEqual operator 2019-08-27 11:58:32 -03:00
Luna eb7a485206 parser: simplify finishAssignment, add StarEqual support 2019-08-27 11:54:21 -03:00
Luna a0808b54aa parser: add PlusEqual and MinusEqual to Get expressions 2019-08-27 11:29:17 -03:00
Luna 8007f9e860 add PlusEqual and MinusEqual for variable assignment 2019-08-27 11:25:04 -03:00
Luna ac5d29819c split access modifier parsing into own func
- revamp parsing of access modifiers so it is correct
2019-08-26 21:43:58 -03:00
Luna 96d48f8762 tokens: add pub TokenType 2019-08-26 21:32:10 -03:00
Luna fc4b84b51c scanner: add pub keyword 2019-08-26 21:31:57 -03:00
Luna a706f077cb add pub/mut modifiers to struct fields 2019-08-26 21:31:01 -03:00
Luna 1572b913f8 ast_printer: print return types 2019-08-26 21:12:41 -03:00
Luna 20e5c2339f ast_printer: add support for method data 2019-08-26 20:36:48 -03:00
Luna e0d712cd9f split pre-method into parsePreMethod 2019-08-26 20:31:15 -03:00
Luna a72346b888 s/consume/consumeSingle 2019-08-26 20:23:11 -03:00
Luna 5f8d9da6fa parser: add incomplete parsing of method functions 2019-08-26 20:21:39 -03:00
Luna e2f7343242 allow optional return types on functions 2019-08-26 17:26:20 -03:00
Luna 9eaa71cbd6 remove some debug calls 2019-08-26 15:29:59 -03:00
Luna 9e32ff9e16 parser: split into finishAssignment 2019-08-26 15:19:31 -03:00
Luna c3f0b4b4d5 parser: simplify parseBlock 2019-08-26 14:59:14 -03:00
Luna 1c8eda7305 ast: remove Expr Node (lives under Stmt) 2019-08-26 14:48:53 -03:00
Luna b382c136ec parser: make parseExpr return Expr instead of Node 2019-08-26 14:46:00 -03:00
Luna 45b027e90f add assignment to struct fields 2019-08-26 13:29:45 -03:00
Luna d55137a7c7 lift restraint on Calls being only made to Variables 2019-08-26 13:17:25 -03:00
Luna 0ecfb75081 add struct field getting 2019-08-26 13:15:08 -03:00
Luna c2499f96c9 add struct intialization 2019-08-26 11:59:32 -03:00
Luna 19fd9daebf add structs 2019-08-26 10:49:43 -03:00
Luna 45ae160b76 move ast printing functions to ast_printer.zig 2019-08-26 10:25:14 -03:00
Luna a3127c76e7 remove optional from parseTopDecl 2019-08-26 09:54:01 -03:00
Luna 90543d1d56 parser: make internal tokens use ArrayList(Token) 2019-08-25 23:59:01 -03:00
Luna 8f7535e14e parser: remove dead code 2019-08-25 23:55:19 -03:00
Luna c0c93183cb add return statements 2019-08-25 23:16:13 -03:00
Luna 8f44cbea23 parser: ensure calls only happen to Variables 2019-08-25 22:55:53 -03:00
Luna 5ba807d93f add function calls 2019-08-25 22:41:25 -03:00
Luna 4f0c43865f add loop parsing 2019-08-25 17:14:25 -03:00
Luna 19b79514b4 ast: rename IfBranch to Block, add LoopStmt 2019-08-25 16:57:22 -03:00
Luna 460055e186 add loop keyword 2019-08-25 16:49:08 -03:00
Luna 1ab966b853 add boolean AND and boolean OR 2019-08-25 13:21:22 -03:00
Luna 9b3e9e8139 add if statements 2019-08-25 13:02:40 -03:00
Luna 83910811fa ast: add IfStmt and IfBranch 2019-08-25 12:31:57 -03:00
Luna f9f6362c91 ast: add return type to FnDecl
- ast: make FnDecl and Const print better as s-expressions
2019-08-25 12:24:34 -03:00
Luna 4534549f41 fix var declarations by making them expressions 2019-08-25 11:38:55 -03:00
Luna 72bc932d23 add assignment support (without mut) 2019-08-25 10:27:50 -03:00
Luna 366be14cea add assignment of mutable variables 2019-08-24 17:46:42 -03:00
Luna 7c4aa04b00 ast: add printing of Variable Expr 2019-08-24 17:25:08 -03:00
Luna d93adbbd3e vardecl: add VarDecl statement and Variable Expr
- ast: simplify stmt printing from printNode
 - parser: create variables on parsePrimary
2019-08-24 17:22:08 -03:00