Class SegmentOffsetTree
java.lang.Object
com.vladsch.flexmark.util.sequence.builder.tree.SegmentTree
com.vladsch.flexmark.util.sequence.builder.tree.SegmentOffsetTree
Segment tree which uses offsets instead of aggregated length of segments
Used to find original base offsets in SegmentedSequence result
NOTE: although it is a SegmentTree, most of the SegmentTree functions use index
into sequence for context and cannot be used with offset data.
Their use will throw IllegalStateException if invoked.
-
Nested Class Summary
Nested classes/interfaces inherited from class SegmentTree
SegmentTree.SegmentTreeData -
Field Summary
FieldsFields inherited from class SegmentTree
F_ANCHOR_FLAGS, MAX_VALUE, segmentBytes, treeData -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedSegmentOffsetTree(@NotNull int[] treeData, @NotNull byte[] segmentBytes, @NotNull int[] startIndices) -
Method Summary
Modifier and TypeMethodDescriptionvoidaddSegments(@NotNull IBasedSegmentBuilder<?> builder, int startIndex, int endIndex, int startOffset, int endOffset, int startPos, int endPos) Deprecated.voidaddSegments(@NotNull IBasedSegmentBuilder<?> builder, @NotNull SegmentTreeRange treeRange) Deprecated.intaggrLength(int pos) Deprecated.static @NotNull SegmentOffsetTreebuild(@NotNull BasedSequence baseSeq) static @NotNull SegmentOffsetTreebuild(@NotNull BasedSegmentBuilder builder) static @NotNull SegmentOffsetTreebuild(@NotNull Iterable<Seg> segments, @NotNull CharSequence allText) intendOffset(int pos) @Nullable SegmentfindSegment(int index, int startPos, int endPos, @NotNull BasedSequence baseSeq, @Nullable Segment hint) Deprecated.@Nullable SegmentfindSegment(int index, @NotNull BasedSequence baseSeq, @Nullable Segment hint) Deprecated.@Nullable SegmentfindSegmentByOffset(int offset, @NotNull BasedSequence baseSeq, @Nullable Segment hint) @Nullable SegmentTreePosfindSegmentPos(int index) Deprecated.@Nullable SegmentTreePosfindSegmentPos(int index, int startPos, int endPos) Deprecated.@Nullable SegmentTreePosfindSegmentPosByOffset(int offset) @Nullable SegmentgetNextText(@NotNull Segment segment, @NotNull BasedSequence baseSeq) @Nullable SegmentgetPrevAnchor(int pos, @NotNull BasedSequence baseSeq) Deprecated.@Nullable SegmentgetPreviousText(@NotNull Segment segment, @NotNull BasedSequence baseSeq) @NotNull SegmentgetSegment(int pos, @NotNull BasedSequence baseSeq) @NotNull SegmentTreeRangegetSegmentRange(int startIndex, int endIndex, int startPos, int endPos, @NotNull BasedSequence baseSeq, @Nullable Segment hint) Deprecated.intgetStartIndex(int pos) booleanhasPreviousAnchor(int pos) Deprecated.intpreviousAnchorOffset(int pos) Deprecated.@NotNull StringtoString(@NotNull BasedSequence baseSeq) Methods inherited from class SegmentTree
aggrLength, buildTreeData, byteOffset, byteOffset, byteOffsetData, byteOffsetData, findSegment, findSegmentPos, getAnchorOffset, getByteOffset, getCharSequence, getPrevAnchor, getSegment, getSegment, getSegmentBytes, getSegmentOffsetTree, getTextEndOffset, getTextStartOffset, getTreeData, hasPreviousAnchor, previousAnchorOffset, setTreeData, size, toString
-
Field Details
-
startIndices
@NotNull protected final @NotNull int[] startIndices
-
-
Constructor Details
-
SegmentOffsetTree
protected SegmentOffsetTree(@NotNull @NotNull int[] treeData, @NotNull @NotNull byte[] segmentBytes, @NotNull @NotNull int[] startIndices)
-
-
Method Details
-
build
@NotNull public static @NotNull SegmentOffsetTree build(@NotNull @NotNull Iterable<Seg> segments, @NotNull @NotNull CharSequence allText) -
build
@NotNull public static @NotNull SegmentOffsetTree build(@NotNull @NotNull BasedSegmentBuilder builder) -
build
-
endOffset
public int endOffset(int pos) -
getStartIndex
public int getStartIndex(int pos) -
getSegment
- Overrides:
getSegmentin classSegmentTree
-
findSegmentPosByOffset
-
getPreviousText
@Nullable public @Nullable Segment getPreviousText(@NotNull @NotNull Segment segment, @NotNull @NotNull BasedSequence baseSeq) -
getNextText
@Nullable public @Nullable Segment getNextText(@NotNull @NotNull Segment segment, @NotNull @NotNull BasedSequence baseSeq) -
findSegmentByOffset
@Nullable public @Nullable Segment findSegmentByOffset(int offset, @NotNull @NotNull BasedSequence baseSeq, @Nullable @Nullable Segment hint) -
toString
- Overrides:
toStringin classSegmentTree
-
hasPreviousAnchor
Deprecated.- Overrides:
hasPreviousAnchorin classSegmentTree
-
previousAnchorOffset
Deprecated.- Overrides:
previousAnchorOffsetin classSegmentTree
-
aggrLength
-
findSegmentPos
Deprecated.- Overrides:
findSegmentPosin classSegmentTree
-
findSegment
@Deprecated @Nullable public @Nullable Segment findSegment(int index, @NotNull @NotNull BasedSequence baseSeq, @Nullable @Nullable Segment hint) Deprecated.- Overrides:
findSegmentin classSegmentTree
-
findSegment
@Deprecated @Nullable public @Nullable Segment findSegment(int index, int startPos, int endPos, @NotNull @NotNull BasedSequence baseSeq, @Nullable @Nullable Segment hint) Deprecated.- Overrides:
findSegmentin classSegmentTree
-
getSegmentRange
@Deprecated @NotNull public @NotNull SegmentTreeRange getSegmentRange(int startIndex, int endIndex, int startPos, int endPos, @NotNull @NotNull BasedSequence baseSeq, @Nullable @Nullable Segment hint) Deprecated.- Overrides:
getSegmentRangein classSegmentTree
-
addSegments
@Deprecated public void addSegments(@NotNull @NotNull IBasedSegmentBuilder<?> builder, @NotNull @NotNull SegmentTreeRange treeRange) Deprecated.Description copied from class:SegmentTreeAdd segments selected by given treeRange- Overrides:
addSegmentsin classSegmentTree- Parameters:
builder- based segment buildertreeRange- treeRange for which to add segments
-
addSegments
@Deprecated public void addSegments(@NotNull @NotNull IBasedSegmentBuilder<?> builder, int startIndex, int endIndex, int startOffset, int endOffset, int startPos, int endPos) Deprecated.Description copied from class:SegmentTreeAdd segments of subsequence of this tree to builder- Overrides:
addSegmentsin classSegmentTree- Parameters:
builder- builder to which to add the segmentsstartIndex- start index of sub-sequence of segment treeendIndex- end index of sub-sequence of segment treestartOffset- start offset of the subsequence to use as start anchorendOffset- end offset of the subsequence to use as end anchorstartPos- start pos of sub-sequence segments in treeendPos- end pos of sub-sequence segments in tree
-
findSegmentPos
@Deprecated @Nullable public @Nullable SegmentTreePos findSegmentPos(int index, int startPos, int endPos) Deprecated.- Overrides:
findSegmentPosin classSegmentTree
-
getPrevAnchor
@Deprecated @Nullable public @Nullable Segment getPrevAnchor(int pos, @NotNull @NotNull BasedSequence baseSeq) Deprecated.- Overrides:
getPrevAnchorin classSegmentTree
-