You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Summary:
Remove the `fields` field from `ClassInner` and the `fields` parameter
from `Class::new()`. Remove all delegating field accessor methods from
`Class` (fields, contains, is_field_annotated, is_field_initialized_on_class,
field_decl_range, field_docstring_range, class_body_fields).
All callers now use `get_class_fields()` via AnswersSolver (for solver
code paths) or `Bindings::get_class_fields()` / `Transaction::get_class_fields()`
(for external callers like LSP, Pysa, Query).
Also migrates get_class_field_map in classdef.rs and the test_fields
test in enums.rs.
Performance (median of 3 opt-clang-thinlto runs, baseline=parent of stack):
PyTorch:
| metric | baseline | this diff | cumulative |
|--------|----------|-----------|------------|
| cpu | 40.65s | 40.83s | +0.4% |
| wall | 2.24s | 2.22s | -0.9% |
| maxrss | 0.93GB | 0.90GB | -3.2% |
Reviewed By: yangdanny97
Differential Revision: D96515736
fbshipit-source-id: 867ef12348e8ec69f5d63acf021321cf323b00c2
0 commit comments