aboutsummaryrefslogtreecommitdiff
path: root/vendor/golang.org/x/text/width/tables10.0.0.go
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/golang.org/x/text/width/tables10.0.0.go')
-rw-r--r--vendor/golang.org/x/text/width/tables10.0.0.go24
1 files changed, 17 insertions, 7 deletions
diff --git a/vendor/golang.org/x/text/width/tables10.0.0.go b/vendor/golang.org/x/text/width/tables10.0.0.go
index 186b1d4..cd9d91c 100644
--- a/vendor/golang.org/x/text/width/tables10.0.0.go
+++ b/vendor/golang.org/x/text/width/tables10.0.0.go
@@ -1146,21 +1146,31 @@ var widthIndex = [1408]uint8{
}
// inverseData contains 4-byte entries of the following format:
-// <length> <modified UTF-8-encoded rune> <0 padding>
+//
+// <length> <modified UTF-8-encoded rune> <0 padding>
+//
// The last byte of the UTF-8-encoded rune is xor-ed with the last byte of the
// UTF-8 encoding of the original rune. Mappings often have the following
// pattern:
-// A -> A (U+FF21 -> U+0041)
-// B -> B (U+FF22 -> U+0042)
-// ...
+//
+// A -> A (U+FF21 -> U+0041)
+// B -> B (U+FF22 -> U+0042)
+// ...
+//
// By xor-ing the last byte the same entry can be shared by many mappings. This
// reduces the total number of distinct entries by about two thirds.
// The resulting entry for the aforementioned mappings is
-// { 0x01, 0xE0, 0x00, 0x00 }
+//
+// { 0x01, 0xE0, 0x00, 0x00 }
+//
// Using this entry to map U+FF21 (UTF-8 [EF BC A1]), we get
-// E0 ^ A1 = 41.
+//
+// E0 ^ A1 = 41.
+//
// Similarly, for U+FF22 (UTF-8 [EF BC A2]), we get
-// E0 ^ A2 = 42.
+//
+// E0 ^ A2 = 42.
+//
// Note that because of the xor-ing, the byte sequence stored in the entry is
// not valid UTF-8.
var inverseData = [150][4]byte{