2017-05-18 19:54:23 +03:00
|
|
|
// This file was generated by go generate; DO NOT EDIT
|
2017-03-31 19:01:58 +03:00
|
|
|
|
|
|
|
package width
|
|
|
|
|
|
|
|
// elem is an entry of the width trie. The high byte is used to encode the type
|
|
|
|
// of the rune. The low byte is used to store the index to a mapping entry in
|
|
|
|
// the inverseData array.
|
|
|
|
type elem uint16
|
|
|
|
|
|
|
|
const (
|
|
|
|
tagNeutral elem = iota << typeShift
|
|
|
|
tagAmbiguous
|
|
|
|
tagWide
|
|
|
|
tagNarrow
|
|
|
|
tagFullwidth
|
|
|
|
tagHalfwidth
|
|
|
|
)
|
|
|
|
|
|
|
|
const (
|
|
|
|
numTypeBits = 3
|
|
|
|
typeShift = 16 - numTypeBits
|
|
|
|
|
|
|
|
// tagNeedsFold is true for all fullwidth and halfwidth runes except for
|
|
|
|
// the Won sign U+20A9.
|
|
|
|
tagNeedsFold = 0x1000
|
|
|
|
|
|
|
|
// The Korean Won sign is halfwidth, but SHOULD NOT be mapped to a wide
|
|
|
|
// variant.
|
|
|
|
wonSign rune = 0x20A9
|
|
|
|
)
|