refactor(transformer): JSX: use AstBuilder::vec_from_iter (#5862)

Pure refactor. Shorten code a little by using `AstBuilder::vec_from_iter`.
This commit is contained in:
overlookmotel 2024-09-19 06:19:13 +00:00
parent 74364adce4
commit 52c99031ae

View file

@ -532,20 +532,17 @@ impl<'a> ReactJsx<'a> {
// Append children to object properties in automatic mode // Append children to object properties in automatic mode
if is_automatic { if is_automatic {
let allocator = self.ast().allocator; let mut children = self.ast().vec_from_iter(
let mut children = Vec::from_iter_in(
children.iter().filter_map(|child| self.transform_jsx_child(child, ctx)), children.iter().filter_map(|child| self.transform_jsx_child(child, ctx)),
allocator,
); );
children_len = children.len(); children_len = children.len();
if children_len != 0 { if children_len != 0 {
let value = if children_len == 1 { let value = if children_len == 1 {
children.pop().unwrap() children.pop().unwrap()
} else { } else {
let elements = Vec::from_iter_in( let elements = self
children.into_iter().map(ArrayExpressionElement::from), .ast()
allocator, .vec_from_iter(children.into_iter().map(ArrayExpressionElement::from));
);
need_jsxs = true; need_jsxs = true;
self.ast().expression_array(SPAN, elements, None) self.ast().expression_array(SPAN, elements, None)
}; };