...

Package stringset

import "golang.org/x/text/internal/stringset"
Overview
Index

Overview ▾

Package stringset provides a way to represent a collection of strings compactly.

func Search(s *Set, str string) int

Search returns the index of the given string or -1 if it is not in the set. The Set must have been created with strings in sorted order.

type Builder

A Builder constructs Sets.

type Builder struct {
    // contains filtered or unexported fields
}

func NewBuilder

func NewBuilder() *Builder

NewBuilder returns a new and initialized Builder.

func (*Builder) Add

func (b *Builder) Add(ss ...string)

Add adds a string to the index. Strings that are added by a single Add will be stored together, unless they match an existing string.

func (*Builder) Index

func (b *Builder) Index(s string) int

Index returns the index for the given string, which must have been added before.

func (*Builder) Set

func (b *Builder) Set() Set

Set creates the set created so far.

type Set

A Set holds a collection of strings that can be looked up by an index number.

type Set struct {
    Data  string
    Index []uint16
}

func (*Set) Elem

func (s *Set) Elem(i int) string

Elem returns the string with index i. It panics if i is out of range.

func (*Set) Len

func (s *Set) Len() int

Len returns the number of strings in the set.