runeset

package module
v0.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 10, 2024 License: MIT Imports: 5 Imported by: 0

README

runeset

Go library for sorted range sets of Unicode code points

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Appender

type Appender interface {
	Append(out []byte) []byte
}

type Builder

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

func NewBuilder

func NewBuilder() *Builder

func (*Builder) Add

func (b *Builder) Add(sources ...Source) *Builder

func (*Builder) AddPair

func (b *Builder) AddPair(pairs ...Pair) *Builder

func (*Builder) AddPairs

func (b *Builder) AddPairs(list []Pair) *Builder

func (*Builder) AddRange

func (b *Builder) AddRange(lo rune, hi rune) *Builder

func (*Builder) AddRune

func (b *Builder) AddRune(runes ...rune) *Builder

func (*Builder) Append

func (b *Builder) Append(out []byte) []byte

func (*Builder) At

func (b *Builder) At(index uint) Pair

func (*Builder) Build

func (b *Builder) Build() Set

func (*Builder) Clone

func (b *Builder) Clone() *Builder

func (*Builder) Contains

func (b *Builder) Contains(ch rune) bool

func (*Builder) Intersect

func (b *Builder) Intersect(sources ...Source) *Builder

func (*Builder) IntersectPair

func (b *Builder) IntersectPair(pairs ...Pair) *Builder

func (*Builder) IntersectPairs

func (b *Builder) IntersectPairs(list []Pair) *Builder

func (*Builder) IntersectRange

func (b *Builder) IntersectRange(lo rune, hi rune) *Builder

func (*Builder) IntersectRune

func (b *Builder) IntersectRune(runes ...rune) *Builder

func (*Builder) IsEmpty

func (b *Builder) IsEmpty() bool

func (*Builder) IsFull

func (b *Builder) IsFull() bool

func (*Builder) Len

func (b *Builder) Len() uint

func (*Builder) Negate

func (b *Builder) Negate() *Builder

func (*Builder) Remove

func (b *Builder) Remove(sources ...Source) *Builder

func (*Builder) RemovePair

func (b *Builder) RemovePair(pairs ...Pair) *Builder

func (*Builder) RemovePairs

func (b *Builder) RemovePairs(list []Pair) *Builder

func (*Builder) RemoveRange

func (b *Builder) RemoveRange(lo rune, hi rune) *Builder

func (*Builder) RemoveRune

func (b *Builder) RemoveRune(runes ...rune) *Builder

func (*Builder) Reset

func (b *Builder) Reset() *Builder

func (*Builder) Search

func (b *Builder) Search(ch rune) (uint, bool)

func (*Builder) String

func (b *Builder) String() string

type Pair

type Pair struct {
	Lo rune
	Hi rune
}

func MakePair

func MakePair(lo rune, hi rune) Pair

func (Pair) Append

func (pair Pair) Append(out []byte) []byte

func (Pair) AssertValid

func (pair Pair) AssertValid()

func (Pair) At

func (pair Pair) At(index uint) Pair

func (Pair) CompareTo

func (pair Pair) CompareTo(other Pair) int

func (Pair) Contains

func (pair Pair) Contains(ch rune) bool

func (Pair) EqualTo

func (pair Pair) EqualTo(other Pair) bool

func (Pair) IsValid

func (pair Pair) IsValid() bool

func (Pair) Len

func (pair Pair) Len() uint

func (Pair) LessThan

func (pair Pair) LessThan(other Pair) bool

func (Pair) String

func (pair Pair) String() string

type PairList

type PairList []Pair

func (PairList) Append

func (list PairList) Append(out []byte) []byte

func (PairList) At

func (list PairList) At(index uint) Pair

func (PairList) Contains

func (list PairList) Contains(ch rune) bool

func (PairList) Len

func (list PairList) Len() uint

func (PairList) Sort

func (list PairList) Sort()

func (PairList) String

func (list PairList) String() string

type Rune

type Rune rune

func (Rune) Append

func (r Rune) Append(out []byte) []byte

func (Rune) AssertValid

func (r Rune) AssertValid()

func (Rune) At

func (r Rune) At(index uint) Pair

func (Rune) CompareTo

func (r Rune) CompareTo(other Rune) int

func (Rune) Contains

func (r Rune) Contains(ch rune) bool

func (Rune) EqualTo

func (r Rune) EqualTo(other Rune) bool

func (Rune) IsValid

func (r Rune) IsValid() bool

func (Rune) Len

func (r Rune) Len() uint

func (Rune) LessThan

func (r Rune) LessThan(other Rune) bool

func (Rune) String

func (r Rune) String() string

type RuneList

type RuneList []rune

func (RuneList) Append

func (list RuneList) Append(out []byte) []byte

func (RuneList) At

func (list RuneList) At(index uint) Pair

func (RuneList) Contains

func (list RuneList) Contains(ch rune) bool

func (RuneList) Len

func (list RuneList) Len() uint

func (RuneList) Sort

func (list RuneList) Sort()

func (RuneList) String

func (list RuneList) String() string

type Set

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

func Empty

func Empty() Set

func ForClass

func ForClass(className string) Set

func ForTable

func ForTable(table *unicode.RangeTable) Set

func Full

func Full() Set

func Make

func Make(sources ...Source) Set

func (Set) Append

func (set Set) Append(out []byte) []byte

func (Set) At

func (set Set) At(index uint) Pair

func (Set) Builder

func (set Set) Builder() *Builder

func (Set) Contains

func (set Set) Contains(ch rune) bool

func (Set) IsEmpty

func (set Set) IsEmpty() bool

func (Set) IsFull

func (set Set) IsFull() bool

func (Set) Len

func (set Set) Len() uint

func (Set) Search

func (set Set) Search(ch rune) (uint, bool)

func (Set) String

func (set Set) String() string

type Source

type Source interface {
	Len() uint
	At(uint) Pair
	Contains(rune) bool
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL