Commit graph

450 commits

Author SHA1 Message Date
Aleksey Kladov
8105c14454 Improve debug_dump performance 2018-07-31 22:14:56 +03:00
Aleksey Kladov
5d8cef4c0e update text-unit 2018-07-31 21:43:28 +03:00
Aleksey Kladov
f4c106f86a Lifetimes in self param 2018-07-31 20:48:45 +03:00
Aleksey Kladov
599ca1ad89 dref-expr 2018-07-31 20:44:54 +03:00
Aleksey Kladov
ce3462ce8f struct literals 2018-07-31 20:38:36 +03:00
Aleksey Kladov
eba1e8a334 function type params 2018-07-31 19:58:12 +03:00
Aleksey Kladov
3d70aeb412 Use names&refs 2018-07-31 19:55:33 +03:00
Aleksey Kladov
63e2ed4e75 Nodes for type args 2018-07-31 19:37:40 +03:00
Aleksey Kladov
cd814fdf81 trait bounds 2018-07-31 18:24:30 +03:00
Aleksey Kladov
892acc5b36 impl items 2018-07-31 18:03:50 +03:00
Aleksey Kladov
edf2b17a57 allow items inside blocks 2018-07-31 17:43:44 +03:00
Aleksey Kladov
9f87c9a3f9 Field expr 2018-07-31 17:35:54 +03:00
Aleksey Kladov
9ce7e81102 cleanups 2018-07-31 15:40:40 +03:00
Aleksey Kladov
2a2815266b refactor ascription 2018-07-31 15:35:59 +03:00
Aleksey Kladov
f843f23aba Type ascription in let 2018-07-31 15:33:51 +03:00
Aleksey Kladov
580340d1b8 mut bindings 2018-07-31 15:30:11 +03:00
Aleksey Kladov
346f6e4f7d impl type&trait 2018-07-31 15:08:04 +03:00
Aleksey Kladov
9dcb79a602 Bare & default impls 2018-07-31 14:00:22 +03:00
Aleksey Kladov
407ebbc552 More fool-proof API 2018-07-31 13:49:03 +03:00
Aleksey Kladov
87b5e14c75 Fix indexing errors 2018-07-31 13:41:30 +03:00
Aleksey Kladov
9e02e432b5 expr stmt 2018-07-31 12:59:52 +03:00
Aleksey Kladov
66182ed5d5 Ref exprs 2018-07-31 12:51:00 +03:00
Aleksey Kladov
ff71cb1f6d Introduce param & arg list 2018-07-31 12:32:53 +03:00
Aleksey Kladov
c244dd1034 Call expr 2018-07-31 12:26:19 +03:00
Aleksey Kladov
aea86d154e stackless traversal 2018-07-30 23:45:10 +03:00
Aleksey Kladov
70b3372921 Don't allocate when traversing children 2018-07-30 23:20:02 +03:00
Aleksey Kladov
27a40e0a88 type param defaults 2018-07-30 22:27:23 +03:00
Aleksey Kladov
72d49c5a10 cmd to install code extension 2018-07-30 22:17:33 +03:00
Aleksey Kladov
ac0d8c48f7 JS plugin 2018-07-30 21:58:49 +03:00
Aleksey Kladov
6fc66c4ee6 Use boxed sliced for red nodes 2018-07-30 18:14:14 +03:00
Aleksey Kladov
beaddb4780 Intern static tokens 2018-07-30 18:11:33 +03:00
Aleksey Kladov
60e8a845ca simplify codegen 2018-07-30 18:02:13 +03:00
Aleksey Kladov
7fb7cfc2d1 generate single byte tokens 2018-07-30 17:46:50 +03:00
Aleksey Kladov
d436694097 Path expressions 2018-07-30 17:02:51 +03:00
Aleksey Kladov
69c385e810 Fix compilation for real 2018-07-30 16:32:27 +03:00
Aleksey Kladov
67424000a9 Fix compilation 2018-07-30 16:25:10 +03:00
Aleksey Kladov
3b6a6f6673 Add render test functionality 2018-07-30 16:16:58 +03:00
Aleksey Kladov
d39198490f fn ret type 2018-07-30 15:32:19 +03:00
Aleksey Kladov
333e140a50 Mior 2018-07-30 15:25:52 +03:00
Aleksey Kladov
d30a2e4fac Don\'t block on rustfmt 2018-07-30 15:07:41 +03:00
Aleksey Kladov
9f1f2f952c nightly rustfmt 2018-07-30 14:14:11 +03:00
Aleksey Kladov
1edb58a802 reformat 2018-07-30 14:08:06 +03:00
Aleksey Kladov
6983091d6d Cleanup tools 2018-07-30 14:06:22 +03:00
Aleksey Kladov
9a4957d143 clean comments 2018-07-30 12:52:59 +03:00
Aleksey Kladov
97bb223279 Remove indirection 2018-07-30 12:46:42 +03:00
Aleksey Kladov
a2a810f118 Add parent links 2018-07-30 12:44:14 +03:00
Aleksey Kladov
423298dddd Trait for tree root 2018-07-30 12:37:03 +03:00
Aleksey Kladov
ae849cf134 Owned&Borrowed nodes
HOLLY COW, UNLIKE C++, WE CAN BE GENERIC WRT OWNERSHIP/BORROWING, SO
WE CAN BOTH MAKE SYNTAX NODES OWNED (WHICH IS CONVENIENT) AND
BORROWED (WHICH IS CONVENIENT FOR LOCAL PROCESSING, BC YOU DON'T NEED
TO BUMP REFCOUNTS).
2018-07-30 03:21:17 +03:00
Aleksey Kladov
83acbc06bd No need to Arc reds, they are rooted anyways 2018-07-30 02:39:26 +03:00
Aleksey Kladov
4e79073e38 Use raw pointers 2018-07-30 02:23:07 +03:00