summaryrefslogtreecommitdiff
path: root/vendor/golang.org/x/text/width/common_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/golang.org/x/text/width/common_test.go')
-rw-r--r--vendor/golang.org/x/text/width/common_test.go92
1 files changed, 0 insertions, 92 deletions
diff --git a/vendor/golang.org/x/text/width/common_test.go b/vendor/golang.org/x/text/width/common_test.go
deleted file mode 100644
index 9ebb782..0000000
--- a/vendor/golang.org/x/text/width/common_test.go
+++ /dev/null
@@ -1,92 +0,0 @@
-// Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT.
-
-package width
-
-// This code is shared between the main code generator and the test code.
-
-import (
- "flag"
- "log"
- "strconv"
- "strings"
-
- "golang.org/x/text/internal/gen"
- "golang.org/x/text/internal/ucd"
-)
-
-var (
- outputFile = flag.String("out", "tables.go", "output file")
-)
-
-var typeMap = map[string]elem{
- "A": tagAmbiguous,
- "N": tagNeutral,
- "Na": tagNarrow,
- "W": tagWide,
- "F": tagFullwidth,
- "H": tagHalfwidth,
-}
-
-// getWidthData calls f for every entry for which it is defined.
-//
-// f may be called multiple times for the same rune. The last call to f is the
-// correct value. f is not called for all runes. The default tag type is
-// Neutral.
-func getWidthData(f func(r rune, tag elem, alt rune)) {
- // Set the default values for Unified Ideographs. In line with Annex 11,
- // we encode full ranges instead of the defined runes in Unified_Ideograph.
- for _, b := range []struct{ lo, hi rune }{
- {0x4E00, 0x9FFF}, // the CJK Unified Ideographs block,
- {0x3400, 0x4DBF}, // the CJK Unified Ideographs Externsion A block,
- {0xF900, 0xFAFF}, // the CJK Compatibility Ideographs block,
- {0x20000, 0x2FFFF}, // the Supplementary Ideographic Plane,
- {0x30000, 0x3FFFF}, // the Tertiary Ideographic Plane,
- } {
- for r := b.lo; r <= b.hi; r++ {
- f(r, tagWide, 0)
- }
- }
-
- inverse := map[rune]rune{}
- maps := map[string]bool{
- "<wide>": true,
- "<narrow>": true,
- }
-
- // We cannot reuse package norm's decomposition, as we need an unexpanded
- // decomposition. We make use of the opportunity to verify that the
- // decomposition type is as expected.
- ucd.Parse(gen.OpenUCDFile("UnicodeData.txt"), func(p *ucd.Parser) {
- r := p.Rune(0)
- s := strings.SplitN(p.String(ucd.DecompMapping), " ", 2)
- if !maps[s[0]] {
- return
- }
- x, err := strconv.ParseUint(s[1], 16, 32)
- if err != nil {
- log.Fatalf("Error parsing rune %q", s[1])
- }
- if inverse[r] != 0 || inverse[rune(x)] != 0 {
- log.Fatalf("Circular dependency in mapping between %U and %U", r, x)
- }
- inverse[r] = rune(x)
- inverse[rune(x)] = r
- })
-
- // <rune range>;<type>
- ucd.Parse(gen.OpenUCDFile("EastAsianWidth.txt"), func(p *ucd.Parser) {
- tag, ok := typeMap[p.String(1)]
- if !ok {
- log.Fatalf("Unknown width type %q", p.String(1))
- }
- r := p.Rune(0)
- alt, ok := inverse[r]
- if tag == tagFullwidth || tag == tagHalfwidth && r != wonSign {
- tag |= tagNeedsFold
- if !ok {
- log.Fatalf("Narrow or wide rune %U has no decomposition", r)
- }
- }
- f(r, tag, alt)
- })
-}