blob: 4c459c4b72e0ebc286e0426f83b68b4c4bc7478a [file] [log] [blame]
Don Newton98fd8812019-09-23 15:15:02 -04001// Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT.
2
3package bidi
4
5// Class is the Unicode BiDi class. Each rune has a single class.
6type Class uint
7
8const (
9 L Class = iota // LeftToRight
10 R // RightToLeft
11 EN // EuropeanNumber
12 ES // EuropeanSeparator
13 ET // EuropeanTerminator
14 AN // ArabicNumber
15 CS // CommonSeparator
16 B // ParagraphSeparator
17 S // SegmentSeparator
18 WS // WhiteSpace
19 ON // OtherNeutral
20 BN // BoundaryNeutral
21 NSM // NonspacingMark
22 AL // ArabicLetter
23 Control // Control LRO - PDI
24
25 numClass
26
27 LRO // LeftToRightOverride
28 RLO // RightToLeftOverride
29 LRE // LeftToRightEmbedding
30 RLE // RightToLeftEmbedding
31 PDF // PopDirectionalFormat
32 LRI // LeftToRightIsolate
33 RLI // RightToLeftIsolate
34 FSI // FirstStrongIsolate
35 PDI // PopDirectionalIsolate
36
37 unknownClass = ^Class(0)
38)
39
40var controlToClass = map[rune]Class{
41 0x202D: LRO, // LeftToRightOverride,
42 0x202E: RLO, // RightToLeftOverride,
43 0x202A: LRE, // LeftToRightEmbedding,
44 0x202B: RLE, // RightToLeftEmbedding,
45 0x202C: PDF, // PopDirectionalFormat,
46 0x2066: LRI, // LeftToRightIsolate,
47 0x2067: RLI, // RightToLeftIsolate,
48 0x2068: FSI, // FirstStrongIsolate,
49 0x2069: PDI, // PopDirectionalIsolate,
50}
51
52// A trie entry has the following bits:
53// 7..5 XOR mask for brackets
54// 4 1: Bracket open, 0: Bracket close
55// 3..0 Class type
56
57const (
58 openMask = 0x10
59 xorMaskShift = 5
60)