summaryrefslogtreecommitdiff
path: root/vendor/golang.org/x/text/internal/triegen/example_compact_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/golang.org/x/text/internal/triegen/example_compact_test.go')
-rw-r--r--vendor/golang.org/x/text/internal/triegen/example_compact_test.go71
1 files changed, 0 insertions, 71 deletions
diff --git a/vendor/golang.org/x/text/internal/triegen/example_compact_test.go b/vendor/golang.org/x/text/internal/triegen/example_compact_test.go
deleted file mode 100644
index 7cf604c..0000000
--- a/vendor/golang.org/x/text/internal/triegen/example_compact_test.go
+++ /dev/null
@@ -1,71 +0,0 @@
-// Copyright 2014 The Go Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style
-// license that can be found in the LICENSE file.
-
-package triegen_test
-
-import (
- "fmt"
- "io"
- "io/ioutil"
-
- "golang.org/x/text/internal/triegen"
-)
-
-func ExampleCompacter() {
- t := triegen.NewTrie("root")
- for r := rune(0); r < 10000; r += 64 {
- t.Insert(r, 0x9015BADA55^uint64(r))
- }
- sz, _ := t.Gen(ioutil.Discard)
-
- fmt.Printf("Size normal: %5d\n", sz)
-
- var c myCompacter
- sz, _ = t.Gen(ioutil.Discard, triegen.Compact(&c))
-
- fmt.Printf("Size compacted: %5d\n", sz)
-
- // Output:
- // Size normal: 81344
- // Size compacted: 3224
-}
-
-// A myCompacter accepts a block if only the first value is given.
-type myCompacter []uint64
-
-func (c *myCompacter) Size(values []uint64) (sz int, ok bool) {
- for _, v := range values[1:] {
- if v != 0 {
- return 0, false
- }
- }
- return 8, true // the size of a uint64
-}
-
-func (c *myCompacter) Store(v []uint64) uint32 {
- x := uint32(len(*c))
- *c = append(*c, v[0])
- return x
-}
-
-func (c *myCompacter) Print(w io.Writer) error {
- fmt.Fprintln(w, "var firstValue = []uint64{")
- for _, v := range *c {
- fmt.Fprintf(w, "\t%#x,\n", v)
- }
- fmt.Fprintln(w, "}")
- return nil
-}
-
-func (c *myCompacter) Handler() string {
- return "getFirstValue"
-
- // Where getFirstValue is included along with the generated code:
- // func getFirstValue(n uint32, b byte) uint64 {
- // if b == 0x80 { // the first continuation byte
- // return firstValue[n]
- // }
- // return 0
- // }
-}