swc_ecma_compat_es2018/
object_rest_spread.rs1use serde::Deserialize;
2use swc_ecma_ast::Pass;
3use swc_ecma_visit::visit_mut_pass;
4
5use crate::{object_rest::ObjectRest, object_spread::ObjectSpread};
6
7pub fn object_rest_spread(config: Config) -> impl Pass {
12 (
13 visit_mut_pass(ObjectRest {
14 config,
15 ..Default::default()
16 }),
17 visit_mut_pass(ObjectSpread { config }),
18 )
19}
20
21#[derive(Debug, Clone, Copy, Default, Deserialize)]
22#[serde(rename_all = "camelCase")]
23pub struct Config {
24 #[serde(default)]
25 pub no_symbol: bool,
26 #[serde(default)]
27 pub set_property: bool,
28 #[serde(default)]
29 pub pure_getters: bool,
30}