📄 featuretypetokenloop.java
字号:
package dragon.ml.seqmodel.feature;import dragon.ml.seqmodel.data.*;/** * This can be used as a wrapper around a FeatureType class that wants to * generate features for each token in a segment. */public class FeatureTypeTokenLoop extends AbstractFeatureTypeWrapper { private int currPos; private int segEnd; private transient DataSequence dataSeq; public FeatureTypeTokenLoop(FeatureType s) { super(s); } private void advance() { while (true) { if (ftype.hasNext()) return; currPos++; if (currPos > segEnd) return; ftype.startScanFeaturesAt(dataSeq,currPos,currPos); } } public boolean startScanFeaturesAt(DataSequence data, int pos){ return startScanFeaturesAt(data,pos,pos); } public boolean startScanFeaturesAt(DataSequence data, int startPos, int endPos) { currPos = startPos; segEnd = endPos; dataSeq = data; ftype.startScanFeaturesAt(data,startPos,startPos); advance(); return ftype.hasNext(); } public boolean hasNext() { return (currPos <= segEnd) && ftype.hasNext(); } public Feature next() { Feature f; f=ftype.next(); advance(); return f; }};
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -