| // Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. | |
| package precis | |
| // entry is the entry of a trie table | |
| // 7..6 property (unassigned, disallowed, maybe, valid) | |
| // 5..0 category | |
| type entry uint8 | |
| const ( | |
| propShift = 6 | |
| propMask = 0xc0 | |
| catMask = 0x3f | |
| ) | |
| func (e entry) property() property { return property(e & propMask) } | |
| func (e entry) category() category { return category(e & catMask) } | |
| type property uint8 | |
| // The order of these constants matter. A Profile may consider runes to be | |
| // allowed either from pValid or idDisOrFreePVal. | |
| const ( | |
| unassigned property = iota << propShift | |
| disallowed | |
| idDisOrFreePVal // disallowed for Identifier, pValid for FreeForm | |
| pValid | |
| ) | |
| // compute permutations of all properties and specialCategories. | |
| type category uint8 | |
| const ( | |
| other category = iota | |
| // Special rune types | |
| joiningL | |
| joiningD | |
| joiningT | |
| joiningR | |
| viramaModifier | |
| viramaJoinT // Virama + JoiningT | |
| latinSmallL // U+006c | |
| greek | |
| greekJoinT // Greek + JoiningT | |
| hebrew | |
| hebrewJoinT // Hebrew + JoiningT | |
| japanese // hirigana, katakana, han | |
| // Special rune types associated with contextual rules defined in | |
| // https://tools.ietf.org/html/rfc5892#appendix-A. | |
| // ContextO | |
| zeroWidthNonJoiner // rule 1 | |
| zeroWidthJoiner // rule 2 | |
| // ContextJ | |
| middleDot // rule 3 | |
| greekLowerNumeralSign // rule 4 | |
| hebrewPreceding // rule 5 and 6 | |
| katakanaMiddleDot // rule 7 | |
| arabicIndicDigit // rule 8 | |
| extendedArabicIndicDigit // rule 9 | |
| numCategories | |
| ) |