base

package
v0.4.2 Latest Latest
Warning

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

Go to latest
Published: May 14, 2022 License: Apache-2.0 Imports: 17 Imported by: 2

Documentation

Index

Constants

View Source
const NotId = int32(-1)

NotId represents an ID doesn't exist.

Variables

This section is empty.

Functions

func CheckPanic added in v0.2.0

func CheckPanic()

CheckPanic catches panic.

func CloseLogger added in v0.4.0

func CloseLogger()

func Escape added in v0.2.0

func Escape(text string) string

Escape text for csv.

func FormatFloat32 added in v0.3.2

func FormatFloat32(val float32) string

func GetRandomName added in v0.2.0

func GetRandomName(retry int) string

GetRandomName generates a random name from the list of adjectives and surnames in this package formatted as "adjective_surname". For example 'focused_turing'. If retry is non-zero, a random integer between 0 and 10 will be added to the end of the name, e.g `focused_turing3`

func Hex added in v0.2.0

func Hex(v int64) string

Hex returns the hex form of a 64-bit integer.

func Logger added in v0.2.0

func Logger() *zap.Logger

Logger get current logger

func MarshalIndex added in v0.2.7

func MarshalIndex(w io.Writer, index Index) error

MarshalIndex marshal index into byte stream.

func NewMatrix32 added in v0.2.0

func NewMatrix32(row, col int) [][]float32

NewMatrix32 creates a 2D matrix of 32-bit floats.

func NewMatrixInt

func NewMatrixInt(row, col int) [][]int

NewMatrixInt creates a 2D matrix of integers.

func ParseFloat32 added in v0.3.2

func ParseFloat32(val string) float32

func RangeInt added in v0.2.0

func RangeInt(n int) []int

RangeInt generate a slice [0, ..., n-1].

func ReadBytes added in v0.2.7

func ReadBytes(r io.Reader) ([]byte, error)

ReadBytes reads bytes from byte stream.

func ReadGob added in v0.2.7

func ReadGob(r io.Reader, v interface{}) error

ReadGob read object from byte stream.

func ReadLines added in v0.2.0

func ReadLines(sc *bufio.Scanner, sep string, handler func(int, []string) bool) error

ReadLines parse fields of each line for csv file.

func ReadMatrix added in v0.2.7

func ReadMatrix(r io.Reader, m [][]float32) error

ReadMatrix reads matrix from byte stream.

func ReadString added in v0.2.7

func ReadString(r io.Reader) (string, error)

ReadString reads string from byte stream.

func RepeatFloat32s added in v0.2.5

func RepeatFloat32s(n int, value float32) []float32

RepeatFloat32s repeats value n times.

func ResponseLogger added in v0.4.2

func ResponseLogger(resp *restful.Response) *zap.Logger

func SetDevelopmentLogger added in v0.2.0

func SetDevelopmentLogger(outputPaths ...string)

SetDevelopmentLogger set current logger in development mode.

func SetProductionLogger added in v0.2.0

func SetProductionLogger(outputPaths ...string)

SetProductionLogger set current logger in production mode.

func ValidateId added in v0.2.0

func ValidateId(text string) error

ValidateId validates user/item id. Id cannot be empty and contain [/,].

func ValidateLabel added in v0.2.0

func ValidateLabel(text string) error

ValidateLabel validates label. Label cannot be empty and contain [/,|].

func WriteBytes added in v0.2.7

func WriteBytes(w io.Writer, s []byte) error

WriteBytes writes bytes to byte stream.

func WriteGob added in v0.2.7

func WriteGob(w io.Writer, v interface{}) error

WriteGob writes object to byte stream.

func WriteMatrix added in v0.2.7

func WriteMatrix(w io.Writer, m [][]float32) error

WriteMatrix writes matrix to byte stream.

func WriteString added in v0.2.7

func WriteString(w io.Writer, s string) error

WriteString writes string to byte stream.

Types

type Array added in v0.4.1

type Array[T any] struct {
	Data [][]T
}

func (*Array[T]) Append added in v0.4.1

func (a *Array[T]) Append(val T)

func (*Array[T]) Get added in v0.4.1

func (a *Array[T]) Get(index int) T

func (*Array[T]) Len added in v0.4.1

func (a *Array[T]) Len() int

type DirectIndex added in v0.2.0

type DirectIndex struct {
	Limit int32
}

DirectIndex means that the name and its index is the same. For example, the index of "1" is 1, vice versa.

func NewDirectIndex added in v0.2.0

func NewDirectIndex() *DirectIndex

NewDirectIndex create a direct mapping index.

func (*DirectIndex) Add added in v0.2.0

func (idx *DirectIndex) Add(s string)

Add a name to current index.

func (*DirectIndex) GetNames added in v0.2.0

func (idx *DirectIndex) GetNames() []string

GetNames returns all names in current index.

func (*DirectIndex) Len added in v0.2.0

func (idx *DirectIndex) Len() int32

Len returns the number of names in current index.

func (*DirectIndex) Marshal added in v0.2.7

func (idx *DirectIndex) Marshal(w io.Writer) error

Marshal direct index into byte stream.

func (*DirectIndex) ToName added in v0.2.0

func (idx *DirectIndex) ToName(index int32) string

ToName converts a index to corresponding name.

func (*DirectIndex) ToNumber added in v0.2.0

func (idx *DirectIndex) ToNumber(name string) int32

ToNumber converts a name to corresponding index.

func (*DirectIndex) Unmarshal added in v0.2.7

func (idx *DirectIndex) Unmarshal(r io.Reader) error

Unmarshal direct index from byte stream.

type Index added in v0.2.0

type Index interface {
	Len() int32
	Add(name string)
	ToNumber(name string) int32
	ToName(index int32) string
	GetNames() []string
	Marshal(w io.Writer) error
	Unmarshal(r io.Reader) error
}

Index keeps the mapping between names (string) and indices (integer).

func UnmarshalIndex added in v0.2.7

func UnmarshalIndex(r io.Reader) (Index, error)

UnmarshalIndex unmarshal index from byte stream.

type MapIndex added in v0.2.0

type MapIndex struct {
	Numbers map[string]int32 // sparse ID -> dense index
	Names   []string         // dense index -> sparse ID
}

MapIndex manages the map between sparse Names and dense indices. A sparse ID is a user ID or item ID. The dense index is the internal user index or item index optimized for faster parameter access and less memory usage.

func NewMapIndex added in v0.2.0

func NewMapIndex() *MapIndex

NewMapIndex creates a MapIndex.

func (*MapIndex) Add added in v0.2.0

func (idx *MapIndex) Add(name string)

Add adds a new ID to the indexer.

func (*MapIndex) GetNames added in v0.2.0

func (idx *MapIndex) GetNames() []string

GetNames returns all names in current index.

func (*MapIndex) Len added in v0.2.0

func (idx *MapIndex) Len() int32

Len returns the number of indexed Names.

func (*MapIndex) Marshal added in v0.2.7

func (idx *MapIndex) Marshal(w io.Writer) error

Marshal map index into byte stream.

func (*MapIndex) ToName added in v0.2.0

func (idx *MapIndex) ToName(index int32) string

ToName converts a dense index to a sparse ID.

func (*MapIndex) ToNumber added in v0.2.0

func (idx *MapIndex) ToNumber(name string) int32

ToNumber converts a sparse ID to a dense index.

func (*MapIndex) Unmarshal added in v0.2.7

func (idx *MapIndex) Unmarshal(r io.Reader) error

Unmarshal map index from byte stream.

type RandomGenerator

type RandomGenerator struct {
	*rand.Rand
}

RandomGenerator is the random generator for gorse.

func NewRandomGenerator

func NewRandomGenerator(seed int64) RandomGenerator

NewRandomGenerator creates a RandomGenerator.

func (RandomGenerator) NewNormalVector

func (rng RandomGenerator) NewNormalVector(size int, mean, stdDev float32) []float32

NewNormalVector makes a vec filled with normal random floats.

func (RandomGenerator) NormalMatrix added in v0.2.0

func (rng RandomGenerator) NormalMatrix(row, col int, mean, stdDev float32) [][]float32

NormalMatrix makes a matrix filled with normal random floats.

func (RandomGenerator) NormalMatrix64 added in v0.2.0

func (rng RandomGenerator) NormalMatrix64(row, col int, mean, stdDev float64) [][]float64

NormalMatrix64 makes a matrix filled with normal random floats.

func (RandomGenerator) NormalVector64 added in v0.2.0

func (rng RandomGenerator) NormalVector64(size int, mean, stdDev float64) []float64

NormalVector64 makes a vec filled with normal random floats.

func (RandomGenerator) Sample added in v0.2.0

func (rng RandomGenerator) Sample(low, high, n int, exclude ...*iset.Set) []int

Sample n values between low and high, but not in exclude.

func (RandomGenerator) SampleInt32 added in v0.2.6

func (rng RandomGenerator) SampleInt32(low, high int32, n int, exclude ...*i32set.Set) []int32

SampleInt32 n 32bit values between low and high, but not in exclude.

func (RandomGenerator) UniformMatrix added in v0.2.0

func (rng RandomGenerator) UniformMatrix(row, col int, low, high float32) [][]float32

UniformMatrix makes a matrix filled with uniform random floats.

func (RandomGenerator) UniformVector added in v0.2.0

func (rng RandomGenerator) UniformVector(size int, low, high float32) []float32

UniformVector makes a vec filled with uniform random floats,

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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