Package org.antlr.v4.unicode
Class UnicodeDataTemplateController
- java.lang.Object
-
- org.antlr.v4.unicode.UnicodeDataTemplateController
-
public abstract class UnicodeDataTemplateController extends java.lang.Object
StringTemplate controller used to generate parameters to feed tounicodedata.st
to code-generateUnicodeData.java
, used by the tool for Unicode property escapes like\\p\{Lu\}
. Uses ICU to iterate over Unicode character categories, properties, and script codes, as well as aliases for those codes. This class exists in its own Maven module to avoid adding a dependency from the tool onto the (large) ICU runtime.
-
-
Constructor Summary
Constructors Constructor Description UnicodeDataTemplateController()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description private static void
addEmojiPresentationPropertyCodesToCodePointRanges(java.util.Map<java.lang.String,IntervalSet> propertyCodePointRanges)
private static void
addIntervalForCategory(java.util.Map<java.lang.String,IntervalSet> categoryMap, java.lang.String categoryName, int start, int finish)
private static void
addIntPropertyAliases(int property, java.lang.String namePrefix, java.util.Map<java.lang.String,java.lang.String> propertyAliases)
private static void
addIntPropertyRanges(int property, java.lang.String namePrefix, java.util.Map<java.lang.String,IntervalSet> propertyCodePointRanges)
private static void
addPropertyAlias(java.util.Map<java.lang.String,java.lang.String> propertyAliases, java.lang.String alias, java.lang.String propertyName)
private static void
addPropertyAliases(java.util.Map<java.lang.String,java.lang.String> propertyAliases, java.lang.String propertyName, int property)
private static void
addTR35ExtendedPictographicPropertyCodesToCodePointRanges(java.util.Map<java.lang.String,IntervalSet> propertyCodePointRanges)
private static void
addUnicodeBinaryPropertyCodesToCodePointRanges(java.util.Map<java.lang.String,IntervalSet> propertyCodePointRanges)
private static void
addUnicodeBinaryPropertyCodesToNames(java.util.Map<java.lang.String,java.lang.String> propertyAliases)
private static void
addUnicodeBlocksToNames(java.util.Map<java.lang.String,java.lang.String> propertyAliases)
private static void
addUnicodeCategoryCodesToCodePointRanges(java.util.Map<java.lang.String,IntervalSet> propertyCodePointRanges)
private static void
addUnicodeCategoryCodesToNames(java.util.Map<java.lang.String,java.lang.String> propertyAliases)
private static void
addUnicodeIntPropertyCodesToCodePointRanges(java.util.Map<java.lang.String,IntervalSet> propertyCodePointRanges)
private static void
addUnicodeIntPropertyCodesToNames(java.util.Map<java.lang.String,java.lang.String> propertyAliases)
private static void
addUnicodeScriptCodesToNames(java.util.Map<java.lang.String,java.lang.String> propertyAliases)
private static void
addUnicodeSetToIntervalSet(com.ibm.icu.text.UnicodeSet unicodeSet, IntervalSet intervalSet)
static java.util.Map<java.lang.String,java.lang.Object>
getProperties()
private static java.lang.String
getShortPropertyName(int property)
-
-
-
Method Detail
-
addIntervalForCategory
private static void addIntervalForCategory(java.util.Map<java.lang.String,IntervalSet> categoryMap, java.lang.String categoryName, int start, int finish)
-
addPropertyAliases
private static void addPropertyAliases(java.util.Map<java.lang.String,java.lang.String> propertyAliases, java.lang.String propertyName, int property)
-
addPropertyAlias
private static void addPropertyAlias(java.util.Map<java.lang.String,java.lang.String> propertyAliases, java.lang.String alias, java.lang.String propertyName)
-
getProperties
public static java.util.Map<java.lang.String,java.lang.Object> getProperties()
-
getShortPropertyName
private static java.lang.String getShortPropertyName(int property)
-
addUnicodeCategoryCodesToCodePointRanges
private static void addUnicodeCategoryCodesToCodePointRanges(java.util.Map<java.lang.String,IntervalSet> propertyCodePointRanges)
-
addUnicodeCategoryCodesToNames
private static void addUnicodeCategoryCodesToNames(java.util.Map<java.lang.String,java.lang.String> propertyAliases)
-
addUnicodeBinaryPropertyCodesToCodePointRanges
private static void addUnicodeBinaryPropertyCodesToCodePointRanges(java.util.Map<java.lang.String,IntervalSet> propertyCodePointRanges)
-
addUnicodeBinaryPropertyCodesToNames
private static void addUnicodeBinaryPropertyCodesToNames(java.util.Map<java.lang.String,java.lang.String> propertyAliases)
-
addIntPropertyRanges
private static void addIntPropertyRanges(int property, java.lang.String namePrefix, java.util.Map<java.lang.String,IntervalSet> propertyCodePointRanges)
-
addUnicodeSetToIntervalSet
private static void addUnicodeSetToIntervalSet(com.ibm.icu.text.UnicodeSet unicodeSet, IntervalSet intervalSet)
-
addUnicodeIntPropertyCodesToCodePointRanges
private static void addUnicodeIntPropertyCodesToCodePointRanges(java.util.Map<java.lang.String,IntervalSet> propertyCodePointRanges)
-
addTR35ExtendedPictographicPropertyCodesToCodePointRanges
private static void addTR35ExtendedPictographicPropertyCodesToCodePointRanges(java.util.Map<java.lang.String,IntervalSet> propertyCodePointRanges)
-
addEmojiPresentationPropertyCodesToCodePointRanges
private static void addEmojiPresentationPropertyCodesToCodePointRanges(java.util.Map<java.lang.String,IntervalSet> propertyCodePointRanges)
-
addIntPropertyAliases
private static void addIntPropertyAliases(int property, java.lang.String namePrefix, java.util.Map<java.lang.String,java.lang.String> propertyAliases)
-
addUnicodeScriptCodesToNames
private static void addUnicodeScriptCodesToNames(java.util.Map<java.lang.String,java.lang.String> propertyAliases)
-
addUnicodeBlocksToNames
private static void addUnicodeBlocksToNames(java.util.Map<java.lang.String,java.lang.String> propertyAliases)
-
addUnicodeIntPropertyCodesToNames
private static void addUnicodeIntPropertyCodesToNames(java.util.Map<java.lang.String,java.lang.String> propertyAliases)
-
-