aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_hir/src
Commit message (Collapse)AuthorAgeFilesLines
* don't poison mutex around chalkAleksey Kladov2019-06-012-3/+5
| | | | | | | | | We use panics for cancellation, so we could trigger panic while holding the solver. std::sync::Mutex will be poisoned as a result, which and all further attempts to use solver (from other threads) will panic as well. This commit switches to parking_lot::Mutex which just unlocks on panic.
* add tests for primitive typesAleksey Kladov2019-05-305-30/+44
|
* add built-in types to scopesAleksey Kladov2019-05-305-24/+47
|
* add list of builtin typesAleksey Kladov2019-05-302-3/+29
|
* add ModuleDef::BuiltInTypeAleksey Kladov2019-05-305-10/+61
|
* add cacellation checks to expensive queriesAleksey Kladov2019-05-293-0/+3
|
* fix syntax errors in testsAleksey Kladov2019-05-286-118/+134
|
* check cancellation when expanding macrosAleksey Kladov2019-05-271-0/+1
|
* FormattingEdwin Cheng2019-05-271-1/+0
|
* Add Test for new item resolutionEdwin Cheng2019-05-262-2/+55
|
* Use ItemOrMacro in item resolutionEdwin Cheng2019-05-264-94/+214
|
* Put back unexpaned_macros after resolveEdwin Cheng2019-05-261-0/+3
|
* rename code_model_api -> code_modelAleksey Kladov2019-05-234-4/+4
|
* kill code_model_implAleksey Kladov2019-05-235-89/+64
|
* remove more referencesAleksey Kladov2019-05-231-56/+56
|
* remove referencesAleksey Kladov2019-05-233-157/+105
|
* kill krate_implAleksey Kladov2019-05-233-26/+12
|
* fix signatureAleksey Kladov2019-05-231-4/+4
|
* add union to code_modelAleksey Kladov2019-05-239-26/+91
|
* add profile calls to parsing/expansion routinesAleksey Kladov2019-05-221-0/+2
|
* Fix crash with int vars in canonicalizationFlorian Diebold2019-05-211-1/+6
|
* Use fuel branch for ChalkFlorian Diebold2019-05-211-1/+1
| | | | This makes sure we don't take too long in trait solving.
* re-enable chalkAleksey Kladov2019-05-211-17/+16
|
* publish gen_lsp_server 0.2Aleksey Kladov2019-05-211-16/+17
|
* profile type inferenceAleksey Kladov2019-05-213-3/+5
|
* profile implements queryAleksey Kladov2019-05-211-0/+2
|
* fix odrer-of-iteration bug in testsAleksey Kladov2019-05-212-7/+15
|
* sort hash maps for testsAleksey Kladov2019-05-214-211/+195
|
* add _query to query functionsAleksey Kladov2019-05-212-6/+6
|
* remove minor code duplicationAleksey Kladov2019-05-202-20/+16
|
* simplifyAleksey Kladov2019-05-201-38/+39
|
* Use normal iteration instead of walk_mutEdwin Cheng2019-05-201-8/+5
|
* Add infer for generic default typeEdwin Cheng2019-05-194-15/+80
|
* Add default type to GenericParamEdwin Cheng2019-05-191-3/+10
|
* allow expanding expressionsAleksey Kladov2019-05-142-7/+8
|
* expand to syntax nodeAleksey Kladov2019-05-145-25/+32
|
* store macro kind in HirFileIdAleksey Kladov2019-05-144-21/+38
|
* Merge #1271bors[bot]2019-05-136-11/+15
|\ | | | | | | | | | | | | | | 1271: make AstId untyped r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * make AstId untypedAleksey Kladov2019-05-136-11/+15
| |
* | Increase Chalk solver max_size back to 4Florian Diebold2019-05-131-1/+1
|/ | | | | | Reducing it to 2 was just a failed attempt to see whether that would help fix some slow cases; in fact, it can create new slow cases by replacing concrete types by variables.
* simplifyAleksey Kladov2019-05-124-33/+11
|
* simplifyAleksey Kladov2019-05-122-8/+7
|
* Use traits from prelude for method resolutionFlorian Diebold2019-05-123-14/+42
|
* Blacklist some traits from being considered in where clausesFlorian Diebold2019-05-122-7/+34
| | | | | | | For Send/Sync/Sized, we don't handle auto traits correctly yet and because they have a lot of impls, they can easily lead to slowdowns. In the case of Fn/FnMut/FnOnce, we don't parse the special Fn notation correctly yet and don't handle closures yet, so we are very unlikely to find an impl.
* Fix impl blocks with unresolved target trait being treated as inherent implsFlorian Diebold2019-05-121-5/+7
|
* Add support for inline boundsFlorian Diebold2019-05-112-16/+60
| | | | E.g. impl<T: Clone> Foo for T.
* Handle auto traits & negative implsFlorian Diebold2019-05-114-7/+37
| | | | | We don't pass field types to Chalk yet though, so the auto trait inference won't be correct.
* Reduce Chalk max_size parameter, add test for slow caseFlorian Diebold2019-05-113-3/+42
|
* Handle Chalk conversion for FnDefFlorian Diebold2019-05-113-2/+39
|
* Handle resolution errors in where clausesFlorian Diebold2019-05-112-15/+56
| | | | | This is slightly hacky, but maybe more elegant than alternative solutions: We just use a hardcoded Chalk trait ID which we special-case to have no impls.