public abstract class AbstractConditionCharScan extends AbstractCharScan
| 构造器和说明 |
|---|
AbstractConditionCharScan() |
| 限定符和类型 | 方法和说明 |
|---|---|
protected void |
addItemWhenStringMatch(int i,
char c,
char[] chars,
CharsScanContext context)
当字符串匹配的时候,添加字符串信息
|
protected void |
addMatchItemForMerge(CharsScanTypeEnum scanTypeEnum,
int i,
char[] chars,
CharsScanContext context)
为合并类添加元素
|
protected void |
clearBufferAndAddItem(int i,
char c,
char[] chars,
CharsScanContext context)
清空缓存,并且构建匹配的结果
|
protected int |
getPrefixMatchPrefixIx(int i,
char[] chars,
CharsScanContext context)
获取前缀的位置
|
protected boolean |
isAnyChineseMatch(char preChar,
CharsScanContext context)
任一中文匹配
|
protected abstract boolean |
isCharMatchCondition(int i,
char c,
char[] chars)
字符是否满足条件
这里只做简单的判断,提升 append 的性能。
|
protected boolean |
isPrefixCharContains(Set<Character> characterSet,
char preChar)
字符是否包含
|
protected boolean |
isPrefixMatch(int i,
char c,
char[] chars,
CharsScanContext context)
是否匹配
|
protected boolean |
isStringMatchCondition(int i,
char c,
char[] chars,
CharsScanContext context)
当前字符串是否满足条件
可以在这里做复杂的判断。
|
protected boolean |
isSupportMergeScanType(CharsScanTypeEnum scanTypeEnum,
int i,
char[] chars,
CharsScanContext context)
是否为支持的合并类别
|
void |
scan(int i,
char c,
char[] chars,
CharsScanContext context)
扫描
|
addMatchItem, clear, clearBuffer, getBuffer, getMatchList, isPreCharMatchCondition, setPreCharMatchConditionclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetPrioritygetScanTypeprotected abstract boolean isCharMatchCondition(int i,
char c,
char[] chars)
i - 位置c - 字符chars - 原始数组protected boolean isStringMatchCondition(int i,
char c,
char[] chars,
CharsScanContext context)
i - 下标c - 字符chars - 原始数组context - 上下文public void scan(int i,
char c,
char[] chars,
CharsScanContext context)
ICharsScani - 下标c - 当前字符chars - 整体的字符串数组context - 上下文protected void clearBufferAndAddItem(int i,
char c,
char[] chars,
CharsScanContext context)
i - 当前c - 当前chars - 原始context - 上下文protected void addItemWhenStringMatch(int i,
char c,
char[] chars,
CharsScanContext context)
i - 下标c - 字符chars - 字符数组context - 上下文protected boolean isPrefixMatch(int i,
char c,
char[] chars,
CharsScanContext context)
i - 索引c - 字符chars - 数组context - 上下文protected int getPrefixMatchPrefixIx(int i,
char[] chars,
CharsScanContext context)
i - 索引chars - 数组context - 上下文protected boolean isAnyChineseMatch(char preChar,
CharsScanContext context)
preChar - 前缀context - 上下文protected boolean isPrefixCharContains(Set<Character> characterSet, char preChar)
characterSet - 字符集合preChar - 前缀字符protected void addMatchItemForMerge(CharsScanTypeEnum scanTypeEnum, int i, char[] chars, CharsScanContext context)
scanTypeEnum - 扫描的真正类别i - 下标chars - 字符context - 上下文protected boolean isSupportMergeScanType(CharsScanTypeEnum scanTypeEnum, int i, char[] chars, CharsScanContext context)
scanTypeEnum - 扫描类别i - 下标chars - 字符串context - 上下文Copyright © 2023. All rights reserved.