Syntactic apply.
Syntactic apply. It is a method call if fun is a dot-select or bracket-select. It is a function call otherwise.
Binary operation (always preserves pureness).
Binary operation (always preserves pureness).
Operations which do not preserve pureness are not allowed in this tree. These are notably +=, -=, *=, /= and %=
ES6 let or const (depending on the mutable flag).
Marker for literals.
Marker for literals. Literals are always pure.
...items
, the "spread" operator of ECMAScript 6.
...items
, the "spread" operator of ECMAScript 6.
It is only valid in ECMAScript 6, in the args
/items
of a New,
Apply, or ArrayConstr.
An iterable whose items will be spread
AST node of JavaScript.
Unary operation (always preserves pureness).
Unary operation (always preserves pureness).
Operations which do not preserve pureness are not allowed in this tree. These are notably ++ and --