Class CharRecoveryOptimizer
- java.lang.Object
-
- com.vladsch.flexmark.util.sequence.builder.CharRecoveryOptimizer
-
- All Implemented Interfaces:
SegmentOptimizer
,java.util.function.BiFunction<java.lang.CharSequence,java.lang.Object[],java.lang.Object[]>
public class CharRecoveryOptimizer extends java.lang.Object implements SegmentOptimizer
-
-
Field Summary
Fields Modifier and Type Field Description private PositionAnchor
anchor
private int
prevEolPos
-
Constructor Summary
Constructors Constructor Description CharRecoveryOptimizer(PositionAnchor anchor)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.Object[]
apply(@NotNull java.lang.CharSequence chars, java.lang.Object[] parts)
Optimize segment BASE parts surrounding TEXT contained in Object[] array.(package private) int
nextMatchPos(@NotNull java.lang.CharSequence base, java.lang.CharSequence chars, int startIndex, int fromIndex)
(package private) int
prevMatchPos(@NotNull java.lang.CharSequence base, java.lang.CharSequence chars, int startIndex, int endIndex)
-
-
-
Field Detail
-
anchor
private final PositionAnchor anchor
-
prevEolPos
private int prevEolPos
-
-
Constructor Detail
-
CharRecoveryOptimizer
public CharRecoveryOptimizer(PositionAnchor anchor)
-
-
Method Detail
-
prevMatchPos
int prevMatchPos(@NotNull @NotNull java.lang.CharSequence base, java.lang.CharSequence chars, int startIndex, int endIndex)
-
nextMatchPos
int nextMatchPos(@NotNull @NotNull java.lang.CharSequence base, java.lang.CharSequence chars, int startIndex, int fromIndex)
-
apply
public java.lang.Object[] apply(@NotNull @NotNull java.lang.CharSequence chars, java.lang.Object[] parts)
Description copied from interface:SegmentOptimizer
Optimize segment BASE parts surrounding TEXT contained in Object[] array.- Specified by:
apply
in interfacejava.util.function.BiFunction<java.lang.CharSequence,java.lang.Object[],java.lang.Object[]>
- Specified by:
apply
in interfaceSegmentOptimizer
- Parameters:
chars
- base character sequenceparts
- parts to optimize Object[0] - previous BASE Range, will be Range.NULL if no previous range Object[1] - char sequence of TEXT to optimize Object[2] - next BASE Range, will be Range.NULL if no next range- Returns:
- Object[] containing optimized segments, non-null Range(s) are BASE segments, CharSequence(s) are TEXT segments null entry ignored, an optimal filler for unused entries Range with -ve start/end or -ve span are skipped CharSequence with 0 length skipped
-
-