abstract class com.sun.tools.javac.comp.Operators$BinaryOperatorHelper extends com.sun.tools.javac.comp.Operators$OperatorHelper implements java.util.function.BiPredicate<com.sun.tools.javac.code.Type, com.sun.tools.javac.code.Type>
minor version: 0
major version: 59
flags: flags: (0x0420) ACC_SUPER, ACC_ABSTRACT
this_class: com.sun.tools.javac.comp.Operators$BinaryOperatorHelper
super_class: com.sun.tools.javac.comp.Operators$OperatorHelper
{
final com.sun.tools.javac.comp.Operators this$0;
descriptor: Lcom/sun/tools/javac/comp/Operators;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
void <init>(com.sun.tools.javac.comp.Operators, com.sun.tools.javac.tree.JCTree$Tag);
descriptor: (Lcom/sun/tools/javac/comp/Operators;Lcom/sun/tools/javac/tree/JCTree$Tag;)V
flags: (0x0000)
Code:
stack=3, locals=3, args_size=3
start local 0 start local 2 0: aload 0
aload 1
putfield com.sun.tools.javac.comp.Operators$BinaryOperatorHelper.this$0:Lcom/sun/tools/javac/comp/Operators;
1: aload 0
aload 1
aload 2
invokespecial com.sun.tools.javac.comp.Operators$OperatorHelper.<init>:(Lcom/sun/tools/javac/comp/Operators;Lcom/sun/tools/javac/tree/JCTree$Tag;)V
2: return
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/tools/javac/comp/Operators$BinaryOperatorHelper;
0 3 2 tag Lcom/sun/tools/javac/tree/JCTree$Tag;
MethodParameters:
Name Flags
this$0 final
tag
final com.sun.tools.javac.code.Symbol$OperatorSymbol doLookup(com.sun.tools.javac.code.Type, com.sun.tools.javac.code.Type);
descriptor: (Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/code/Symbol$OperatorSymbol;
flags: (0x0010) ACC_FINAL
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 0
aload 1
aload 2
invokedynamic test(Lcom/sun/tools/javac/comp/Operators$BinaryOperatorHelper;Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/code/Type;)Ljava/util/function/Predicate;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Z
com/sun/tools/javac/comp/Operators$BinaryOperatorHelper.lambda$0(Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/code/Symbol$OperatorSymbol;)Z (7)
(Lcom/sun/tools/javac/code/Symbol$OperatorSymbol;)Z
invokevirtual com.sun.tools.javac.comp.Operators$BinaryOperatorHelper.doLookup:(Ljava/util/function/Predicate;)Lcom/sun/tools/javac/code/Symbol$OperatorSymbol;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/javac/comp/Operators$BinaryOperatorHelper;
0 1 1 t1 Lcom/sun/tools/javac/code/Type;
0 1 2 t2 Lcom/sun/tools/javac/code/Type;
MethodParameters:
Name Flags
t1
t2
boolean isBinaryOperatorApplicable(com.sun.tools.javac.code.Symbol$OperatorSymbol, com.sun.tools.javac.code.Type, com.sun.tools.javac.code.Type);
descriptor: (Lcom/sun/tools/javac/code/Symbol$OperatorSymbol;Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/code/Type;)Z
flags: (0x0000)
Code:
stack=3, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
getfield com.sun.tools.javac.code.Symbol$OperatorSymbol.type:Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.code.Type.getParameterTypes:()Lcom/sun/tools/javac/util/List;
astore 4
start local 4 1: aload 0
getfield com.sun.tools.javac.comp.Operators$BinaryOperatorHelper.this$0:Lcom/sun/tools/javac/comp/Operators;
getfield com.sun.tools.javac.comp.Operators.types:Lcom/sun/tools/javac/code/Types;
aload 4
getfield com.sun.tools.javac.util.List.head:Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Type
aload 2
invokevirtual com.sun.tools.javac.code.Types.isSameType:(Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/code/Type;)Z
ifeq 4
2: aload 0
getfield com.sun.tools.javac.comp.Operators$BinaryOperatorHelper.this$0:Lcom/sun/tools/javac/comp/Operators;
getfield com.sun.tools.javac.comp.Operators.types:Lcom/sun/tools/javac/code/Types;
aload 4
getfield com.sun.tools.javac.util.List.tail:Lcom/sun/tools/javac/util/List;
getfield com.sun.tools.javac.util.List.head:Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Type
aload 3
invokevirtual com.sun.tools.javac.code.Types.isSameType:(Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/code/Type;)Z
ifeq 4
3: iconst_1
ireturn
StackMap locals: com.sun.tools.javac.util.List
StackMap stack:
4: iconst_0
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/sun/tools/javac/comp/Operators$BinaryOperatorHelper;
0 5 1 op Lcom/sun/tools/javac/code/Symbol$OperatorSymbol;
0 5 2 t1 Lcom/sun/tools/javac/code/Type;
0 5 3 t2 Lcom/sun/tools/javac/code/Type;
1 5 4 formals Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
MethodParameters:
Name Flags
op
t1
t2
final com.sun.tools.javac.comp.Operators$BinaryOperatorHelper addBinaryOperator(com.sun.tools.javac.comp.Operators$OperatorType, com.sun.tools.javac.comp.Operators$OperatorType, com.sun.tools.javac.comp.Operators$OperatorType, int[]);
descriptor: (Lcom/sun/tools/javac/comp/Operators$OperatorType;Lcom/sun/tools/javac/comp/Operators$OperatorType;Lcom/sun/tools/javac/comp/Operators$OperatorType;[I)Lcom/sun/tools/javac/comp/Operators$BinaryOperatorHelper;
flags: (0x0090) ACC_FINAL, ACC_VARARGS
Code:
stack=7, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 0
getfield com.sun.tools.javac.comp.Operators$BinaryOperatorHelper.operatorSuppliers:Lcom/sun/tools/javac/util/List;
aload 0
aload 1
aload 2
aload 3
aload 4
invokedynamic get(Lcom/sun/tools/javac/comp/Operators$BinaryOperatorHelper;Lcom/sun/tools/javac/comp/Operators$OperatorType;Lcom/sun/tools/javac/comp/Operators$OperatorType;Lcom/sun/tools/javac/comp/Operators$OperatorType;[I)Ljava/util/function/Supplier;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
()Ljava/lang/Object;
com/sun/tools/javac/comp/Operators$BinaryOperatorHelper.lambda$1(Lcom/sun/tools/javac/comp/Operators$OperatorType;Lcom/sun/tools/javac/comp/Operators$OperatorType;Lcom/sun/tools/javac/comp/Operators$OperatorType;[I)Lcom/sun/tools/javac/code/Symbol$OperatorSymbol; (7)
()Lcom/sun/tools/javac/code/Symbol$OperatorSymbol;
invokevirtual com.sun.tools.javac.util.List.prepend:(Ljava/lang/Object;)Lcom/sun/tools/javac/util/List;
putfield com.sun.tools.javac.comp.Operators$BinaryOperatorHelper.operatorSuppliers:Lcom/sun/tools/javac/util/List;
1: aload 0
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/tools/javac/comp/Operators$BinaryOperatorHelper;
0 2 1 arg1 Lcom/sun/tools/javac/comp/Operators$OperatorType;
0 2 2 arg2 Lcom/sun/tools/javac/comp/Operators$OperatorType;
0 2 3 res Lcom/sun/tools/javac/comp/Operators$OperatorType;
0 2 4 opcode [I
MethodParameters:
Name Flags
arg1
arg2
res
opcode
abstract com.sun.tools.javac.code.Symbol$OperatorSymbol resolve(com.sun.tools.javac.code.Type, com.sun.tools.javac.code.Type);
descriptor: (Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/code/Symbol$OperatorSymbol;
flags: (0x0400) ACC_ABSTRACT
MethodParameters:
Name Flags
t1
t2
private boolean lambda$0(com.sun.tools.javac.code.Type, com.sun.tools.javac.code.Type, com.sun.tools.javac.code.Symbol$OperatorSymbol);
descriptor: (Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/code/Symbol$OperatorSymbol;)Z
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=4, locals=4, args_size=4
start local 0 start local 3 0: aload 0
aload 3
aload 1
aload 2
invokevirtual com.sun.tools.javac.comp.Operators$BinaryOperatorHelper.isBinaryOperatorApplicable:(Lcom/sun/tools/javac/code/Symbol$OperatorSymbol;Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/code/Type;)Z
ireturn
end local 3 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/javac/comp/Operators$BinaryOperatorHelper;
0 1 3 op Lcom/sun/tools/javac/code/Symbol$OperatorSymbol;
private com.sun.tools.javac.code.Symbol$OperatorSymbol lambda$1(com.sun.tools.javac.comp.Operators$OperatorType, com.sun.tools.javac.comp.Operators$OperatorType, com.sun.tools.javac.comp.Operators$OperatorType, int[]);
descriptor: (Lcom/sun/tools/javac/comp/Operators$OperatorType;Lcom/sun/tools/javac/comp/Operators$OperatorType;Lcom/sun/tools/javac/comp/Operators$OperatorType;[I)Lcom/sun/tools/javac/code/Symbol$OperatorSymbol;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=5, locals=5, args_size=5
start local 0 0: aload 0
getfield com.sun.tools.javac.comp.Operators$BinaryOperatorHelper.this$0:Lcom/sun/tools/javac/comp/Operators;
aload 0
getfield com.sun.tools.javac.comp.Operators$BinaryOperatorHelper.name:Lcom/sun/tools/javac/util/Name;
aload 1
aload 2
invokestatic com.sun.tools.javac.util.List.of:(Ljava/lang/Object;Ljava/lang/Object;)Lcom/sun/tools/javac/util/List;
aload 3
aload 4
invokevirtual com.sun.tools.javac.comp.Operators.makeOperator:(Lcom/sun/tools/javac/util/Name;Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/comp/Operators$OperatorType;[I)Lcom/sun/tools/javac/code/Symbol$OperatorSymbol;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/javac/comp/Operators$BinaryOperatorHelper;
}
Signature: Lcom/sun/tools/javac/comp/Operators$OperatorHelper;Ljava/util/function/BiPredicate<Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/code/Type;>;
SourceFile: "Operators.java"
NestHost: com.sun.tools.javac.comp.Operators
InnerClasses:
public OperatorSymbol = com.sun.tools.javac.code.Symbol$OperatorSymbol of com.sun.tools.javac.code.Symbol
abstract BinaryOperatorHelper = com.sun.tools.javac.comp.Operators$BinaryOperatorHelper of com.sun.tools.javac.comp.Operators
abstract OperatorHelper = com.sun.tools.javac.comp.Operators$OperatorHelper of com.sun.tools.javac.comp.Operators
final OperatorType = com.sun.tools.javac.comp.Operators$OperatorType of com.sun.tools.javac.comp.Operators
public final Tag = com.sun.tools.javac.tree.JCTree$Tag of com.sun.tools.javac.tree.JCTree
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles