- java.lang.Object
-
- io.usethesource.capsule.core.trie.BottomUpImmutableNodeTransformer<SN,DN>
-
-
Field Summary
Fields Modifier and Type Field Description private java.util.function.IntFunction<DN[]>arrayConstructorprivate DNdstRootNodeprivate DN[]EMPTY_DN_ARRAYprivate java.util.Stack<DN>mappedNodesStackprivate static intMAX_DEPTHprivate java.util.concurrent.atomic.AtomicReference<java.lang.Thread>mutatorprivate java.util.function.BiFunction<SN,DN[],DN>nodeMapperprivate int[]srcNodeCursorsAndLengthsprivate SN[]srcNodeStackprivate intstackIndex
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description DNapply()(package private) static <SN extends Node,DN extends Node>
DNapplyNodeTransformation(SN rootNode, java.util.function.BiFunction<SN,DN[],DN> nodeMapper, java.util.function.IntFunction<DN[]> arrayConstructor)private voiddropFromStack()private booleanisStackEmpty()private voidprocessStack()private voidpushOnStack(SN srcNode)
-
-
-
Field Detail
-
MAX_DEPTH
private static final int MAX_DEPTH
- See Also:
- Constant Field Values
-
nodeMapper
private final java.util.function.BiFunction<SN extends Node,DN extends Node[],DN extends Node> nodeMapper
-
mutator
private final java.util.concurrent.atomic.AtomicReference<java.lang.Thread> mutator
-
stackIndex
private int stackIndex
-
srcNodeCursorsAndLengths
private final int[] srcNodeCursorsAndLengths
-
-
Method Detail
-
applyNodeTransformation
static final <SN extends Node,DN extends Node> DN applyNodeTransformation(SN rootNode, java.util.function.BiFunction<SN,DN[],DN> nodeMapper, java.util.function.IntFunction<DN[]> arrayConstructor)
-
apply
public final DN apply()
-
isStackEmpty
private final boolean isStackEmpty()
-
pushOnStack
private final void pushOnStack(SN srcNode)
-
dropFromStack
private final void dropFromStack()
-
processStack
private final void processStack()
-
-