aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_syntax/src
Commit message (Collapse)AuthorAgeFilesLines
...
* | Added test for check doc strings in crates.Alexander Andreev2019-09-3011-1/+21
|/ | | | #1856
* Merge #1815bors[bot]2019-09-271-0/+10
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1815: Support correct `$crate` expansion in macros r=uHOOCCOOHu a=uHOOCCOOHu This PR makes normal use cases of `$crate` from macros work as expected. It makes more macros from `std` work. Type inference works well with `panic`, `unimplemented`, `format`, and maybe more. Sadly that `vec![1, 2, 3]` still not works, but it is not longer an issue about macro. Screenshot: ![Screenshot_20190927_022136](https://user-images.githubusercontent.com/14816024/65714465-b4568f80-e0cd-11e9-8043-dd44c2ae8040.png) Co-authored-by: uHOOCCOOHu <[email protected]>
| * Refactor `Name` ready for hygienic macrouHOOCCOOHu2019-09-261-0/+10
| |
* | Start simplifying editing APIAleksey Kladov2019-09-263-0/+101
|/
* move diff to ra_syntaxAleksey Kladov2019-09-261-0/+42
|
* keep ast creation API simpleAleksey Kladov2019-09-262-0/+136
|
* add new editing API, suitable for modifying several nodes at onceAleksey Kladov2019-09-252-0/+41
|
* fewer monomorphisationsAleksey Kladov2019-09-251-2/+2
|
* simplifyAleksey Kladov2019-09-241-4/+1
|
* Support path starting with a typeuHOOCCOOHu2019-09-152-1/+4
|
* Add `DotDotPat` to ASTDylan MacKenzie2019-09-152-2/+38
| | | | This is modeled on `PlaceholderPat`.
* Infer box expressionuHOOCCOOHu2019-09-112-3/+39
|
* WIP: switch to fully decomposed tokens internallyAleksey Kladov2019-09-101-1/+15
|
* Fix outer doc-comments of `macro_rules`uHOOCCOOHu2019-09-091-2/+2
|
* Lower `Fn(X, Y) -> Z` pathsFlorian Diebold2019-09-072-1/+7
|
* Merge #1743bors[bot]2019-09-052-0/+2
|\ | | | | | | | | | | | | | | 1743: Support `#[macro_use]` on `extern crate` r=matklad a=uHOOCCOOHu Unfortunately, #1688 is still an issue. My guess is wrong :( Co-authored-by: uHOOCCOOHu <[email protected]>
| * Support resolution of `#[macro_use] extern crate`uHOOCCOOHu2019-08-312-0/+2
| |
* | Correctly build BodySourceMap for macro-expanded expressionsAleksey Kladov2019-09-031-2/+3
| |
* | fix assistsAleksey Kladov2019-09-021-0/+20
| |
* | fix hir for new block syntaxAleksey Kladov2019-09-024-6/+6
| |
* | fix generated ASTAleksey Kladov2019-09-023-3/+4
| |
* | always wrap block into an expressionAleksey Kladov2019-09-022-11/+11
| |
* | remove useless traitAleksey Kladov2019-09-023-9/+6
| |
* | Add an expr_source method analogous to the source methods in the code modelFlorian Diebold2019-09-021-3/+2
|/ | | | ... and use that instead of exposing the source map.
* Merge #1734bors[bot]2019-08-251-0/+7
|\ | | | | | | | | | | | | | | 1734: Strip indents and empty lines in check_apply_diagnostic_fix_from_position r=matklad a=matklad Co-authored-by: Phil Ellison <[email protected]>
| * Cast SyntaxNodePtr to AstPtr directlyPhil Ellison2019-08-251-0/+7
| |
* | Add `BoxPat` variantDylan MacKenzie2019-08-232-2/+40
|/
* rename struct -> record, pos -> tupleAleksey Kladov2019-08-237-295/+295
|
* make ast object safeAleksey Kladov2019-08-231-2/+10
|
* Improve/fix type bound loweringFlorian Diebold2019-08-221-26/+29
|
* Add `impl Trait` and `dyn Trait` typesFlorian Diebold2019-08-222-1/+27
| | | | | | | - refactor bounds handling in the AST a bit - add HIR for bounds - add `Ty::Dyn` and `Ty::Opaque` variants and lower `dyn Trait` / `impl Trait` syntax to them
* Don't add `?` bounds as real boundsAleksey Kladov2019-08-221-0/+12
| | | | closes #1709
* :arrow_up: rustc_lexerAleksey Kladov2019-08-202-116/+74
|
* remove ast::*Kind enumsAleksey Kladov2019-08-192-353/+347
| | | | With the new owned trees, we don't need an indirection here
* use new quote-generated astAleksey Kladov2019-08-182-1289/+1408
|
* use quote! macro to generate grammarAleksey Kladov2019-08-181-27/+27
| | | | | We already use syn&quote elsewhere (transitively), so it make sense to cut down on the number of technologies and get rid of tera
* deserialize grammarAleksey Kladov2019-08-181-53/+53
|
* Introduce separate hir::BinaryOpAleksey Kladov2019-08-171-6/+0
| | | | | Unlike ast::BinOp, it has significantly more structure to it, so it's easier to, say, handle all assignment-like operations in the same way.
* implement accessors for IndexExprAleksey Kladov2019-08-171-0/+9
|
* simplifyAleksey Kladov2019-08-171-35/+36
|
* Lower fully qualified associated type pathsFlorian Diebold2019-08-121-0/+10
| | | | I.e. `<T as Trait>::Foo`.
* Move numeric names inside of `NameRef`Aleksey Kladov2019-08-092-18/+20
|
* Change macro to functionEvgenii P2019-08-091-15/+13
|
* rustfmtEvgenii P2019-08-091-10/+10
|
* Reduce code duplication in lexer by introducing small macroEvgenii P2019-08-091-20/+17
|
* Add function parameters attributesEvgenii P2019-08-072-0/+4
|
* Unconditionally trim the end of commentskjeremy2019-07-312-13/+5
|
* Removes `*/` in block doc commentskjeremy2019-07-312-2/+62
|
* Add explicit newline preserving testskjeremy2019-07-311-0/+17
|
* Merge #1604bors[bot]2019-07-291-3/+19
|\ | | | | | | | | | | | | | | 1604: Fix failing type interference for floating point literal r=matklad a=theotherphil Fixes https://github.com/rust-analyzer/rust-analyzer/issues/1592 Co-authored-by: Phil Ellison <[email protected]>