github.com/tunabay/go-bitarray@v1.3.1/bitarray_concat_example_test.go (about)

     1  // Copyright (c) 2021 Hirotsuna Mizuno. All rights reserved.
     2  // Use of this source code is governed by the MIT license that can be found in
     3  // the LICENSE file.
     4  
     5  package bitarray_test
     6  
     7  import (
     8  	"fmt"
     9  
    10  	"github.com/tunabay/go-bitarray"
    11  )
    12  
    13  func ExampleJoin() {
    14  	elems := []*bitarray.BitArray{
    15  		bitarray.MustParse("10101"),
    16  		bitarray.MustParse("111"),
    17  		bitarray.MustParse("1"),
    18  		bitarray.MustParse("1111111111"),
    19  	}
    20  	sep := bitarray.MustParse("00000")
    21  	ba := bitarray.Join(elems, sep)
    22  	fmt.Printf("% s\n", ba)
    23  
    24  	// Output:
    25  	// 10101000 00111000 00100000 11111111 11
    26  }
    27  
    28  func ExampleJoinBitArrayer() {
    29  	elems := []bitarray.BitArrayer{
    30  		bitarray.MustParse("10101"),
    31  		bitarray.MustParse("111"),
    32  		bitarray.MustParse("1"),
    33  		bitarray.MustParse("1111111111"),
    34  	}
    35  	sep := bitarray.MustParse("00000")
    36  	ba := bitarray.JoinBitArrayer(elems, sep)
    37  	fmt.Printf("% s\n", ba)
    38  
    39  	// Output:
    40  	// 10101000 00111000 00100000 11111111 11
    41  }
    42  
    43  func ExampleBitArray_Append() {
    44  	ba1 := bitarray.MustParse("110011")
    45  	ba2 := bitarray.MustParse("00000000 0000")
    46  	ba3 := bitarray.MustParse("111")
    47  	fmt.Printf("% s\n", ba1.Append(ba2, ba3))
    48  	fmt.Printf("% s\n", ba2.Append(nil))
    49  	fmt.Printf("% s\n", ba3.Append(ba3, ba3, ba3))
    50  
    51  	// Output:
    52  	// 11001100 00000000 00111
    53  	// 00000000 0000
    54  	// 11111111 1111
    55  }
    56  
    57  func ExampleBitArray_Repeat() {
    58  	ba := bitarray.MustParse("111000")
    59  	fmt.Printf("% s\n", ba.Repeat(5))
    60  	fmt.Printf("% s\n", ba.Repeat(1))
    61  	fmt.Printf("% q\n", ba.Repeat(0))
    62  
    63  	// Output:
    64  	// 11100011 10001110 00111000 111000
    65  	// 111000
    66  	// ""
    67  }