mirror of
https://github.com/danbulant/oxc
synced 2026-05-24 12:21:58 +00:00
refactor(transformer/class-properties): exit transform_class faster if nothing to do (#7586)
Small optimization. Class properties transform doesn't have to do anything if the class has no properties, which will often be the case. Exit sooner in this case.
This commit is contained in:
parent
dccff38afe
commit
ebd11fb5e9
1 changed files with 7 additions and 5 deletions
|
|
@ -339,6 +339,13 @@ impl<'a, 'ctx> ClassProperties<'a, 'ctx> {
|
|||
index_not_including_removed += 1;
|
||||
}
|
||||
|
||||
// Exit if nothing to transform
|
||||
if instance_prop_count == 0 && !has_static_prop_or_static_block {
|
||||
self.private_props_stack.push(None);
|
||||
return;
|
||||
}
|
||||
|
||||
// Add entry to `private_props_stack`
|
||||
if private_props.is_empty() {
|
||||
self.private_props_stack.push(None);
|
||||
} else {
|
||||
|
|
@ -353,11 +360,6 @@ impl<'a, 'ctx> ClassProperties<'a, 'ctx> {
|
|||
}));
|
||||
}
|
||||
|
||||
// Exit if nothing to transform
|
||||
if instance_prop_count == 0 && !has_static_prop_or_static_block {
|
||||
return;
|
||||
}
|
||||
|
||||
// Extract properties and static blocks from class body + substitute computed method keys
|
||||
let mut instance_inits = Vec::with_capacity(instance_prop_count);
|
||||
class.body.body.retain_mut(|element| {
|
||||
|
|
|
|||
Loading…
Reference in a new issue