public abstract class com.oracle.truffle.js.builtins.DateFunctionBuiltins$DateParseNode extends com.oracle.truffle.js.nodes.function.JSBuiltinNode
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: com.oracle.truffle.js.builtins.DateFunctionBuiltins$DateParseNode
super_class: com.oracle.truffle.js.nodes.function.JSBuiltinNode
{
private final com.oracle.truffle.api.profiles.ConditionProfile gotFieldsProfile;
descriptor: Lcom/oracle/truffle/api/profiles/ConditionProfile;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
public void <init>(com.oracle.truffle.js.runtime.JSContext, com.oracle.truffle.js.nodes.function.JSBuiltin);
descriptor: (Lcom/oracle/truffle/js/runtime/JSContext;Lcom/oracle/truffle/js/nodes/function/JSBuiltin;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 // com.oracle.truffle.js.builtins.DateFunctionBuiltins$DateParseNode this
start local 1 // com.oracle.truffle.js.runtime.JSContext context
start local 2 // com.oracle.truffle.js.nodes.function.JSBuiltin builtin
0: .line 104
aload 0 /* this */
aload 1 /* context */
aload 2 /* builtin */
invokespecial com.oracle.truffle.js.nodes.function.JSBuiltinNode.<init>:(Lcom/oracle/truffle/js/runtime/JSContext;Lcom/oracle/truffle/js/nodes/function/JSBuiltin;)V
1: .line 101
aload 0 /* this */
invokestatic com.oracle.truffle.api.profiles.ConditionProfile.createBinaryProfile:()Lcom/oracle/truffle/api/profiles/ConditionProfile;
putfield com.oracle.truffle.js.builtins.DateFunctionBuiltins$DateParseNode.gotFieldsProfile:Lcom/oracle/truffle/api/profiles/ConditionProfile;
2: .line 105
return
end local 2 // com.oracle.truffle.js.nodes.function.JSBuiltin builtin
end local 1 // com.oracle.truffle.js.runtime.JSContext context
end local 0 // com.oracle.truffle.js.builtins.DateFunctionBuiltins$DateParseNode this
LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/truffle/js/builtins/DateFunctionBuiltins$DateParseNode;
0 3 1 context Lcom/oracle/truffle/js/runtime/JSContext;
0 3 2 builtin Lcom/oracle/truffle/js/nodes/function/JSBuiltin;
MethodParameters:
Name Flags
context
builtin
protected double parse(java.lang.Object, com.oracle.truffle.js.nodes.cast.JSToStringNode);
descriptor: (Ljava/lang/Object;Lcom/oracle/truffle/js/nodes/cast/JSToStringNode;)D
flags: (0x0004) ACC_PROTECTED
Code:
stack=16, locals=5, args_size=3
start local 0 // com.oracle.truffle.js.builtins.DateFunctionBuiltins$DateParseNode this
start local 1 // java.lang.Object parseDate
start local 2 // com.oracle.truffle.js.nodes.cast.JSToStringNode toStringNode
0: .line 110
aload 2 /* toStringNode */
aload 1 /* parseDate */
invokevirtual com.oracle.truffle.js.nodes.cast.JSToStringNode.executeString:(Ljava/lang/Object;)Ljava/lang/String;
astore 3 /* dateString */
start local 3 // java.lang.String dateString
1: .line 111
aload 0 /* this */
invokevirtual com.oracle.truffle.js.builtins.DateFunctionBuiltins$DateParseNode.getContext:()Lcom/oracle/truffle/js/runtime/JSContext;
invokevirtual com.oracle.truffle.js.runtime.JSContext.getEvaluator:()Lcom/oracle/truffle/js/runtime/Evaluator;
aload 0 /* this */
invokevirtual com.oracle.truffle.js.builtins.DateFunctionBuiltins$DateParseNode.getContext:()Lcom/oracle/truffle/js/runtime/JSContext;
invokevirtual com.oracle.truffle.js.runtime.JSContext.getRealm:()Lcom/oracle/truffle/js/runtime/JSRealm;
aload 3 /* dateString */
invokevirtual java.lang.String.trim:()Ljava/lang/String;
invokeinterface com.oracle.truffle.js.runtime.Evaluator.parseDate:(Lcom/oracle/truffle/js/runtime/JSRealm;Ljava/lang/String;)[Ljava/lang/Integer;
astore 4 /* fields */
start local 4 // java.lang.Integer[] fields
2: .line 112
aload 0 /* this */
getfield com.oracle.truffle.js.builtins.DateFunctionBuiltins$DateParseNode.gotFieldsProfile:Lcom/oracle/truffle/api/profiles/ConditionProfile;
aload 4 /* fields */
ifnull 3
iconst_1
goto 4
StackMap locals: com.oracle.truffle.js.builtins.DateFunctionBuiltins$DateParseNode java.lang.Object com.oracle.truffle.js.nodes.cast.JSToStringNode java.lang.String java.lang.Integer[]
StackMap stack: com.oracle.truffle.api.profiles.ConditionProfile
3: iconst_0
StackMap locals: com.oracle.truffle.js.builtins.DateFunctionBuiltins$DateParseNode java.lang.Object com.oracle.truffle.js.nodes.cast.JSToStringNode java.lang.String java.lang.Integer[]
StackMap stack: com.oracle.truffle.api.profiles.ConditionProfile int
4: invokevirtual com.oracle.truffle.api.profiles.ConditionProfile.profile:(Z)Z
ifeq 6
5: .line 113
aload 4 /* fields */
iconst_0
aaload
invokevirtual java.lang.Integer.intValue:()I
i2d
aload 4 /* fields */
iconst_1
aaload
invokevirtual java.lang.Integer.intValue:()I
i2d
aload 4 /* fields */
iconst_2
aaload
invokevirtual java.lang.Integer.intValue:()I
i2d
aload 4 /* fields */
iconst_3
aaload
invokevirtual java.lang.Integer.intValue:()I
i2d
aload 4 /* fields */
iconst_4
aaload
invokevirtual java.lang.Integer.intValue:()I
i2d
aload 4 /* fields */
iconst_5
aaload
invokevirtual java.lang.Integer.intValue:()I
i2d
aload 4 /* fields */
bipush 6
aaload
invokevirtual java.lang.Integer.intValue:()I
i2d
aload 4 /* fields */
bipush 7
aaload
aload 0 /* this */
invokevirtual com.oracle.truffle.js.builtins.DateFunctionBuiltins$DateParseNode.getContext:()Lcom/oracle/truffle/js/runtime/JSContext;
invokestatic com.oracle.truffle.js.runtime.builtins.JSDate.makeDate:(DDDDDDDLjava/lang/Integer;Lcom/oracle/truffle/js/runtime/JSContext;)D
dreturn
6: .line 115
StackMap locals:
StackMap stack:
ldc NaN
dreturn
end local 4 // java.lang.Integer[] fields
end local 3 // java.lang.String dateString
end local 2 // com.oracle.truffle.js.nodes.cast.JSToStringNode toStringNode
end local 1 // java.lang.Object parseDate
end local 0 // com.oracle.truffle.js.builtins.DateFunctionBuiltins$DateParseNode this
LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/oracle/truffle/js/builtins/DateFunctionBuiltins$DateParseNode;
0 7 1 parseDate Ljava/lang/Object;
0 7 2 toStringNode Lcom/oracle/truffle/js/nodes/cast/JSToStringNode;
1 7 3 dateString Ljava/lang/String;
2 7 4 fields [Ljava/lang/Integer;
RuntimeVisibleAnnotations:
com.oracle.truffle.api.dsl.Specialization()
RuntimeInvisibleParameterAnnotations:
0:
1:
com.oracle.truffle.api.dsl.Cached(value = "create()")
MethodParameters:
Name Flags
parseDate
toStringNode
}
SourceFile: "DateFunctionBuiltins.java"
NestHost: com.oracle.truffle.js.builtins.DateFunctionBuiltins
InnerClasses:
public abstract DateParseNode = com.oracle.truffle.js.builtins.DateFunctionBuiltins$DateParseNode of com.oracle.truffle.js.builtins.DateFunctionBuiltins