MCPcopy Create free account
hub / github.com/PHPantom-dev/phpantom_lsp / collect_from_class_members

Function collect_from_class_members

src/diagnostics/unused_variables.rs:131–154  ·  view source on GitHub ↗
(members: &[ClassLikeMember<'_>], ctx: &mut DiagnosticCtx<'_>)

Source from the content-addressed store, hash-verified

129}
130
131fn collect_from_class_members(members: &[ClassLikeMember<'_>], ctx: &mut DiagnosticCtx<'_>) {
132 for member in members.iter() {
133 if let ClassLikeMember::Method(method) = member
134 && let MethodBody::Concrete(block) = &method.body
135 {
136 let body_start = block.left_brace.start.offset;
137 let body_end = block.right_brace.end.offset;
138
139 // Collect promoted parameter names so we can exclude them.
140 let promoted_params = collect_promoted_params(&method.parameter_list);
141
142 let compact_vars = collect_compact_vars(block.statements.as_slice());
143 let scope = collect_function_scope_with_kind(
144 &method.parameter_list,
145 block.statements.as_slice(),
146 body_start,
147 body_end,
148 FrameKind::Method,
149 );
150
151 check_scope(&scope, ctx, Some(&promoted_params), &compact_vars);
152 }
153 }
154}
155
156/// Collect names of promoted constructor parameters (those with a
157/// visibility modifier like `public`, `protected`, `private`).

Callers 1

collect_from_statementFunction · 0.70

Calls 5

collect_promoted_paramsFunction · 0.85
collect_compact_varsFunction · 0.85
iterMethod · 0.80
check_scopeFunction · 0.70

Tested by

no test coverage detected