Skip to content

Commit 57335f1

Browse files
authored
Merge pull request #972 from sbillig/parser-recovery-rework
Parser recovery rework
2 parents 65f3804 + 273ce09 commit 57335f1

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

101 files changed

+3574
-3106
lines changed

Cargo.lock

Lines changed: 55 additions & 47 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,4 +7,4 @@ opt-level = 3
77

88
[profile.dev]
99
# Speeds up the build. May need to diable for debugging.
10-
debug = 0
10+
debug = 1

crates/hir-analysis/src/ty/def_analysis.rs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -220,7 +220,7 @@ impl<'db> DefAnalyzer<'db> {
220220

221221
fn for_impl(db: &'db dyn HirAnalysisDb, impl_: HirImpl, ty: TyId) -> Self {
222222
let assumptions = collect_impl_block_constraints(db, impl_);
223-
let def = DefKind::Impl(impl_, ty);
223+
let def = DefKind::Impl(impl_);
224224
Self {
225225
db,
226226
def,
@@ -384,7 +384,7 @@ impl<'db> DefAnalyzer<'db> {
384384
self.visit_impl_trait(&mut ctxt, impl_trait);
385385
}
386386

387-
DefKind::Impl(hir_impl, _) => {
387+
DefKind::Impl(hir_impl) => {
388388
let mut ctxt = VisitorCtxt::with_impl(self.db.as_hir_db(), hir_impl);
389389
self.visit_impl(&mut ctxt, hir_impl)
390390
}
@@ -889,7 +889,7 @@ enum DefKind {
889889
Adt(AdtDef),
890890
Trait(TraitDef),
891891
ImplTrait(Implementor),
892-
Impl(HirImpl, TyId),
892+
Impl(HirImpl),
893893
Func(FuncDef),
894894
}
895895

@@ -899,7 +899,7 @@ impl DefKind {
899899
Self::Adt(def) => def.params(db),
900900
Self::Trait(def) => def.params(db),
901901
Self::ImplTrait(def) => def.params(db),
902-
Self::Impl(hir_impl, _) => {
902+
Self::Impl(hir_impl) => {
903903
collect_generic_params(db, GenericParamOwnerId::new(db, hir_impl.into())).params(db)
904904
}
905905
Self::Func(def) => def.params(db),
@@ -927,7 +927,7 @@ impl DefKind {
927927
Self::Adt(def) => def.adt_ref(db).scope(db),
928928
Self::Trait(def) => def.trait_(db).scope(),
929929
Self::ImplTrait(def) => def.hir_impl_trait(db).scope(),
930-
Self::Impl(hir_impl, _) => hir_impl.scope(),
930+
Self::Impl(hir_impl) => hir_impl.scope(),
931931
Self::Func(def) => def.hir_func(db).scope(),
932932
}
933933
}

crates/hir/src/lower/parse.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -41,13 +41,13 @@ impl DiagnosticVoucher for ParserError {
4141

4242
fn to_complete(&self, _db: &dyn SpannedHirDb) -> CompleteDiagnostic {
4343
let error_code = self.error_code();
44-
let span = Span::new(self.file, self.error.range, SpanKind::Original);
44+
let span = Span::new(self.file, self.error.range(), SpanKind::Original);
4545
CompleteDiagnostic::new(
4646
Severity::Error,
47-
self.error.msg.clone(),
47+
self.error.msg(),
4848
vec![SubDiagnostic::new(
4949
LabelStyle::Primary,
50-
self.error.msg.clone(),
50+
self.error.label(),
5151
Some(span),
5252
)],
5353
vec![],

0 commit comments

Comments
 (0)