aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_syntax
Commit message (Collapse)AuthorAgeFilesLines
* Validate string literalsAdolfo Ochagavía2018-11-099-274/+621
|
* Complete paths in use treesAleksey Kladov2018-11-071-0/+9
|
* rename ROOT -> SOURCE_FILEAleksey Kladov2018-11-07183-232/+231
|
* Rename File -> SourceFileNodeAleksey Kladov2018-11-075-24/+24
|
* Add some more DocCommentsOwnerJeremy A. Kolb2018-11-072-2/+14
|
* Merge #207bors[bot]2018-11-077-13/+234
|\ | | | | | | | | | | | | | | 207: Finish implementing char validation r=aochagavia a=aochagavia The only thing missing right now are good integration tests (and maybe more descriptive error messages) Co-authored-by: Adolfo Ochagavía <[email protected]>
| * Fix backslash escapeAdolfo Ochagavía2018-11-071-2/+4
| |
| * Use ArrayString instead of hand rolled data structureAdolfo Ochagavía2018-11-074-39/+5
| |
| * cargo formatAdolfo Ochagavía2018-11-072-30/+39
| |
| * Add lots of testsAdolfo Ochagavía2018-11-073-6/+125
| |
| * Store hex digits in a stack-allocated bufferAdolfo Ochagavía2018-11-072-5/+45
| |
| * Finish implementing char validationAdolfo Ochagavía2018-11-063-8/+93
| |
* | ra_syntax::File is just RootNodeAleksey Kladov2018-11-064-206/+969
| |
* | Add a pinch of commentsAleksey Kladov2018-11-063-0/+16
| |
* | Generalize Owned nodesAleksey Kladov2018-11-062-1806/+1237
| |
* | grammar: fix where clause parsingAleksey Kladov2018-11-063-1/+35
| | | | | | | | closes #205
* | upstream basic tree algorithms to rowanAleksey Kladov2018-11-063-107/+10
|/
* Merge #188bors[bot]2018-11-0510-66/+183
|\ | | | | | | | | | | | | | | | | 188: Introduce `SyntaxErrorKind` and `TextRange` to `SyntaxError` r=matklad a=aochagavia Co-authored-by: Adolfo Ochagavía <[email protected]> Co-authored-by: Adolfo Ochagavía <[email protected]>
| * cargo formatAdolfo Ochagavía2018-11-052-5/+9
| |
| * Introduce Location and make SyntaxError fields privateAdolfo Ochagavía2018-11-059-50/+72
| |
| * Introduce SyntaxErrorKind and TextRange in SyntaxErrorAdolfo Ochagavía2018-11-049-62/+153
| |
* | bring back testutilsAleksey Kladov2018-11-051-1/+1
| |
* | add descriptionAleksey Kladov2018-11-051-1/+3
| |
* | Switch ra_syntax to 2015 editionAleksey Kladov2018-11-052-1/+4
| |
* | reduce code duplicationAleksey Kladov2018-11-052-21/+19
| |
* | grammar: for predicates in whereAleksey Kladov2018-11-054-35/+129
|/ | | | closes #191
* Add character literal parsing and validationAdolfo Ochagavía2018-11-046-2/+397
|
* Don't order import alphabeticalAleksey Kladov2018-11-011-1/+1
| | | | | alphabetical ordering is no more consistent, and much less useful then the ordering which arises naturally when you add import.
* Use From to get an owned ASTAleksey Kladov2018-11-012-400/+700
|
* Remove DOC_COMMENTJeremy A. Kolb2018-10-314-5/+2
| | | | Closes #166
* Reformat allAleksey Kladov2018-10-314-13/+16
|
* `ast::DocCommentsOwner` which represents a documentation comment ownerJeremy A. Kolb2018-10-313-0/+20
|
* Move FnDescriptors to analyzerAleksey Kladov2018-10-312-100/+100
|
* Introduce owned ast nodesAleksey Kladov2018-10-312-2/+1303
| | | | ast::FooNode is an owned 'static counterpart to ast::Foo<'a>
* switch to TextRange::subrangeAleksey Kladov2018-10-302-6/+2
|
* introduce syntax-ptrAleksey Kladov2018-10-301-0/+1
|
* Complete crate:: pathsAleksey Kladov2018-10-243-1/+36
|
* Fix function callsAlan Du2018-10-183-3/+3
|
* clippy: type_complexityAlan Du2018-10-181-4/+5
|
* Remove Copy trait on LeafAtOffsetAlan Du2018-10-181-1/+1
| | | | | | | Because it's a stateful iterator, it's easier to explicitly clone it when necesary. Fixes clippy:clone_on_copy
* clippy: Use if lets and remove redundant returnsAlan Du2018-10-186-16/+12
|
* Update rowanAleksey Kladov2018-10-176-39/+16
|
* rename gen-kinds to gen-syntaxAleksey Kladov2018-10-165-5/+5
|
* Cargo FormatJeremy A. Kolb2018-10-1631-391/+490
| | | | Run `cargo fmt` and ignore generated files
* start salsa migrationAleksey Kladov2018-10-151-1/+1
|
* regenerateAleksey Kladov2018-10-151-1/+1
|
* Parse crate paths in expressionsAleksey Kladov2018-10-153-1/+45
|
* switch base crates to 2018Aleksey Kladov2018-10-151-0/+1
|
* Run cargo fixAleksey Kladov2018-10-1524-44/+44
|
* Merge #127bors[bot]2018-10-153-3/+44
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 127: Improve folding r=matklad a=aochagavia I was messing around with adding support for multiline comments in folding and ended up changing a bunch of other things. First of all, I am not convinced of folding groups of successive items. For instance, I don't see why it is worthwhile to be able to fold something like the following: ```rust use foo; use bar; ``` Furthermore, this causes problems if you want to fold a multiline import: ```rust use foo::{ quux }; use bar; ``` The problem is that now there are two possible folds at the same position: we could fold the first use or we could fold the import group. IMO, the only place where folding groups makes sense is when folding comments. Therefore I have **removed folding import groups in favor of folding multiline imports**. Regarding folding comments, I made it a bit more robust by requiring that comments can only be folded if they have the same flavor. So if you have a bunch of `//` comments followed by `//!` comments, you will get two separate fold groups instead of a single one. Finally, I rewrote the API in such a way that it should be trivial to add new folds. You only need to: * Create a new FoldKind * Add it to the `fold_kind` function that converts from `SyntaxKind` to `FoldKind` Fixes #113 Co-authored-by: Adolfo Ochagavía <[email protected]>