tmap/smali_classes3/com/google/common/graph/Traverser$Traversal.smali
2022-06-10 21:38:30 +09:00

228 lines
6.5 KiB
Smali

.class abstract Lcom/google/common/graph/Traverser$Traversal;
.super Ljava/lang/Object;
.source "Traverser.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/google/common/graph/Traverser;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x409
name = "Traversal"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"<N:",
"Ljava/lang/Object;",
">",
"Ljava/lang/Object;"
}
.end annotation
# instance fields
.field public final successorFunction:Lcom/google/common/graph/SuccessorsFunction;
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/google/common/graph/SuccessorsFunction<",
"TN;>;"
}
.end annotation
.end field
# direct methods
.method public constructor <init>(Lcom/google/common/graph/SuccessorsFunction;)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/google/common/graph/SuccessorsFunction<",
"TN;>;)V"
}
.end annotation
.line 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 2
iput-object p1, p0, Lcom/google/common/graph/Traverser$Traversal;->successorFunction:Lcom/google/common/graph/SuccessorsFunction;
return-void
.end method
.method public static inGraph(Lcom/google/common/graph/SuccessorsFunction;)Lcom/google/common/graph/Traverser$Traversal;
.locals 2
.annotation system Ldalvik/annotation/Signature;
value = {
"<N:",
"Ljava/lang/Object;",
">(",
"Lcom/google/common/graph/SuccessorsFunction<",
"TN;>;)",
"Lcom/google/common/graph/Traverser$Traversal<",
"TN;>;"
}
.end annotation
.line 1
new-instance v0, Ljava/util/HashSet;
invoke-direct {v0}, Ljava/util/HashSet;-><init>()V
.line 2
new-instance v1, Lcom/google/common/graph/Traverser$Traversal$1;
invoke-direct {v1, p0, v0}, Lcom/google/common/graph/Traverser$Traversal$1;-><init>(Lcom/google/common/graph/SuccessorsFunction;Ljava/util/Set;)V
return-object v1
.end method
.method public static inTree(Lcom/google/common/graph/SuccessorsFunction;)Lcom/google/common/graph/Traverser$Traversal;
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"<N:",
"Ljava/lang/Object;",
">(",
"Lcom/google/common/graph/SuccessorsFunction<",
"TN;>;)",
"Lcom/google/common/graph/Traverser$Traversal<",
"TN;>;"
}
.end annotation
.line 1
new-instance v0, Lcom/google/common/graph/Traverser$Traversal$2;
invoke-direct {v0, p0}, Lcom/google/common/graph/Traverser$Traversal$2;-><init>(Lcom/google/common/graph/SuccessorsFunction;)V
return-object v0
.end method
.method private topDown(Ljava/util/Iterator;Lcom/google/common/graph/Traverser$InsertionOrder;)Ljava/util/Iterator;
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/util/Iterator<",
"+TN;>;",
"Lcom/google/common/graph/Traverser$InsertionOrder;",
")",
"Ljava/util/Iterator<",
"TN;>;"
}
.end annotation
.line 1
new-instance v0, Ljava/util/ArrayDeque;
invoke-direct {v0}, Ljava/util/ArrayDeque;-><init>()V
.line 2
invoke-virtual {v0, p1}, Ljava/util/ArrayDeque;->add(Ljava/lang/Object;)Z
.line 3
new-instance p1, Lcom/google/common/graph/Traverser$Traversal$3;
invoke-direct {p1, p0, v0, p2}, Lcom/google/common/graph/Traverser$Traversal$3;-><init>(Lcom/google/common/graph/Traverser$Traversal;Ljava/util/Deque;Lcom/google/common/graph/Traverser$InsertionOrder;)V
return-object p1
.end method
# virtual methods
.method public final breadthFirst(Ljava/util/Iterator;)Ljava/util/Iterator;
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/util/Iterator<",
"+TN;>;)",
"Ljava/util/Iterator<",
"TN;>;"
}
.end annotation
.line 1
sget-object v0, Lcom/google/common/graph/Traverser$InsertionOrder;->BACK:Lcom/google/common/graph/Traverser$InsertionOrder;
invoke-direct {p0, p1, v0}, Lcom/google/common/graph/Traverser$Traversal;->topDown(Ljava/util/Iterator;Lcom/google/common/graph/Traverser$InsertionOrder;)Ljava/util/Iterator;
move-result-object p1
return-object p1
.end method
.method public final postOrder(Ljava/util/Iterator;)Ljava/util/Iterator;
.locals 2
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/util/Iterator<",
"+TN;>;)",
"Ljava/util/Iterator<",
"TN;>;"
}
.end annotation
.line 1
new-instance v0, Ljava/util/ArrayDeque;
invoke-direct {v0}, Ljava/util/ArrayDeque;-><init>()V
.line 2
new-instance v1, Ljava/util/ArrayDeque;
invoke-direct {v1}, Ljava/util/ArrayDeque;-><init>()V
.line 3
invoke-virtual {v1, p1}, Ljava/util/ArrayDeque;->add(Ljava/lang/Object;)Z
.line 4
new-instance p1, Lcom/google/common/graph/Traverser$Traversal$4;
invoke-direct {p1, p0, v1, v0}, Lcom/google/common/graph/Traverser$Traversal$4;-><init>(Lcom/google/common/graph/Traverser$Traversal;Ljava/util/Deque;Ljava/util/Deque;)V
return-object p1
.end method
.method public final preOrder(Ljava/util/Iterator;)Ljava/util/Iterator;
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/util/Iterator<",
"+TN;>;)",
"Ljava/util/Iterator<",
"TN;>;"
}
.end annotation
.line 1
sget-object v0, Lcom/google/common/graph/Traverser$InsertionOrder;->FRONT:Lcom/google/common/graph/Traverser$InsertionOrder;
invoke-direct {p0, p1, v0}, Lcom/google/common/graph/Traverser$Traversal;->topDown(Ljava/util/Iterator;Lcom/google/common/graph/Traverser$InsertionOrder;)Ljava/util/Iterator;
move-result-object p1
return-object p1
.end method
.method public abstract visitNext(Ljava/util/Deque;)Ljava/lang/Object;
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/util/Deque<",
"Ljava/util/Iterator<",
"+TN;>;>;)TN;"
}
.end annotation
.annotation runtime Ljavax/annotation/CheckForNull;
.end annotation
.end method