export const
SCOPE_TOP = 1,
SCOPE_FUNCTION = 2,
- SCOPE_VAR = SCOPE_TOP | SCOPE_FUNCTION,
SCOPE_ASYNC = 4,
SCOPE_GENERATOR = 8,
SCOPE_ARROW = 16,
SCOPE_SIMPLE_CATCH = 32,
SCOPE_SUPER = 64,
- SCOPE_DIRECT_SUPER = 128
+ SCOPE_DIRECT_SUPER = 128,
+ SCOPE_CLASS_STATIC_BLOCK = 256,
+ SCOPE_VAR = SCOPE_TOP | SCOPE_FUNCTION | SCOPE_CLASS_STATIC_BLOCK
export function functionFlags(async, generator) {
return SCOPE_FUNCTION | (async ? SCOPE_ASYNC : 0) | (generator ? SCOPE_GENERATOR : 0)
}
-// Used in checkLVal and declareName to determine the type of a binding
+// Used in checkLVal* and declareName to determine the type of a binding
export const
BIND_NONE = 0, // Not a binding
BIND_VAR = 1, // Var-style binding