pcpthm 
								
							 
						 
						
							
							
							
							
								
							
							
								a1d84f5fb0 
								
							 
						 
						
							
							
								
								Allow attribute on struct literal field  
							
							
							
						 
						
							2019-03-17 19:08:35 +09:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Michael Chesser 
								
							 
						 
						
							
							
							
							
								
							
							
								943d2fb781 
								
							 
						 
						
							
							
								
								Add test for minus in inner pattern  
							
							
							
						 
						
							2019-03-14 19:24:12 +10:30 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Caio 
								
							 
						 
						
							
							
							
							
								
							
							
								cc9721996c 
								
							 
						 
						
							
							
								
								Add test for async block  
							
							
							
						 
						
							2019-03-10 14:35:25 -03:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Caio 
								
							 
						 
						
							
							
							
							
								
							
							
								ad72699553 
								
							 
						 
						
							
							
								
								Add async keyword  
							
							
							
						 
						
							2019-03-09 20:40:22 -03:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Ville Penttinen 
								
							 
						 
						
							
							
							
							
								
							
							
								1f4468a8da 
								
							 
						 
						
							
							
								
								Add support for parsing multiple if and while-let patterns  
							
							
							
						 
						
							2019-03-04 19:10:14 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Aleksey Kladov 
								
							 
						 
						
							
							
							
							
								
							
							
								90122542b2 
								
							 
						 
						
							
							
								
								allow mut ident patterns in trait methods  
							
							... 
							
							
							
							closes  #928  
						
							2019-03-04 17:47:02 +03:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Aleksey Kladov 
								
							 
						 
						
							
							
							
							
								
							
							
								0a19f4f1b4 
								
							 
						 
						
							
							
								
								allow aliases in underscores  
							
							... 
							
							
							
							this helps with
    use foo::Trait as _;
syntax 
							
						 
						
							2019-03-04 16:40:08 +03:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									bors[bot] 
								
							 
						 
						
							
							
							
							
								
							
							
								dc8bcc1e42 
								
							 
						 
						
							
							
								
								Merge  #926  
							
							... 
							
							
							
							926: allow vararg functions r=matklad a=matklad
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com> 
							
						 
						
							2019-03-04 12:49:37 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Aleksey Kladov 
								
							 
						 
						
							
							
							
							
								
							
							
								77f2381eea 
								
							 
						 
						
							
							
								
								improve error recovery  
							
							... 
							
							
							
							parse the contents of error block as an expression 
							
						 
						
							2019-03-04 15:31:18 +03:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Aleksey Kladov 
								
							 
						 
						
							
							
							
							
								
							
							
								a99b1db49f 
								
							 
						 
						
							
							
								
								allow vararg functions  
							
							
							
						 
						
							2019-03-04 14:34:59 +03:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Aleksey Kladov 
								
							 
						 
						
							
							
							
							
								
							
							
								78f10fcdc4 
								
							 
						 
						
							
							
								
								rename type to type_alias in the AST as well  
							
							
							
						 
						
							2019-02-25 13:49:32 +03:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Aleksey Kladov 
								
							 
						 
						
							
							
							
							
								
							
							
								f7f99af0a6 
								
							 
						 
						
							
							
								
								kill utils module  
							
							
							
						 
						
							2019-02-21 15:57:40 +03:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Ville Penttinen 
								
							 
						 
						
							
							
							
							
								
							
							
								58d14bcaf7 
								
							 
						 
						
							
							
								
								Enable parsing attributes for generic lifetimes and type parameters  
							
							
							
						 
						
							2019-02-17 23:32:10 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Ville Penttinen 
								
							 
						 
						
							
							
							
							
								
							
							
								96e3ac389f 
								
							 
						 
						
							
							
								
								Parse only outer_attributes for match arms for now  
							
							
							
						 
						
							2019-02-17 19:48:08 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Ville Penttinen 
								
							 
						 
						
							
							
							
							
								
							
							
								1c97c1ac11 
								
							 
						 
						
							
							
								
								Enable parsing of attributes inside a match block  
							
							... 
							
							
							
							We allow invalid inner attributes to be parsed, e.g. inner attributes that are
not directly after the opening brace of the match block.
Instead we run validation on `MatchArmList` to allow better reporting of errors. 
							
						 
						
							2019-02-17 19:26:57 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Aleksey Kladov 
								
							 
						 
						
							
							
							
							
								
							
							
								4e91c23c79 
								
							 
						 
						
							
							
								
								rename yellow -> syntax_node  
							
							... 
							
							
							
							why yellow in the first place? Its red + green. 
							
						 
						
							2019-02-12 19:02:30 +03:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Aleksey Kladov 
								
							 
						 
						
							
							
							
							
								
							
							
								2efdf41bdb 
								
							 
						 
						
							
							
								
								make macro a NameOwner  
							
							
							
						 
						
							2019-02-11 19:24:13 +03:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Florian Diebold 
								
							 
						 
						
							
							
							
							
								
							
							
								f1afc93353 
								
							 
						 
						
							
							
								
								Fix handling of literal patterns  
							
							... 
							
							
							
							Wrap them in a LiteralPat node so they can be distinguished from literal
expressions. 
							
						 
						
							2019-02-09 21:37:30 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Aleksey Kladov 
								
							 
						 
						
							
							
							
							
								
							
							
								12e3b4c70b 
								
							 
						 
						
							
							
								
								reformat the world  
							
							
							
						 
						
							2019-02-08 14:49:43 +03:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Florian Diebold 
								
							 
						 
						
							
							
							
							
								
							
							
								e163c908ac 
								
							 
						 
						
							
							
								
								Add AST for extern crate  
							
							... 
							
							
							
							Also change it to parse the crate name as a NAME_REF, not a NAME. 
							
						 
						
							2019-02-04 21:49:34 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									DJMcNab 
								
							 
						 
						
							
							
							
							
								
							
							
								7417c0775b 
								
							 
						 
						
							
							
								
								Fix number of extern_inner_attributes  
							
							
							
						 
						
							2019-02-02 16:18:12 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									bors[bot] 
								
							 
						 
						
							
							
							
							
								
							
							
								97ade89993 
								
							 
						 
						
							
							
								
								Merge  #692  
							
							... 
							
							
							
							692: [WIP] Correctly parse attributes  r=matklad a=DJMcNab
Reference - https://doc.rust-lang.org/reference/attributes.html 
This fixes/investigates inner attributes for:
- [x] `impl` blocks
- [x] `extern` blocks
- [x] `fn`s (fixes  #689 )
- [x] `mod`s (already supported)
- [x] 'block expressions' (the long text just describes all 'blocks' used as statements)
This also investigates/fixes outer attributes for:
- [ ] 'most statements' (see also: #685 , https://doc.rust-lang.org/reference/expressions.html#expression-attributes )
- [x] Enum variants, Struct and Union fields (Fixed in #507 )
- [ ] 'Match expression arms' (@matklad can you provide a test case which explains what this means?)
- [ ] 'Generic lifetime or type parameters'
- [ ] 'Elements of array expressions, tuple expressions, call expressions, tuple-style struct and enum variant expressions'
- [ ] 'The tail expression of block expressions'
Co-authored-by: DJMcNab <36049421+djmcnab@users.noreply.github.com> 
							
						 
						
							2019-01-31 07:06:31 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Marcus Klaas de Vries 
								
							 
						 
						
							
							
							
							
								
							
							
								3daca3eb4d 
								
							 
						 
						
							
							
								
								Infer type of match guard  
							
							
							
						 
						
							2019-01-28 23:09:14 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									DJMcNab 
								
							 
						 
						
							
							
							
							
								
							
							
								00e6b5d26c 
								
							 
						 
						
							
							
								
								Parse and validate attributes in blocks  
							
							
							
						 
						
							2019-01-28 20:03:56 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									DJMcNab 
								
							 
						 
						
							
							
							
							
								
							
							
								137b1ccb71 
								
							 
						 
						
							
							
								
								Add a test for inner attributes on extern blocks  
							
							
							
						 
						
							2019-01-27 15:20:36 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									DJMcNab 
								
							 
						 
						
							
							
							
							
								
							
							
								73b075c556 
								
							 
						 
						
							
							
								
								Correctly parse inner attributes of impl blocks  
							
							
							
						 
						
							2019-01-27 14:55:03 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									DJMcNab 
								
							 
						 
						
							
							
							
							
								
							
							
								7055d43c3a 
								
							 
						 
						
							
							
								
								Make attrs be a child of the let statement  
							
							
							
						 
						
							2019-01-26 22:02:23 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									DJMcNab 
								
							 
						 
						
							
							
							
							
								
							
							
								55a3e21ac4 
								
							 
						 
						
							
							
								
								Support attributes on let statements  
							
							
							
						 
						
							2019-01-26 21:35:03 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									DJMcNab 
								
							 
						 
						
							
							
							
							
								
							
							
								7a76433c45 
								
							 
						 
						
							
							
								
								Struct literals should not be a BlockLike::Block  
							
							
							
						 
						
							2019-01-26 18:45:29 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									bors[bot] 
								
							 
						 
						
							
							
							
							
								
							
							
								2acaa92c93 
								
							 
						 
						
							
							
								
								Merge  #660  
							
							... 
							
							
							
							660: Support macro calls in type position r=matklad a=regiontog
A [playground](https://play.rust-lang.org/?version=stable&mode=debug&edition=2018&gist=fdc6dd4ddaece92a72fa2a292b75e27c ) demonstrating the syntax in question.
Co-authored-by: Erlend Tobiassen <erlend.tobiassen@gmail.com> 
							
						 
						
							2019-01-26 10:23:28 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Erlend Tobiassen 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								e28bd099d6 
								
							 
						 
						
							
							
								
								Support macro calls in type position  
							
							
							
						 
						
							2019-01-25 23:56:31 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Aleksey Kladov 
								
							 
						 
						
							
							
							
							
								
							
							
								23172a116c 
								
							 
						 
						
							
							
								
								rename POS_FIELD -> POS_FIELD_DEF  
							
							... 
							
							
							
							to match NAMED_FIELD_DEF 
							
						 
						
							2019-01-26 00:24:12 +03:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									DJMcNab 
								
							 
						 
						
							
							
							
							
								
							
							
								4899e7be76 
								
							 
						 
						
							
							
								
								Support universal function call syntax in function calls  
							
							
							
						 
						
							2019-01-24 21:19:16 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Josh Robson Chase 
								
							 
						 
						
							
							
							
							
								
							
							
								2ffea72f74 
								
							 
						 
						
							
							
								
								More correct raw ident handling  
							
							
							
						 
						
							2019-01-23 13:57:17 -05:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Josh Robson Chase 
								
							 
						 
						
							
							
							
							
								
							
							
								3b70acad01 
								
							 
						 
						
							
							
								
								Use IDENT for both raw and normal idents  
							
							
							
						 
						
							2019-01-23 13:19:49 -05:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Josh Robson Chase 
								
							 
						 
						
							
							
							
							
								
							
							
								1cd6d6539a 
								
							 
						 
						
							
							
								
								Add raw idents to lexer and parser  
							
							
							
						 
						
							2019-01-23 13:17:41 -05:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Erlend Tobiassen 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								c550c6759d 
								
							 
						 
						
							
							
								
								Add test for placeholder parameters in trait fn defs  
							
							
							
						 
						
							2019-01-22 18:46:15 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Erlend Tobiassen 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								8198cde13b 
								
							 
						 
						
							
							
								
								Update tests after allowing where predicate to accept types  
							
							
							
						 
						
							2019-01-22 14:32:23 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Marcus Klaas de Vries 
								
							 
						 
						
							
							
							
							
								
							
							
								fa43ef30f4 
								
							 
						 
						
							
							
								
								Change parsing of struct field patterns  
							
							
							
						 
						
							2019-01-19 15:37:26 +03:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Marcus Klaas de Vries 
								
							 
						 
						
							
							
							
							
								
							
							
								bcbfa2cc11 
								
							 
						 
						
							
							
								
								Finish move of StructField for pattern type inference  
							
							
							
						 
						
							2019-01-19 15:37:26 +03:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									DJMcNab 
								
							 
						 
						
							
							
							
							
								
							
							
								0b9e462ab0 
								
							 
						 
						
							
							
								
								Fix handling of attributes in positional field lists  
							
							
							
						 
						
							2019-01-12 15:42:12 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									DJMcNab 
								
							 
						 
						
							
							
							
							
								
							
							
								afdb569902 
								
							 
						 
						
							
							
								
								Fix handling of where clauses in tuple structs  
							
							
							
						 
						
							2019-01-10 18:21:01 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Aleksey Kladov 
								
							 
						 
						
							
							
							
							
								
							
							
								d91a98ec84 
								
							 
						 
						
							
							
								
								switch ra_syntax to new rowan API  
							
							
							
						 
						
							2019-01-08 11:20:15 +03:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Florian Diebold 
								
							 
						 
						
							
							
							
							
								
							
							
								bb029cd29b 
								
							 
						 
						
							
							
								
								Rename traits::impl_item -> impl_block as well, as well as the tests  
							
							
							
						 
						
							2019-01-04 19:15:15 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Florian Diebold 
								
							 
						 
						
							
							
							
							
								
							
							
								fe6c4115f6 
								
							 
						 
						
							
							
								
								Rename ImplItem to ImplBlock  
							
							... 
							
							
							
							rustc uses the name ImplItem for items in impls, not the impl {} block itself,
which could lead to confusion. 
							
						 
						
							2019-01-04 18:28:36 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									csmoe 
								
							 
						 
						
							
							
							
							
								
							
							
								8a6d6ac132 
								
							 
						 
						
							
							
								
								add mod doc comment test  
							
							
							
						 
						
							2019-01-04 21:28:09 +08:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									DJMcNab 
								
							 
						 
						
							
							
							
							
								
							
							
								0ddeb3b824 
								
							 
						 
						
							
							
								
								Fix the same bug as  #396  but for bytes too  
							
							
							
						 
						
							2019-01-01 12:10:21 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									DJMcNab 
								
							 
						 
						
							
							
							
							
								
							
							
								72ab6f7727 
								
							 
						 
						
							
							
								
								Fix the panic found whilst fuzzing  
							
							
							
						 
						
							2018-12-31 23:02:04 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									bors[bot] 
								
							 
						 
						
							
							
							
							
								
							
							
								c0d1b17a4e 
								
							 
						 
						
							
							
								
								Merge  #366  
							
							... 
							
							
							
							366: parse minus before number literal pattern r=matklad a=csmoe
r?@matklad

Co-authored-by: csmoe <csmoe@msn.com> 
							
						 
						
							2018-12-30 16:40:16 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									csmoe 
								
							 
						 
						
							
							
							
							
								
							
							
								53c94e3ad8 
								
							 
						 
						
							
							
								
								parse minus before number literal  
							
							
							
						 
						
							2018-12-30 23:25:07 +08:00