// Copyright 2021 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 collate_test import ( "fmt" "golang.org/x/text/collate" "golang.org/x/text/language" ) func ExampleNew() { letters := []string{"ä", "å", "ö", "o", "a"} ec := collate.New(language.English) ec.SortStrings(letters) fmt.Printf("English Sorting: %v\n", letters) sc := collate.New(language.Swedish) sc.SortStrings(letters) fmt.Printf("Swedish Sorting: %v\n", letters) numbers := []string{"0", "11", "01", "2", "3", "23"} ec.SortStrings(numbers) fmt.Printf("Alphabetic Sorting: %v\n", numbers) nc := collate.New(language.English, collate.Numeric) nc.SortStrings(numbers) fmt.Printf("Numeric Sorting: %v\n", numbers) // Output: // English Sorting: [a å ä o ö] // Swedish Sorting: [a o å ä ö] // Alphabetic Sorting: [0 01 11 2 23 3] // Numeric Sorting: [0 01 2 3 11 23] } func ExampleCollator_SortStrings() { c := collate.New(language.English) words := []string{"meow", "woof", "bark", "moo"} c.SortStrings(words) fmt.Println(words) // Output: // [bark meow moo woof] } func ExampleCollator_CompareString() { c := collate.New(language.English) r := c.CompareString("meow", "woof") fmt.Println(r) r = c.CompareString("woof", "meow") fmt.Println(r) r = c.CompareString("meow", "meow") fmt.Println(r) // Output: // -1 // 1 // 0 } func ExampleCollator_Compare() { c := collate.New(language.English) r := c.Compare([]byte("meow"), []byte("woof")) fmt.Println(r) r = c.Compare([]byte("woof"), []byte("meow")) fmt.Println(r) r = c.Compare([]byte("meow"), []byte("meow")) fmt.Println(r) // Output: // -1 // 1 // 0 }