?
u
/
p
1-9
The abstract operation IsCodeLike takes argument x (an Object) and returns a Boolean. It checks if x contains the host-defined [[HostDefinedIsCodeLike]] internal slot. It performs the following steps:
The host-defined abstract operation HostEnsureCanCompileStrings takes arguments calleeRealm (a Realm Record), parameterStrings (a List of Strings), bodyString (a String), direct (a Boolean), codeString (a String), compilationType (
parameterStrings represents the strings that, when using one of the function constructors, will be concatenated together to build the parameters list.
bodyString represents the function body or the string passed to an eval
call.
direct signifies whether the evaluation is a direct eval.
codeString represents the full code string,
compilationType is an enum that indicates what type of compilation this is,
parameterArgs represents the list of values passed when using one of the function constructors,
bodyArg represents the function body or the value passed to an eval
call.
The default implementation of HostEnsureCanCompileStrings is to return NormalCompletion(
The abstract operation PerformEval takes arguments x (an ECMAScript language value), strictCaller (a Boolean), and direct (a Boolean) and returns either a normal completion containing an ECMAScript language value or a throw completion. It performs the following steps when called:
eval
and of the eval
function itself.The abstract operation CreateDynamicFunction takes arguments constructor (a constructor), newTarget (a constructor), kind (new
was initially applied to. parameterArgs and bodyArg reflect the argument values that were passed to constructor. It performs the following steps when called:
CreateDynamicFunction defines a
[[HostDefinedIsCodeLike]]: A Boolean. See