com.oracle.truffle.js.builtins.ArrayFunctionBuiltinsFactory Maven / Gradle / Ivy
// CheckStyle: start generated
package com.oracle.truffle.js.builtins;
import com.oracle.truffle.api.CompilerDirectives;
import com.oracle.truffle.api.CompilerDirectives.CompilationFinal;
import com.oracle.truffle.api.dsl.GeneratedBy;
import com.oracle.truffle.api.dsl.NeverDefault;
import com.oracle.truffle.api.dsl.UnsupportedSpecializationException;
import com.oracle.truffle.api.dsl.InlineSupport.InlineTarget;
import com.oracle.truffle.api.dsl.InlineSupport.ReferenceField;
import com.oracle.truffle.api.dsl.InlineSupport.StateField;
import com.oracle.truffle.api.dsl.InlineSupport.UnsafeAccessedField;
import com.oracle.truffle.api.frame.VirtualFrame;
import com.oracle.truffle.api.nodes.Node;
import com.oracle.truffle.api.profiles.InlinedBranchProfile;
import com.oracle.truffle.api.profiles.InlinedConditionProfile;
import com.oracle.truffle.js.builtins.ArrayFunctionBuiltins.JSArrayFromAsyncNode;
import com.oracle.truffle.js.builtins.ArrayFunctionBuiltins.JSArrayFromNode;
import com.oracle.truffle.js.builtins.ArrayFunctionBuiltins.JSArrayOfNode;
import com.oracle.truffle.js.builtins.ArrayFunctionBuiltins.JSIsArrayNode;
import com.oracle.truffle.js.nodes.JavaScriptNode;
import com.oracle.truffle.js.nodes.access.CreateAsyncFromSyncIteratorNode;
import com.oracle.truffle.js.nodes.access.CreateAsyncFromSyncIteratorNodeGen;
import com.oracle.truffle.js.nodes.access.GetIteratorFromMethodNode;
import com.oracle.truffle.js.nodes.access.GetIteratorFromMethodNodeGen;
import com.oracle.truffle.js.nodes.access.GetMethodNode;
import com.oracle.truffle.js.nodes.array.JSGetLengthNode;
import com.oracle.truffle.js.nodes.function.InternalCallNode;
import com.oracle.truffle.js.nodes.function.JSBuiltin;
import com.oracle.truffle.js.nodes.function.JSFunctionCallNode;
import com.oracle.truffle.js.nodes.promise.NewPromiseCapabilityNode;
import com.oracle.truffle.js.runtime.JSContext;
import com.oracle.truffle.js.runtime.Symbol;
import java.lang.invoke.MethodHandles;
import java.lang.invoke.VarHandle;
import java.util.Objects;
@GeneratedBy(ArrayFunctionBuiltins.class)
@SuppressWarnings("javadoc")
public final class ArrayFunctionBuiltinsFactory {
/**
* Debug Info:
* Specialization {@link JSIsArrayNode#isArray}
* Activation probability: 1.00000
* With/without class size: 16/0 bytes
*
*/
@GeneratedBy(JSIsArrayNode.class)
@SuppressWarnings("javadoc")
public static final class JSIsArrayNodeGen extends JSIsArrayNode {
@Child private JavaScriptNode arguments0_;
private JSIsArrayNodeGen(JSContext context, JSBuiltin builtin, JavaScriptNode[] arguments) {
super(context, builtin);
this.arguments0_ = arguments != null && 0 < arguments.length ? arguments[0] : null;
}
@Override
public JavaScriptNode[] getArguments() {
return new JavaScriptNode[] {this.arguments0_};
}
@Override
public Object execute(VirtualFrame frameValue) {
Object arguments0Value_ = this.arguments0_.execute(frameValue);
return isArray(arguments0Value_);
}
@NeverDefault
public static JSIsArrayNode create(JSContext context, JSBuiltin builtin, JavaScriptNode[] arguments) {
return new JSIsArrayNodeGen(context, builtin, arguments);
}
}
/**
* Debug Info:
* Specialization {@link JSArrayOfNode#arrayOf}
* Activation probability: 1.00000
* With/without class size: 16/0 bytes
*
*/
@GeneratedBy(JSArrayOfNode.class)
@SuppressWarnings("javadoc")
public static final class JSArrayOfNodeGen extends JSArrayOfNode {
@Child private JavaScriptNode arguments0_;
@Child private JavaScriptNode arguments1_;
/**
* State Info:
* 0: SpecializationActive {@link JSArrayOfNode#arrayOf}
*
*/
@CompilationFinal private int state_0_;
private JSArrayOfNodeGen(JSContext context, JSBuiltin builtin, boolean isTypedArray, JavaScriptNode[] arguments) {
super(context, builtin, isTypedArray);
this.arguments0_ = arguments != null && 0 < arguments.length ? arguments[0] : null;
this.arguments1_ = arguments != null && 1 < arguments.length ? arguments[1] : null;
}
@Override
public JavaScriptNode[] getArguments() {
return new JavaScriptNode[] {this.arguments0_, this.arguments1_};
}
@Override
public Object execute(VirtualFrame frameValue) {
int state_0 = this.state_0_;
Object arguments0Value_ = this.arguments0_.execute(frameValue);
Object arguments1Value_ = this.arguments1_.execute(frameValue);
if (state_0 != 0 /* is SpecializationActive[ArrayFunctionBuiltins.JSArrayOfNode.arrayOf(Object, Object[])] */ && arguments1Value_ instanceof Object[]) {
Object[] arguments1Value__ = (Object[]) arguments1Value_;
return arrayOf(arguments0Value_, arguments1Value__);
}
CompilerDirectives.transferToInterpreterAndInvalidate();
return executeAndSpecialize(arguments0Value_, arguments1Value_);
}
private Object executeAndSpecialize(Object arguments0Value, Object arguments1Value) {
int state_0 = this.state_0_;
if (arguments1Value instanceof Object[]) {
Object[] arguments1Value_ = (Object[]) arguments1Value;
state_0 = state_0 | 0b1 /* add SpecializationActive[ArrayFunctionBuiltins.JSArrayOfNode.arrayOf(Object, Object[])] */;
this.state_0_ = state_0;
return arrayOf(arguments0Value, arguments1Value_);
}
throw new UnsupportedSpecializationException(this, new Node[] {this.arguments0_, this.arguments1_}, arguments0Value, arguments1Value);
}
@NeverDefault
public static JSArrayOfNode create(JSContext context, JSBuiltin builtin, boolean isTypedArray, JavaScriptNode[] arguments) {
return new JSArrayOfNodeGen(context, builtin, isTypedArray, arguments);
}
}
/**
* Debug Info:
* Specialization {@link JSArrayFromNode#arrayFrom}
* Activation probability: 1.00000
* With/without class size: 40/17 bytes
*
*/
@GeneratedBy(JSArrayFromNode.class)
@SuppressWarnings("javadoc")
public static final class JSArrayFromNodeGen extends JSArrayFromNode {
private static final StateField STATE_0_JSArrayFromNode_UPDATER = StateField.create(MethodHandles.lookup(), "state_0_");
/**
* Source Info:
* Specialization: {@link JSArrayFromNode#arrayFrom}
* Parameter: {@link GetIteratorFromMethodNode} getIteratorFromMethod
* Inline method: {@link GetIteratorFromMethodNodeGen#inline}
*/
private static final GetIteratorFromMethodNode INLINED_GET_ITERATOR_FROM_METHOD_ = GetIteratorFromMethodNodeGen.inline(InlineTarget.create(GetIteratorFromMethodNode.class, STATE_0_JSArrayFromNode_UPDATER.subUpdater(0, 5), ReferenceField.create(MethodHandles.lookup(), "getIteratorFromMethod__field1_", Node.class), ReferenceField.create(MethodHandles.lookup(), "getIteratorFromMethod__field2_", Node.class), ReferenceField.create(MethodHandles.lookup(), "getIteratorFromMethod__field3_", Node.class), ReferenceField.create(MethodHandles.lookup(), "getIteratorFromMethod__field4_", Node.class)));
/**
* Source Info:
* Specialization: {@link JSArrayFromNode#arrayFrom}
* Parameter: {@link InlinedBranchProfile} growProfile
* Inline method: {@link InlinedBranchProfile#inline}
*/
private static final InlinedBranchProfile INLINED_GROW_PROFILE_ = InlinedBranchProfile.inline(InlineTarget.create(InlinedBranchProfile.class, STATE_0_JSArrayFromNode_UPDATER.subUpdater(5, 1)));
@Child private JavaScriptNode arguments0_;
@Child private JavaScriptNode arguments1_;
@Child private JavaScriptNode arguments2_;
@Child private JavaScriptNode arguments3_;
/**
* State Info:
* 0-4: InlinedCache
* Specialization: {@link JSArrayFromNode#arrayFrom}
* Parameter: {@link GetIteratorFromMethodNode} getIteratorFromMethod
* Inline method: {@link GetIteratorFromMethodNodeGen#inline}
* 5: InlinedCache
* Specialization: {@link JSArrayFromNode#arrayFrom}
* Parameter: {@link InlinedBranchProfile} growProfile
* Inline method: {@link InlinedBranchProfile#inline}
*
*/
@CompilationFinal @UnsafeAccessedField private int state_0_;
/**
* Source Info:
* Specialization: {@link JSArrayFromNode#arrayFrom}
* Parameter: {@link GetIteratorFromMethodNode} getIteratorFromMethod
* Inline method: {@link GetIteratorFromMethodNodeGen#inline}
* Inline field: {@link Node} field1
*/
@Child @UnsafeAccessedField @SuppressWarnings("unused") private Node getIteratorFromMethod__field1_;
/**
* Source Info:
* Specialization: {@link JSArrayFromNode#arrayFrom}
* Parameter: {@link GetIteratorFromMethodNode} getIteratorFromMethod
* Inline method: {@link GetIteratorFromMethodNodeGen#inline}
* Inline field: {@link Node} field2
*/
@Child @UnsafeAccessedField @SuppressWarnings("unused") private Node getIteratorFromMethod__field2_;
/**
* Source Info:
* Specialization: {@link JSArrayFromNode#arrayFrom}
* Parameter: {@link GetIteratorFromMethodNode} getIteratorFromMethod
* Inline method: {@link GetIteratorFromMethodNodeGen#inline}
* Inline field: {@link Node} field3
*/
@Child @UnsafeAccessedField @SuppressWarnings("unused") private Node getIteratorFromMethod__field3_;
/**
* Source Info:
* Specialization: {@link JSArrayFromNode#arrayFrom}
* Parameter: {@link GetIteratorFromMethodNode} getIteratorFromMethod
* Inline method: {@link GetIteratorFromMethodNodeGen#inline}
* Inline field: {@link Node} field4
*/
@Child @UnsafeAccessedField @SuppressWarnings("unused") private Node getIteratorFromMethod__field4_;
private JSArrayFromNodeGen(JSContext context, JSBuiltin builtin, boolean isTypedArray, JavaScriptNode[] arguments) {
super(context, builtin, isTypedArray);
this.arguments0_ = arguments != null && 0 < arguments.length ? arguments[0] : null;
this.arguments1_ = arguments != null && 1 < arguments.length ? arguments[1] : null;
this.arguments2_ = arguments != null && 2 < arguments.length ? arguments[2] : null;
this.arguments3_ = arguments != null && 3 < arguments.length ? arguments[3] : null;
}
@Override
public JavaScriptNode[] getArguments() {
return new JavaScriptNode[] {this.arguments0_, this.arguments1_, this.arguments2_, this.arguments3_};
}
@Override
public Object execute(VirtualFrame frameValue) {
Object arguments0Value_ = this.arguments0_.execute(frameValue);
Object arguments1Value_ = this.arguments1_.execute(frameValue);
Object arguments2Value_ = this.arguments2_.execute(frameValue);
Object arguments3Value_ = this.arguments3_.execute(frameValue);
return arrayFrom(arguments0Value_, arguments1Value_, arguments2Value_, arguments3Value_, INLINED_GET_ITERATOR_FROM_METHOD_, INLINED_GROW_PROFILE_);
}
@NeverDefault
public static JSArrayFromNode create(JSContext context, JSBuiltin builtin, boolean isTypedArray, JavaScriptNode[] arguments) {
return new JSArrayFromNodeGen(context, builtin, isTypedArray, arguments);
}
}
/**
* Debug Info:
* Specialization {@link JSArrayFromAsyncNode#arrayFromAsync}
* Activation probability: 1.00000
* With/without class size: 68/45 bytes
*
*/
@GeneratedBy(JSArrayFromAsyncNode.class)
@SuppressWarnings("javadoc")
public static final class JSArrayFromAsyncNodeGen extends JSArrayFromAsyncNode {
private static final StateField STATE_0_JSArrayFromAsyncNode_UPDATER = StateField.create(MethodHandles.lookup(), "state_0_");
/**
* Source Info:
* Specialization: {@link JSArrayFromAsyncNode#arrayFromAsync}
* Parameter: {@link CreateAsyncFromSyncIteratorNode} createAsyncFromSyncIterator
* Inline method: {@link CreateAsyncFromSyncIteratorNodeGen#inline}
*/
private static final CreateAsyncFromSyncIteratorNode INLINED_CREATE_ASYNC_FROM_SYNC_ITERATOR_ = CreateAsyncFromSyncIteratorNodeGen.inline(InlineTarget.create(CreateAsyncFromSyncIteratorNode.class, STATE_0_JSArrayFromAsyncNode_UPDATER.subUpdater(1, 1), ReferenceField.create(MethodHandles.lookup(), "createAsyncFromSyncIterator__field1_", Node.class)));
/**
* Source Info:
* Specialization: {@link JSArrayFromAsyncNode#arrayFromAsync}
* Parameter: {@link GetIteratorFromMethodNode} getIteratorFromMethodNode
* Inline method: {@link GetIteratorFromMethodNodeGen#inline}
*/
private static final GetIteratorFromMethodNode INLINED_GET_ITERATOR_FROM_METHOD_NODE_ = GetIteratorFromMethodNodeGen.inline(InlineTarget.create(GetIteratorFromMethodNode.class, STATE_0_JSArrayFromAsyncNode_UPDATER.subUpdater(2, 5), ReferenceField.create(MethodHandles.lookup(), "getIteratorFromMethodNode__field1_", Node.class), ReferenceField.create(MethodHandles.lookup(), "getIteratorFromMethodNode__field2_", Node.class), ReferenceField.create(MethodHandles.lookup(), "getIteratorFromMethodNode__field3_", Node.class), ReferenceField.create(MethodHandles.lookup(), "getIteratorFromMethodNode__field4_", Node.class)));
/**
* Source Info:
* Specialization: {@link JSArrayFromAsyncNode#arrayFromAsync}
* Parameter: {@link InlinedConditionProfile} isAsyncIterator
* Inline method: {@link InlinedConditionProfile#inline}
*/
private static final InlinedConditionProfile INLINED_IS_ASYNC_ITERATOR_ = InlinedConditionProfile.inline(InlineTarget.create(InlinedConditionProfile.class, STATE_0_JSArrayFromAsyncNode_UPDATER.subUpdater(7, 2)));
@Child private JavaScriptNode arguments0_;
@Child private JavaScriptNode arguments1_;
@Child private JavaScriptNode arguments2_;
@Child private JavaScriptNode arguments3_;
/**
* State Info:
* 0: SpecializationActive {@link JSArrayFromAsyncNode#arrayFromAsync}
* 1: InlinedCache
* Specialization: {@link JSArrayFromAsyncNode#arrayFromAsync}
* Parameter: {@link CreateAsyncFromSyncIteratorNode} createAsyncFromSyncIterator
* Inline method: {@link CreateAsyncFromSyncIteratorNodeGen#inline}
* 2-6: InlinedCache
* Specialization: {@link JSArrayFromAsyncNode#arrayFromAsync}
* Parameter: {@link GetIteratorFromMethodNode} getIteratorFromMethodNode
* Inline method: {@link GetIteratorFromMethodNodeGen#inline}
* 7-8: InlinedCache
* Specialization: {@link JSArrayFromAsyncNode#arrayFromAsync}
* Parameter: {@link InlinedConditionProfile} isAsyncIterator
* Inline method: {@link InlinedConditionProfile#inline}
*
*/
@CompilationFinal @UnsafeAccessedField private int state_0_;
/**
* Source Info:
* Specialization: {@link JSArrayFromAsyncNode#arrayFromAsync}
* Parameter: {@link NewPromiseCapabilityNode} newPromiseCapability
*/
@Child private NewPromiseCapabilityNode newPromiseCapability_;
/**
* Source Info:
* Specialization: {@link JSArrayFromAsyncNode#arrayFromAsync}
* Parameter: {@link GetMethodNode} getAsyncIteratorMethodNode
*/
@Child private GetMethodNode getAsyncIteratorMethodNode_;
/**
* Source Info:
* Specialization: {@link JSArrayFromAsyncNode#arrayFromAsync}
* Parameter: {@link GetMethodNode} getIteratorMethodNode
*/
@Child private GetMethodNode getIteratorMethodNode_;
/**
* Source Info:
* Specialization: {@link JSArrayFromAsyncNode#arrayFromAsync}
* Parameter: {@link JSGetLengthNode} getLengthNode
*/
@Child private JSGetLengthNode getLengthNode_;
/**
* Source Info:
* Specialization: {@link JSArrayFromAsyncNode#arrayFromAsync}
* Parameter: {@link CreateAsyncFromSyncIteratorNode} createAsyncFromSyncIterator
* Inline method: {@link CreateAsyncFromSyncIteratorNodeGen#inline}
* Inline field: {@link Node} field1
*/
@Child @UnsafeAccessedField @SuppressWarnings("unused") private Node createAsyncFromSyncIterator__field1_;
/**
* Source Info:
* Specialization: {@link JSArrayFromAsyncNode#arrayFromAsync}
* Parameter: {@link GetIteratorFromMethodNode} getIteratorFromMethodNode
* Inline method: {@link GetIteratorFromMethodNodeGen#inline}
* Inline field: {@link Node} field1
*/
@Child @UnsafeAccessedField @SuppressWarnings("unused") private Node getIteratorFromMethodNode__field1_;
/**
* Source Info:
* Specialization: {@link JSArrayFromAsyncNode#arrayFromAsync}
* Parameter: {@link GetIteratorFromMethodNode} getIteratorFromMethodNode
* Inline method: {@link GetIteratorFromMethodNodeGen#inline}
* Inline field: {@link Node} field2
*/
@Child @UnsafeAccessedField @SuppressWarnings("unused") private Node getIteratorFromMethodNode__field2_;
/**
* Source Info:
* Specialization: {@link JSArrayFromAsyncNode#arrayFromAsync}
* Parameter: {@link GetIteratorFromMethodNode} getIteratorFromMethodNode
* Inline method: {@link GetIteratorFromMethodNodeGen#inline}
* Inline field: {@link Node} field3
*/
@Child @UnsafeAccessedField @SuppressWarnings("unused") private Node getIteratorFromMethodNode__field3_;
/**
* Source Info:
* Specialization: {@link JSArrayFromAsyncNode#arrayFromAsync}
* Parameter: {@link GetIteratorFromMethodNode} getIteratorFromMethodNode
* Inline method: {@link GetIteratorFromMethodNodeGen#inline}
* Inline field: {@link Node} field4
*/
@Child @UnsafeAccessedField @SuppressWarnings("unused") private Node getIteratorFromMethodNode__field4_;
/**
* Source Info:
* Specialization: {@link JSArrayFromAsyncNode#arrayFromAsync}
* Parameter: {@link InternalCallNode} internalCallNode
*/
@Child private InternalCallNode internalCallNode_;
/**
* Source Info:
* Specialization: {@link JSArrayFromAsyncNode#arrayFromAsync}
* Parameter: {@link JSFunctionCallNode} callRejectNode
*/
@Child private JSFunctionCallNode callRejectNode_;
private JSArrayFromAsyncNodeGen(JSContext context, JSBuiltin builtin, JavaScriptNode[] arguments) {
super(context, builtin);
this.arguments0_ = arguments != null && 0 < arguments.length ? arguments[0] : null;
this.arguments1_ = arguments != null && 1 < arguments.length ? arguments[1] : null;
this.arguments2_ = arguments != null && 2 < arguments.length ? arguments[2] : null;
this.arguments3_ = arguments != null && 3 < arguments.length ? arguments[3] : null;
}
@Override
public JavaScriptNode[] getArguments() {
return new JavaScriptNode[] {this.arguments0_, this.arguments1_, this.arguments2_, this.arguments3_};
}
@Override
public Object execute(VirtualFrame frameValue) {
int state_0 = this.state_0_;
Object arguments0Value_ = this.arguments0_.execute(frameValue);
Object arguments1Value_ = this.arguments1_.execute(frameValue);
Object arguments2Value_ = this.arguments2_.execute(frameValue);
Object arguments3Value_ = this.arguments3_.execute(frameValue);
if ((state_0 & 0b1) != 0 /* is SpecializationActive[ArrayFunctionBuiltins.JSArrayFromAsyncNode.arrayFromAsync(Object, Object, Object, Object, Node, NewPromiseCapabilityNode, GetMethodNode, GetMethodNode, JSGetLengthNode, CreateAsyncFromSyncIteratorNode, GetIteratorFromMethodNode, InternalCallNode, JSFunctionCallNode, InlinedConditionProfile)] */) {
{
NewPromiseCapabilityNode newPromiseCapability__ = this.newPromiseCapability_;
if (newPromiseCapability__ != null) {
GetMethodNode getAsyncIteratorMethodNode__ = this.getAsyncIteratorMethodNode_;
if (getAsyncIteratorMethodNode__ != null) {
GetMethodNode getIteratorMethodNode__ = this.getIteratorMethodNode_;
if (getIteratorMethodNode__ != null) {
JSGetLengthNode getLengthNode__ = this.getLengthNode_;
if (getLengthNode__ != null) {
InternalCallNode internalCallNode__ = this.internalCallNode_;
if (internalCallNode__ != null) {
JSFunctionCallNode callRejectNode__ = this.callRejectNode_;
if (callRejectNode__ != null) {
Node node__ = (this);
return arrayFromAsync(arguments0Value_, arguments1Value_, arguments2Value_, arguments3Value_, node__, newPromiseCapability__, getAsyncIteratorMethodNode__, getIteratorMethodNode__, getLengthNode__, INLINED_CREATE_ASYNC_FROM_SYNC_ITERATOR_, INLINED_GET_ITERATOR_FROM_METHOD_NODE_, internalCallNode__, callRejectNode__, INLINED_IS_ASYNC_ITERATOR_);
}
}
}
}
}
}
}
}
CompilerDirectives.transferToInterpreterAndInvalidate();
return executeAndSpecialize(arguments0Value_, arguments1Value_, arguments2Value_, arguments3Value_);
}
private Object executeAndSpecialize(Object arguments0Value, Object arguments1Value, Object arguments2Value, Object arguments3Value) {
int state_0 = this.state_0_;
{
Node node__ = null;
node__ = (this);
NewPromiseCapabilityNode newPromiseCapability__ = this.insert((NewPromiseCapabilityNode.create(getContext())));
Objects.requireNonNull(newPromiseCapability__, "A specialization cache returned a default value. The cache initializer must never return a default value for this cache. Use @Cached(neverDefault=false) to allow default values for this cached value or make sure the cache initializer never returns the default value.");
VarHandle.storeStoreFence();
this.newPromiseCapability_ = newPromiseCapability__;
GetMethodNode getAsyncIteratorMethodNode__ = this.insert((GetMethodNode.create(getContext(), Symbol.SYMBOL_ASYNC_ITERATOR)));
Objects.requireNonNull(getAsyncIteratorMethodNode__, "A specialization cache returned a default value. The cache initializer must never return a default value for this cache. Use @Cached(neverDefault=false) to allow default values for this cached value or make sure the cache initializer never returns the default value.");
VarHandle.storeStoreFence();
this.getAsyncIteratorMethodNode_ = getAsyncIteratorMethodNode__;
GetMethodNode getIteratorMethodNode__ = this.insert((GetMethodNode.create(getContext(), Symbol.SYMBOL_ITERATOR)));
Objects.requireNonNull(getIteratorMethodNode__, "A specialization cache returned a default value. The cache initializer must never return a default value for this cache. Use @Cached(neverDefault=false) to allow default values for this cached value or make sure the cache initializer never returns the default value.");
VarHandle.storeStoreFence();
this.getIteratorMethodNode_ = getIteratorMethodNode__;
JSGetLengthNode getLengthNode__ = this.insert((JSGetLengthNode.create(getContext())));
Objects.requireNonNull(getLengthNode__, "A specialization cache returned a default value. The cache initializer must never return a default value for this cache. Use @Cached(neverDefault=false) to allow default values for this cached value or make sure the cache initializer never returns the default value.");
VarHandle.storeStoreFence();
this.getLengthNode_ = getLengthNode__;
InternalCallNode internalCallNode__ = this.insert((InternalCallNode.create()));
Objects.requireNonNull(internalCallNode__, "A specialization cache returned a default value. The cache initializer must never return a default value for this cache. Use @Cached(neverDefault=false) to allow default values for this cached value or make sure the cache initializer never returns the default value.");
VarHandle.storeStoreFence();
this.internalCallNode_ = internalCallNode__;
JSFunctionCallNode callRejectNode__ = this.insert((JSFunctionCallNode.createCall()));
Objects.requireNonNull(callRejectNode__, "A specialization cache returned a default value. The cache initializer must never return a default value for this cache. Use @Cached(neverDefault=false) to allow default values for this cached value or make sure the cache initializer never returns the default value.");
VarHandle.storeStoreFence();
this.callRejectNode_ = callRejectNode__;
state_0 = state_0 | 0b1 /* add SpecializationActive[ArrayFunctionBuiltins.JSArrayFromAsyncNode.arrayFromAsync(Object, Object, Object, Object, Node, NewPromiseCapabilityNode, GetMethodNode, GetMethodNode, JSGetLengthNode, CreateAsyncFromSyncIteratorNode, GetIteratorFromMethodNode, InternalCallNode, JSFunctionCallNode, InlinedConditionProfile)] */;
this.state_0_ = state_0;
return arrayFromAsync(arguments0Value, arguments1Value, arguments2Value, arguments3Value, node__, newPromiseCapability__, getAsyncIteratorMethodNode__, getIteratorMethodNode__, getLengthNode__, INLINED_CREATE_ASYNC_FROM_SYNC_ITERATOR_, INLINED_GET_ITERATOR_FROM_METHOD_NODE_, internalCallNode__, callRejectNode__, INLINED_IS_ASYNC_ITERATOR_);
}
}
@NeverDefault
public static JSArrayFromAsyncNode create(JSContext context, JSBuiltin builtin, JavaScriptNode[] arguments) {
return new JSArrayFromAsyncNodeGen(context, builtin, arguments);
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy