forked from github/multus-cni
gomodule is still in progress to migrate for now, hence multus team decide to keep vendor directory to support build without gomodule.
61 lines
1.6 KiB
Go
61 lines
1.6 KiB
Go
// Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT.
|
|
|
|
package bidi
|
|
|
|
// Class is the Unicode BiDi class. Each rune has a single class.
|
|
type Class uint
|
|
|
|
const (
|
|
L Class = iota // LeftToRight
|
|
R // RightToLeft
|
|
EN // EuropeanNumber
|
|
ES // EuropeanSeparator
|
|
ET // EuropeanTerminator
|
|
AN // ArabicNumber
|
|
CS // CommonSeparator
|
|
B // ParagraphSeparator
|
|
S // SegmentSeparator
|
|
WS // WhiteSpace
|
|
ON // OtherNeutral
|
|
BN // BoundaryNeutral
|
|
NSM // NonspacingMark
|
|
AL // ArabicLetter
|
|
Control // Control LRO - PDI
|
|
|
|
numClass
|
|
|
|
LRO // LeftToRightOverride
|
|
RLO // RightToLeftOverride
|
|
LRE // LeftToRightEmbedding
|
|
RLE // RightToLeftEmbedding
|
|
PDF // PopDirectionalFormat
|
|
LRI // LeftToRightIsolate
|
|
RLI // RightToLeftIsolate
|
|
FSI // FirstStrongIsolate
|
|
PDI // PopDirectionalIsolate
|
|
|
|
unknownClass = ^Class(0)
|
|
)
|
|
|
|
var controlToClass = map[rune]Class{
|
|
0x202D: LRO, // LeftToRightOverride,
|
|
0x202E: RLO, // RightToLeftOverride,
|
|
0x202A: LRE, // LeftToRightEmbedding,
|
|
0x202B: RLE, // RightToLeftEmbedding,
|
|
0x202C: PDF, // PopDirectionalFormat,
|
|
0x2066: LRI, // LeftToRightIsolate,
|
|
0x2067: RLI, // RightToLeftIsolate,
|
|
0x2068: FSI, // FirstStrongIsolate,
|
|
0x2069: PDI, // PopDirectionalIsolate,
|
|
}
|
|
|
|
// A trie entry has the following bits:
|
|
// 7..5 XOR mask for brackets
|
|
// 4 1: Bracket open, 0: Bracket close
|
|
// 3..0 Class type
|
|
|
|
const (
|
|
openMask = 0x10
|
|
xorMaskShift = 5
|
|
)
|