aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* | | | | | Merge #4083bors[bot]2020-05-134-153/+2877
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4083: Smol documentation for ast nodes r=matklad a=Veetaha There is a tremendous amount of TODOs to clarify the topics I am not certain about. Please @matklad, @edwin0cheng review carefully, I even left some mentions of your names in todos to put your attention where you most probably can give comments. In order to simplify the review, I separated the codegen (i.e. changes in `ast/generated/nodes.rs`) from `ast_src` changes (they in fact just duplicate one another) into two commits. Also, I had to hack a little bit to let the docs be generated as doc comments and not as doc attributes because it's easier to read them this way and IIRC we don't support hints for `#[doc = ""]` attributes for now... Closes #3682 Co-authored-by: veetaha <[email protected]>
| * | | | | | Convert TODO about ParamList used in closures to a FIXMEveetaha2020-05-121-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | cc @matklad (you didn't comment on this one)
| * | | | | | Remove an equals sign from `ConstArg` (this probably pertains only to ↵veetaha2020-05-122-4/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ConstParam) (As per matklad)
| * | | | | | Remove a comment on NameRefToken as per matkladveetaha2020-05-121-1/+1
| | | | | | |
| * | | | | | Convert TODO to a FIXME as per matkladveetaha2020-05-121-1/+1
| | | | | | |
| * | | | | | Convert TODO to a Note(matklad)veetaha2020-05-122-1/+2
| | | | | | |
| * | | | | | Convert to TODOs to FIXMEs as per matkladveetaha2020-05-122-8/+4
| | | | | | |
| * | | | | | Revert "Remove MacroStmts as per edwin0cheng" (cc @edwin0cheng) and add a ↵veetaha2020-05-122-0/+45
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | fixme to document it. This reverts commit 7a49165f5d5c8186edd04f874eae8a98e39d3df6. MacroStmts ast node is not used by itself, but it pertains to SyntaxNodeKind MACRO_STMTS that is used by ra_paser, so even tho the node itself is not used, it is better to keep it with a FIXME to actually add a doc comment when it becomes useful.
| * | | | | | Add a doc comment on the difference between Name and NameRef ast nodesveetaha2020-05-122-2/+32
| | | | | | |
| * | | | | | Resolve TODO about macro 2.0 defveetaha2020-05-102-14/+8
| | | | | | |
| * | | | | | Fix typoveetaha2020-05-102-2/+2
| | | | | | |
| * | | | | | Carify on a semicolon in macro callveetaha2020-05-102-3/+13
| | | | | | |
| * | | | | | Resolve TODO about curly-braced constructions in expression statementveetaha2020-05-102-2/+6
| | | | | | |
| * | | | | | Remove TODO about Block since it was removedveetaha2020-05-101-3/+3
| | | | | | |
| * | | | | | Resolve todos about refs and empty statementsveetaha2020-05-102-9/+8
| | | | | | |
| * | | | | | Converted TODO about MacroItems to FIXME as per edwin0chengveetaha2020-05-102-14/+5
| | | | | | |
| * | | | | | Verified ConstArg example, waiting for response on what `=` sign pertains toveetaha2020-05-102-5/+4
| | | | | | |
| * | | | | | Correcy use tree and type args docsveetaha2020-05-102-8/+6
| | | | | | |
| * | | | | | Fix "show syntax tree" commandveetaha2020-05-101-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | @matlkad please don't forget to keep it up-to-date!
| * | | | | | Correct `use` cannot have type args as per flodieboldveetaha2020-05-102-2/+2
| | | | | | |
| * | | | | | Correct path docs and add colon2 token to Path ast nodeveetaha2020-05-102-20/+28
| | | | | | |
| * | | | | | Add example with const in TypeBound as per flodieboldveetaha2020-05-102-5/+3
| | | | | | |
| * | | | | | Remove todo comment about arg vs param difference as per clarification from ↵veetaha2020-05-101-4/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | flodiebold
| * | | | | | Properly document const impl as per flodieboldveetaha2020-05-102-4/+4
| | | | | | |
| * | | | | | Remove on TypeAliasDef as per flodieboldveetaha2020-05-101-2/+1
| | | | | | |
| * | | | | | Remove MacroStmts as per edwin0chengveetaha2020-05-102-47/+0
| | | | | | |
| * | | | | | Add proper docs for TokenTree as per edwin0chengveetaha2020-05-102-2/+4
| | | | | | |
| * | | | | | Run codegen of ast types with documentationveetaha2020-05-101-138/+1345
| | | | | | |
| * | | | | | Add ast docs to codegen scriptveetaha2020-05-102-17/+1515
| | | | | | |
* | | | | | | Merge #4441bors[bot]2020-05-131-2/+2
|\ \ \ \ \ \ \ | |_|_|/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4441: fix typo unimplementated -> unimplemented r=edwin0cheng a=tspiteri Pretty harmless typo, but it does get exposed in lsp-rust-analyzer-expand-macro. Co-authored-by: Trevor Spiteri <[email protected]>
| * | | | | | fix typo unimplementated -> unimplementedTrevor Spiteri2020-05-121-2/+2
|/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | Pretty harmless typo, but it does get exposed in lsp-rust-analyzer-expand-macro.
* | | | | | Merge #4439bors[bot]2020-05-121-33/+45
|\ \ \ \ \ \ | |_|_|/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4439: Update crates r=kjeremy a=kjeremy Co-authored-by: kjeremy <[email protected]>
| * | | | | Update crateskjeremy2020-05-121-33/+45
|/ / / / /
* | | | | Merge #4436bors[bot]2020-05-122-10/+10
|\ \ \ \ \ | |_|/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4436: Use .rust suffix on scopes r=matklad a=georgewfraser This PR should have no effect on people using any of the default themes, but it is possible there are people with custom themes that rely on the .rust suffix on textmate scopes, which I neglected to use consistently in #4397. Co-authored-by: George Fraser <[email protected]>
| * | | | Use .rust suffix on scopesGeorge Fraser2020-05-122-10/+10
|/ / / /
* | | | Merge pull request #4427 from matklad/oldAleksey Kladov2020-05-111-8/+8
|\ \ \ \ | | | | | | | | | | Use older ubuntu for releases
| * | | | Use older ubuntu for releasesAleksey Kladov2020-05-111-8/+8
| | | | |
* | | | | Merge #4423bors[bot]2020-05-111-0/+26
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4423: add tests module snippet r=bnjjj a=bnjjj Request from a friend coming from intellij Rust Co-authored-by: Benjamin Coenen <[email protected]>
| * | | | | add tests module snippetBenjamin Coenen2020-05-111-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Benjamin Coenen <[email protected]>
| * | | | | add tests module snippetBenjamin Coenen2020-05-111-0/+18
| |/ / / / | | | | | | | | | | | | | | | Signed-off-by: Benjamin Coenen <[email protected]>
* | | | | Merge #4358bors[bot]2020-05-112-3/+207
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4358: add if let and while let postfix for Option and Result #4348 r=matklad a=bnjjj close #4348 I also added `while let` for iterator or stream it could be useful ![iflet](https://user-images.githubusercontent.com/5719034/81278000-676c6b80-9055-11ea-87ad-6b8476dd983f.gif) Co-authored-by: Benjamin Coenen <[email protected]>
| * | | | | add if let and while let postfix for Option and ResultBenjamin Coenen2020-05-103-62/+46
| | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Benjamin Coenen <[email protected]>
| * | | | | Merge branch 'master' of github.com:rust-analyzer/rust-analyzer into feat_4348Benjamin Coenen2020-05-1079-1058/+1920
| |\ \ \ \ \ | | | |_|/ / | | |/| | |
| * | | | | add if let and while let postfix for Option and Result #4348Benjamin Coenen2020-05-072-1/+221
| | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Benjamin Coenen <[email protected]>
* | | | | | Merge #4397bors[bot]2020-05-117-11/+734
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4397: Textmate cooperation r=matklad a=georgewfraser This PR tweaks the fallback TextMate scopes to make them more consistent with the existing grammar and other languages, and edits the builtin TextMate grammar to align with semantic coloring. Before is on the left, after is on the right: <img width="855" alt="Screen Shot 2020-05-10 at 1 45 51 PM" src="https://user-images.githubusercontent.com/1369240/81512320-a8be7e80-92d4-11ea-8940-2c03f6769015.png"> **Use keyword.other for regular keywords instead of keyword**. This is a really peculiar quirk of TextMate conventions, but virtually *all* TextMate grammars use `keyword.other` (colored blue in VSCode Dark+) for regular keywords and `keyword.control` (colored purple in VSCode Dark+) for control keywords. The TextMate scope `keyword` is colored like control keywords, not regular keywords. It may seem strange that the `keyword` scope is not the right fallback for the `keyword` semantic token, but TextMate has a long and weird history. Note how keywords change from purple back to blue (what they were before semantic coloring was added): **(1) Use punctuation.section.embedded for format specifiers**. This aligns with how Typescript colors formatting directives: <img width="238" alt="Screen Shot 2020-05-09 at 10 54 01 AM" src="https://user-images.githubusercontent.com/1369240/81481258-93b5f280-91e3-11ea-99c2-c6d258c5bcad.png"> **(2) Consistently use `entity.name.type.*` scopes for type names**. Avoid using `entity.name.*` which gets colored like a keyword. **(3) Use Property instead of Member for fields**. Property and Member are very similar, but if you look at the TextMate fallback scopes, it's clear that Member is intended for function-like-things (methods?) and Property is intended for variable-like-things. **(4) Color `for` as a regular keyword when it's part of `impl Trait for Struct`**. **(5) Use `variable.other.constant` for constants instead of `entity.name.constant`**. In the latest VSCode insiders, variable.other.constant has a subtly different color that differentiates constants from ordinary variables. It looks close to the green of types but it's not the same---it's a new color recently added to take advantage of semantic coloring. I also made some minor changes that make the TextMate scopes better match the semantic scopes. The effect of this for the user is you observe less of a change when semantic coloring "activates". You can see the changes I made relative to the built-in TextMate grammar here: https://github.com/rust-analyzer/rust-analyzer/pull/4397/files/a91d15c80c337dd1afb0eddd5eb048010d098ac7..97428b6d52d25f810dbd7d7a8d787740c58bfbd2#diff-6966c729b862f79f79bf7258eb3e0885 Co-authored-by: George Fraser <[email protected]>
| * | | | | | Put sigil back to keyword.operatorGeorge Fraser2020-05-101-2/+2
| | | | | | |
| * | | | | | Change lifetimes back to keyword-ish, tweak builtins for consistency between ↵George Fraser2020-05-102-7/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | TextMate and semantic
| * | | | | | Color `for` as a regular keyword when it's part of impl _ for _George Fraser2020-05-103-1/+28
| | | | | | |
| * | | | | | Color `in` as a control keywordGeorge Fraser2020-05-103-1/+10
| | | | | | |
| * | | | | | Color `as` as a keywordGeorge Fraser2020-05-101-2/+2
| | | | | | |