Reduce size of Stmt from 144 to 120 bytes (#11051)
## Summary I happened to notice that we box `TypeParams` on `StmtClassDef` but not on `StmtFunctionDef` and wondered why, since `StmtFunctionDef` is bigger and sets the size of `Stmt`. @charliermarsh found that at the time we started boxing type params on classes, classes were the largest statement type (see #6275), but that's no longer true. So boxing type-params also on functions reduces the overall size of `Stmt`. ## Test Plan The `<=` size tests are a bit irritating (since their failure doesn't tell you the actual size), but I manually confirmed that the size is actually 120 now.
This commit is contained in:
@@ -108,7 +108,7 @@ impl<'a> ClauseHeader<'a> {
|
||||
returns,
|
||||
body: _,
|
||||
}) => {
|
||||
if let Some(type_params) = type_params.as_ref() {
|
||||
if let Some(type_params) = type_params.as_deref() {
|
||||
visit(type_params, visitor);
|
||||
}
|
||||
visit(parameters.as_ref(), visitor);
|
||||
|
||||
Reference in New Issue
Block a user