Skip to content
This repository was archived by the owner on May 28, 2025. It is now read-only.

Commit 446e154

Browse files
committed
Make GenericParams::where_predicates private
1 parent 1da9ade commit 446e154

File tree

5 files changed

+12
-8
lines changed

5 files changed

+12
-8
lines changed

src/tools/rust-analyzer/crates/hir-def/src/generics.rs

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -161,7 +161,7 @@ pub enum GenericParamDataRef<'a> {
161161
pub struct GenericParams {
162162
type_or_consts: Arena<TypeOrConstParamData>,
163163
pub lifetimes: Arena<LifetimeParamData>,
164-
pub where_predicates: Box<[WherePredicate]>,
164+
where_predicates: Box<[WherePredicate]>,
165165
}
166166

167167
impl ops::Index<LocalTypeOrConstParamId> for GenericParams {
@@ -228,6 +228,11 @@ impl GenericParams {
228228
self.len() == 0
229229
}
230230

231+
#[inline]
232+
pub fn where_predicates(&self) -> std::slice::Iter<'_, WherePredicate> {
233+
self.where_predicates.iter()
234+
}
235+
231236
/// Iterator of type_or_consts field
232237
#[inline]
233238
pub fn iter_type_or_consts(

src/tools/rust-analyzer/crates/hir-def/src/item_tree/pretty.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -570,13 +570,13 @@ impl Printer<'_> {
570570
}
571571

572572
fn print_where_clause(&mut self, params: &GenericParams) -> bool {
573-
if params.where_predicates.is_empty() {
573+
if params.where_predicates().next().is_none() {
574574
return false;
575575
}
576576

577577
w!(self, "\nwhere");
578578
self.indented(|this| {
579-
for (i, pred) in params.where_predicates.iter().enumerate() {
579+
for (i, pred) in params.where_predicates().enumerate() {
580580
if i != 0 {
581581
wln!(this, ",");
582582
}

src/tools/rust-analyzer/crates/hir-def/src/resolver.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -596,7 +596,7 @@ impl Resolver {
596596
Scope::GenericParams { params, def } => Some((params, def)),
597597
_ => None,
598598
})
599-
.flat_map(|(params, def)| params.where_predicates.iter().zip(iter::repeat(def)))
599+
.flat_map(|(params, def)| params.where_predicates().zip(iter::repeat(def)))
600600
}
601601

602602
pub fn generic_def(&self) -> Option<GenericDefId> {

src/tools/rust-analyzer/crates/hir-ty/src/utils.rs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -157,8 +157,7 @@ fn direct_super_traits(db: &dyn DefDatabase, trait_: TraitId, cb: impl FnMut(Tra
157157
let generic_params = db.generic_params(trait_.into());
158158
let trait_self = generic_params.trait_self_param();
159159
generic_params
160-
.where_predicates
161-
.iter()
160+
.where_predicates()
162161
.filter_map(|pred| match pred {
163162
WherePredicate::ForLifetime { target, bound, .. }
164163
| WherePredicate::TypeBound { target, bound } => {

src/tools/rust-analyzer/crates/hir/src/display.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -611,7 +611,7 @@ fn write_where_clause(
611611
}
612612

613613
fn has_disaplayable_predicates(params: &Interned<GenericParams>) -> bool {
614-
params.where_predicates.iter().any(|pred| {
614+
params.where_predicates().any(|pred| {
615615
!matches!(
616616
pred,
617617
WherePredicate::TypeBound { target: WherePredicateTypeTarget::TypeOrConstParam(id), .. }
@@ -652,7 +652,7 @@ fn write_where_predicates(
652652
_ => false,
653653
};
654654

655-
let mut iter = params.where_predicates.iter().peekable();
655+
let mut iter = params.where_predicates().peekable();
656656
while let Some(pred) = iter.next() {
657657
if matches!(pred, TypeBound { target, .. } if is_unnamed_type_target(params, target)) {
658658
continue;

0 commit comments

Comments
 (0)