AbstractArchaicPropListScanner.java
/*
* Copyright (C) 2009 Steve Rowe <sarowe@gmail.com>
* Copyright (C) 2020 Google, LLC.
*
* SPDX-License-Identifier: BSD-3-Clause
*/
package de.jflex.ucd_generator.scanner;
import com.google.common.collect.HashMultimap;
import de.jflex.ucd.CodepointRange;
import de.jflex.ucd_generator.ucd.UnicodeData;
import java.util.Map;
public class AbstractArchaicPropListScanner {
final UnicodeData unicodeData;
/** Map of propName -> intervals */
HashMultimap<String, CodepointRange> intervals = HashMultimap.create();
String propertyName;
int start;
int end;
public AbstractArchaicPropListScanner(UnicodeData unicodeData) {
this.unicodeData = unicodeData;
}
public void addPropertyIntervals() {
for (Map.Entry<String, CodepointRange> property : intervals.entries()) {
String currentPropertyName = property.getKey();
CodepointRange interval = property.getValue();
unicodeData.addBinaryPropertyInterval(currentPropertyName, interval);
}
}
public void addCurrentInterval() {
intervals.put(propertyName, CodepointRange.create(start, end));
}
}