aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_ide/src
Commit message (Collapse)AuthorAgeFilesLines
* Move unsafe packed ref logic to Semantics, use `Attrs::by_key` to simplify ↵Paul Daniel Faria2020-08-102-32/+771
| | | | repr attr lookup
* Revert function structs back to using bool to track self param, use first ↵Paul Daniel Faria2020-08-104-6/+11
| | | | param for self information in syntax highlighting instead
* Deduplicate unsafe method call into a single functionPaul Daniel Faria2020-08-101-41/+31
|
* Unsafe borrow of packed fields: account for borrow through ref binding, auto ↵Paul Daniel Faria2020-08-105-38/+136
| | | | ref function calls
* Cleanup repr check, fix packed repr check and testPaul Daniel Faria2020-08-102-11/+7
|
* Update FIXME comment to be more usefulPaul Daniel Faria2020-08-101-1/+2
|
* Limit scope of unsafe to & instead of all ref exprs, add test showing ↵Paul Daniel Faria2020-08-102-1/+20
| | | | missing support for autoref behavior
* Remove token tree from ReprKind::Other variant, expose ReprKind higher, ↵Paul Daniel Faria2020-08-101-7/+1
| | | | remove debug println.
* Add tracking of packed repr, use it to highlight unsafe refsPaul Daniel Faria2020-08-102-0/+35
| | | | | | Taking a reference to a misaligned field on a packed struct is an unsafe operation. Highlight that behavior. Currently, the misaligned part isn't tracked, so this highlight is a bit too aggressive.
* Better codesJmPotato2020-08-101-8/+4
| | | | Signed-off-by: JmPotato <[email protected]>
* Show const body in short_labelJmPotato2020-08-102-5/+13
| | | | Signed-off-by: JmPotato <[email protected]>
* Merge #5692bors[bot]2020-08-106-12/+102
|\ | | | | | | | | | | | | | | | | | | 5692: Add support for extern crate r=jonas-schievink a=Nashenas88 This adds syntax highlighting, hover and goto def functionality for extern crate. Fixes #5690 Co-authored-by: Paul Daniel Faria <[email protected]>
| * Remove Option<...> from result of Crate::root_modulePaul Daniel Faria2020-08-093-6/+7
| | | | | | | | | | There doesn't seem to be any need for it, and removing it simplies several paths of code that depend on it.
| * Add support for extern cratePaul Daniel Faria2020-08-086-13/+102
| | | | | | | | | | This adds syntax highlighting, hover and goto def functionality for extern crate
* | format in to_proto::markup_contentJmPotato2020-08-091-0/+31
| | | | | | | | Signed-off-by: JmPotato <[email protected]>
* | Merge #5684bors[bot]2020-08-082-10/+67
|\ \ | |/ |/| | | | | | | | | | | | | | | 5684: Semantic highlighting for unsafe union field access r=jonas-schievink a=Nashenas88 This change adds support for unions in inference and lowering, then extends on that to add the unsafe semantic modifier on field access only. The `is_possibly_unsafe` function in `syntax_highlighting.rs` could be extended to support fns and static muts so that their definitions are not highlighted as unsafe, but only their usage. Also, each commit of this PR updates the tests. By reviewing the files by commit, it's easy to see how the changes in the code affected the tests. Co-authored-by: Paul Daniel Faria <[email protected]>
| * Apply unsafe semantic highlighting to union field accessPaul Daniel Faria2020-08-081-10/+56
| |
| * Add test for unsafe union field access highlightingPaul Daniel Faria2020-08-071-0/+11
| |
* | Mark static mutable names as unsafePaul Daniel Faria2020-08-071-0/+1
| |
* | Add test for accessing static mutPaul Daniel Faria2020-08-071-0/+7
|/
* align names in makeAleksey Kladov2020-08-051-4/+6
|
* Add test showing unresolved module renamePaul Daniel Faria2020-08-041-0/+3
|
* Fold trait declarationsLaurențiu Nicola2020-08-031-1/+22
|
* Update grammarAleksey Kladov2020-08-012-2/+2
|
* Rename DotDotPat -> RestPatAleksey Kladov2020-07-311-1/+1
|
* RenameAleksey Kladov2020-07-313-4/+4
|
* Rename BindPat -> IdentPatAleksey Kladov2020-07-316-17/+21
|
* Allign RecordPat with RecordExprAleksey Kladov2020-07-313-5/+5
|
* Rename TypeArgList -> GenericArgListAleksey Kladov2020-07-312-2/+2
|
* Rename LambdaExpr -> ClosureExprAleksey Kladov2020-07-311-1/+1
|
* Rename TypeRef -> TypeAleksey Kladov2020-07-313-4/+4
| | | | | | | | | | The TypeRef name comes from IntelliJ days, where you often have both type *syntax* as well as *semantical* representation of types in scope. And naming both Type is confusing. In rust-analyzer however, we use ast types as `ast::Type`, and have many more semantic counterparts to ast types, so avoiding name clash here is just confusing.
* Use ty to access most TypeRefsAleksey Kladov2020-07-302-2/+2
|
* Remove TypeAscriptionOwnerAleksey Kladov2020-07-304-31/+22
|
* Finalize attribute grammarAleksey Kladov2020-07-301-6/+4
|
* Finalize impl GrammarAleksey Kladov2020-07-306-15/+14
|
* Finalize Trait grammarAleksey Kladov2020-07-307-25/+25
|
* fmtAleksey Kladov2020-07-301-4/+3
|
* Finalize const&static grammarAleksey Kladov2020-07-306-17/+17
|
* Rename EnumVariant -> VariantAleksey Kladov2020-07-307-10/+10
|
* Rename EnumDef -> EnumAleksey Kladov2020-07-305-9/+9
|
* Rename StructDef -> StructAleksey Kladov2020-07-307-32/+32
|
* Finalize union grammarAleksey Kladov2020-07-304-4/+4
|
* Rename FieldDef -> FieldAleksey Kladov2020-07-308-19/+19
|
* Rename RecordLit -> RecordExprAleksey Kladov2020-07-305-10/+10
|
* Rename TypeParamList -> GenericParamListAleksey Kladov2020-07-304-6/+6
|
* Rename TypeAliasDef -> TypeAliasAleksey Kladov2020-07-306-10/+10
|
* Rename FnDef -> FnAleksey Kladov2020-07-3016-86/+86
|
* Rename UseItem -> UseAleksey Kladov2020-07-302-4/+4
|
* Split ItemList & AssocItemListAleksey Kladov2020-07-303-37/+43
|
* Rename ModuleItem -> ItemAleksey Kladov2020-07-292-3/+3
|