public abstract class com.oracle.truffle.js.nodes.cast.JSToRegExpNode extends com.oracle.truffle.js.nodes.JavaScriptBaseNode
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: com.oracle.truffle.js.nodes.cast.JSToRegExpNode
super_class: com.oracle.truffle.js.nodes.JavaScriptBaseNode
{
protected final com.oracle.truffle.js.runtime.JSContext context;
descriptor: Lcom/oracle/truffle/js/runtime/JSContext;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
private com.oracle.truffle.js.nodes.intl.CreateRegExpNode createRegExpNode;
descriptor: Lcom/oracle/truffle/js/nodes/intl/CreateRegExpNode;
flags: (0x0002) ACC_PRIVATE
RuntimeVisibleAnnotations:
com.oracle.truffle.api.nodes.Node$Child()
protected void <init>(com.oracle.truffle.js.runtime.JSContext);
descriptor: (Lcom/oracle/truffle/js/runtime/JSContext;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial com.oracle.truffle.js.nodes.JavaScriptBaseNode.<init>:()V
1: aload 0
aload 1
putfield com.oracle.truffle.js.nodes.cast.JSToRegExpNode.context:Lcom/oracle/truffle/js/runtime/JSContext;
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/truffle/js/nodes/cast/JSToRegExpNode;
0 3 1 context Lcom/oracle/truffle/js/runtime/JSContext;
MethodParameters:
Name Flags
context
public abstract com.oracle.truffle.api.object.DynamicObject execute(java.lang.Object);
descriptor: (Ljava/lang/Object;)Lcom/oracle/truffle/api/object/DynamicObject;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
target
public static com.oracle.truffle.js.nodes.cast.JSToRegExpNode create(com.oracle.truffle.js.runtime.JSContext);
descriptor: (Lcom/oracle/truffle/js/runtime/JSContext;)Lcom/oracle/truffle/js/nodes/cast/JSToRegExpNode;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
0: new java.lang.Error
dup
ldc "Unresolved compilation problem: \n\tJSToRegExpNodeGen cannot be resolved\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
LocalVariableTable:
Start End Slot Name Signature
MethodParameters:
Name Flags
context
protected com.oracle.truffle.api.object.DynamicObject returnRegExp(com.oracle.truffle.api.object.DynamicObject);
descriptor: (Lcom/oracle/truffle/api/object/DynamicObject;)Lcom/oracle/truffle/api/object/DynamicObject;
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/js/nodes/cast/JSToRegExpNode;
0 1 1 regExp Lcom/oracle/truffle/api/object/DynamicObject;
RuntimeVisibleAnnotations:
com.oracle.truffle.api.dsl.Specialization(guards = {"isJSRegExp(regExp)"})
MethodParameters:
Name Flags
regExp
protected com.oracle.truffle.api.object.DynamicObject createRegExp(java.lang.Object, com.oracle.truffle.js.nodes.cast.JSToStringNode, com.oracle.truffle.js.nodes.CompileRegexNode);
descriptor: (Ljava/lang/Object;Lcom/oracle/truffle/js/nodes/cast/JSToStringNode;Lcom/oracle/truffle/js/nodes/CompileRegexNode;)Lcom/oracle/truffle/api/object/DynamicObject;
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 2
aload 1
invokevirtual com.oracle.truffle.js.nodes.cast.JSToStringNode.executeString:(Ljava/lang/Object;)Ljava/lang/String;
astore 4
start local 4 1: aload 3
aload 4
invokevirtual com.oracle.truffle.js.nodes.CompileRegexNode.compile:(Ljava/lang/String;)Ljava/lang/Object;
astore 5
start local 5 2: aload 0
invokevirtual com.oracle.truffle.js.nodes.cast.JSToRegExpNode.getCreateRegExpNode:()Lcom/oracle/truffle/js/nodes/intl/CreateRegExpNode;
aload 5
invokevirtual com.oracle.truffle.js.nodes.intl.CreateRegExpNode.createRegExp:(Ljava/lang/Object;)Lcom/oracle/truffle/api/object/DynamicObject;
areturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/truffle/js/nodes/cast/JSToRegExpNode;
0 3 1 patternObj Ljava/lang/Object;
0 3 2 toStringNode Lcom/oracle/truffle/js/nodes/cast/JSToStringNode;
0 3 3 compileRegexNode Lcom/oracle/truffle/js/nodes/CompileRegexNode;
1 3 4 pattern Ljava/lang/String;
2 3 5 regex Ljava/lang/Object;
RuntimeVisibleAnnotations:
com.oracle.truffle.api.dsl.Specialization(guards = {"!isJSRegExp(patternObj)"})
RuntimeInvisibleParameterAnnotations:
0:
1:
com.oracle.truffle.api.dsl.Cached(value = "createUndefinedToEmpty()")
2:
com.oracle.truffle.api.dsl.Cached(value = "create(context)")
MethodParameters:
Name Flags
patternObj
toStringNode
compileRegexNode
private com.oracle.truffle.js.nodes.intl.CreateRegExpNode getCreateRegExpNode();
descriptor: ()Lcom/oracle/truffle/js/nodes/intl/CreateRegExpNode;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.truffle.js.nodes.cast.JSToRegExpNode.createRegExpNode:Lcom/oracle/truffle/js/nodes/intl/CreateRegExpNode;
ifnonnull 3
1: invokestatic com.oracle.truffle.api.CompilerDirectives.transferToInterpreterAndInvalidate:()V
2: aload 0
aload 0
aload 0
getfield com.oracle.truffle.js.nodes.cast.JSToRegExpNode.context:Lcom/oracle/truffle/js/runtime/JSContext;
invokestatic com.oracle.truffle.js.nodes.intl.CreateRegExpNode.create:(Lcom/oracle/truffle/js/runtime/JSContext;)Lcom/oracle/truffle/js/nodes/intl/CreateRegExpNode;
invokevirtual com.oracle.truffle.js.nodes.cast.JSToRegExpNode.insert:(Lcom/oracle/truffle/api/nodes/Node;)Lcom/oracle/truffle/api/nodes/Node;
checkcast com.oracle.truffle.js.nodes.intl.CreateRegExpNode
putfield com.oracle.truffle.js.nodes.cast.JSToRegExpNode.createRegExpNode:Lcom/oracle/truffle/js/nodes/intl/CreateRegExpNode;
3: StackMap locals:
StackMap stack:
aload 0
getfield com.oracle.truffle.js.nodes.cast.JSToRegExpNode.createRegExpNode:Lcom/oracle/truffle/js/nodes/intl/CreateRegExpNode;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/oracle/truffle/js/nodes/cast/JSToRegExpNode;
}
SourceFile: "JSToRegExpNode.java"
InnerClasses:
public abstract Child = com.oracle.truffle.api.nodes.Node$Child of com.oracle.truffle.api.nodes.Node