1 // Copyright 2011 The Go Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style
3 // license that can be found in the LICENSE file.
16 func ExampleBuffer() {
17 var b bytes
.Buffer
// A Buffer needs no initialization.
18 b
.Write([]byte("Hello "))
19 fmt
.Fprintf(&b
, "world!")
21 // Output: Hello world!
24 func ExampleBuffer_reader() {
25 // A Buffer can turn a string or a []byte into an io.Reader.
26 buf
:= bytes
.NewBufferString("R29waGVycyBydWxlIQ==")
27 dec
:= base64
.NewDecoder(base64
.StdEncoding
, buf
)
28 io
.Copy(os
.Stdout
, dec
)
29 // Output: Gophers rule!
32 func ExampleCompare() {
33 // Interpret Compare's result by comparing it to zero.
35 if bytes
.Compare(a
, b
) < 0 {
38 if bytes
.Compare(a
, b
) <= 0 {
41 if bytes
.Compare(a
, b
) > 0 {
44 if bytes
.Compare(a
, b
) >= 0 {
45 // a greater or equal b
48 // Prefer Equal to Compare for equality comparisons.
49 if bytes
.Equal(a
, b
) {
52 if !bytes
.Equal(a
, b
) {
57 func ExampleCompare_search() {
58 // Binary search to find a matching byte slice.
60 var haystack
[][]byte // Assume sorted
61 i
:= sort
.Search(len(haystack
), func(i
int) bool {
62 // Return haystack[i] >= needle.
63 return bytes
.Compare(haystack
[i
], needle
) >= 0
65 if i
< len(haystack
) && bytes
.Equal(haystack
[i
], needle
) {