class org.terracotta.context.query.Filter implements org.terracotta.context.query.Query
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.terracotta.context.query.Filter
super_class: java.lang.Object
{
private final org.terracotta.context.query.Matcher<? super org.terracotta.context.TreeNode> filter;
descriptor: Lorg/terracotta/context/query/Matcher;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lorg/terracotta/context/query/Matcher<-Lorg/terracotta/context/TreeNode;>;
public void <init>(org.terracotta.context.query.Matcher<? super org.terracotta.context.TreeNode>);
descriptor: (Lorg/terracotta/context/query/Matcher;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 1
ifnonnull 3
2: new java.lang.NullPointerException
dup
ldc "Cannot filter using a null matcher"
invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals: org.terracotta.context.query.Filter org.terracotta.context.query.Matcher
StackMap stack:
aload 0
aload 1
putfield org.terracotta.context.query.Filter.filter:Lorg/terracotta/context/query/Matcher;
4: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/terracotta/context/query/Filter;
0 5 1 filter Lorg/terracotta/context/query/Matcher<-Lorg/terracotta/context/TreeNode;>;
Signature: (Lorg/terracotta/context/query/Matcher<-Lorg/terracotta/context/TreeNode;>;)V
MethodParameters:
Name Flags
filter
public java.util.Set<org.terracotta.context.TreeNode> execute(java.util.Set<org.terracotta.context.TreeNode>);
descriptor: (Ljava/util/Set;)Ljava/util/Set;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: new java.util.HashSet
dup
aload 1
invokespecial java.util.HashSet.<init>:(Ljava/util/Collection;)V
astore 2
start local 2 1: aload 2
aload 0
invokedynamic test(Lorg/terracotta/context/query/Filter;)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
org/terracotta/context/query/Filter.lambda$0(Lorg/terracotta/context/TreeNode;)Z (7)
(Lorg/terracotta/context/TreeNode;)Z
invokeinterface java.util.Set.removeIf:(Ljava/util/function/Predicate;)Z
pop
2: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/terracotta/context/query/Filter;
0 3 1 input Ljava/util/Set<Lorg/terracotta/context/TreeNode;>;
1 3 2 output Ljava/util/Set<Lorg/terracotta/context/TreeNode;>;
Signature: (Ljava/util/Set<Lorg/terracotta/context/TreeNode;>;)Ljava/util/Set<Lorg/terracotta/context/TreeNode;>;
MethodParameters:
Name Flags
input
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
ldc "filter for nodes with "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield org.terracotta.context.query.Filter.filter:Lorg/terracotta/context/query/Matcher;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/terracotta/context/query/Filter;
private boolean lambda$0(org.terracotta.context.TreeNode);
descriptor: (Lorg/terracotta/context/TreeNode;)Z
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.terracotta.context.query.Filter.filter:Lorg/terracotta/context/query/Matcher;
aload 1
invokevirtual org.terracotta.context.query.Matcher.matches:(Ljava/lang/Object;)Z
ifeq 1
iconst_0
goto 2
StackMap locals:
StackMap stack:
1: iconst_1
StackMap locals:
StackMap stack: int
2: ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/terracotta/context/query/Filter;
0 3 1 treeNode Lorg/terracotta/context/TreeNode;
}
SourceFile: "Filter.java"
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles