configuration

package module
v1.0.1 Latest Latest
Warning

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

Go to latest
Published: Aug 20, 2023 License: Apache-2.0 Imports: 12 Imported by: 0

README

HOCON (Human-Optimized Config Object Notation)

GoDoc HOCON Docs.

Fork from https://github.com/go-akka/configuration

Merge with code in https://github.com/gurkankaymak/hocon

Currently, some features are not implemented, the API might be a little changed in the future.

example.go

package main

import (
  "fmt"
  "github.com/JimWen/configuration"
)

var configText = `
####################################
# Typesafe HOCON                   #
####################################

config {
  # Comment
  version = "0.0.1"
  one-second = 1s
  one-day = 1day
  array = ["one", "two", "three"] #comment
  bar = "bar"
  foo = foo.${config.bar} 
  number = 1
  object {
    a = "a"
    b = "b"
    c = {
            d = ${config.object.a} //comment
        }
    }
}
// fallback
config.object.a="newA"
config.object.c.f="valueF"

// self reference
self-ref=1
self-ref=[${self-ref}][2]

// byte size
byte-size=10MiB

// system envs
home:${HOME}

plus-equal=foo
plus-equal+=bar

plus-equal-array=[foo]
plus-equal-array+=[bar, ${HOME}]
`

func main() {
  conf := configuration.ParseString(configText)

  fmt.Println("config.one-second:", conf.GetTimeDuration("config.one-second"))
  fmt.Println("config.one-day:", conf.GetTimeDuration("config.one-day"))
  fmt.Println("config.array:", conf.GetStringList("config.array"))
  fmt.Println("config.bar:", conf.GetString("config.bar"))
  fmt.Println("config.foo:", conf.GetString("config.foo"))
  fmt.Println("config.number:", conf.GetInt64("config.number"))
  fmt.Println("config.object.a:", conf.GetString("config.object.a"))
  fmt.Println("config.object.c.d:", conf.GetString("config.object.c.d"))
  fmt.Println("config.object.c.f:", conf.GetString("config.object.c.f"))
  fmt.Println("self-ref:", conf.GetInt64List("self-ref"))
  fmt.Println("byte-size:", conf.GetByteSize("byte-size"))
  fmt.Println("home:", conf.GetString("home"))
  fmt.Println("default:", conf.GetString("none", "default-value"))
  fmt.Println("plus-equal:", conf.GetString("plus-equal"))
  fmt.Println("plus-equal-array:", conf.GetStringList("plus-equal-array"))
}

> go run example.go
config.one-second: 1s
config.one-day: 24h0m0s
config.array: [one two three]
config.bar: bar
config.foo: foo.bar
config.number: 1
config.object.a: newA
config.object.c.d: a
config.object.c.f: valueF
self-ref: [1 2]
byte-size: 10485760
home: /Users/zeal
default: default-value
plus-equal: foobar
plus-equal-array: [foo bar /Users/zeal]

Documentation

Index

Constants

View Source
const (
	HoconNotInUnquotedKey  = "$\"{}[]:=+,#`^?!@*&\\."
	HoconNotInUnquotedText = "$\"{}[]:=+,#`^?!@*&\\"
)

Variables

View Source
var (
	DefaultToken = Token{}
)

Functions

func StringTokenType added in v1.0.1

func StringTokenType(tokenType TokenType) string

Types

type Config

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

func FromObject

func FromObject(obj interface{}) *Config

func LoadConfig

func LoadConfig(filename string) *Config

func NewConfigFromConfig

func NewConfigFromConfig(source, fallback *Config) *Config

func NewConfigFromRoot

func NewConfigFromRoot(root *HoconRoot) *Config

func ParseString

func ParseString(text string, includeCallback ...IncludeCallback) *Config

func (*Config) AddConfig

func (p *Config) AddConfig(textConfig string, fallbackConfig *Config) *Config

func (*Config) AddConfigWithTextFallback

func (p *Config) AddConfigWithTextFallback(config *Config, textFallback string) *Config

func (*Config) Copy

func (p *Config) Copy(fallback ...*Config) *Config

func (*Config) GetArrayValue

func (p *Config) GetArrayValue(path string) []*HoconValue

func (*Config) GetBoolean

func (p *Config) GetBoolean(path string, defaultVal ...bool) bool

func (*Config) GetBooleanList

func (p *Config) GetBooleanList(path string) []bool

func (*Config) GetByteList

func (p *Config) GetByteList(path string) []byte

func (*Config) GetByteSize

func (p *Config) GetByteSize(path string) *big.Int

func (*Config) GetConfig

func (p *Config) GetConfig(path string) *Config

func (*Config) GetFloat32

func (p *Config) GetFloat32(path string, defaultVal ...float32) float32

func (*Config) GetFloat32List

func (p *Config) GetFloat32List(path string) []float32

func (*Config) GetFloat64

func (p *Config) GetFloat64(path string, defaultVal ...float64) float64

func (*Config) GetFloat64List

func (p *Config) GetFloat64List(path string) []float64

func (*Config) GetInt32

func (p *Config) GetInt32(path string, defaultVal ...int32) int32

func (*Config) GetInt32List

func (p *Config) GetInt32List(path string) []int32

func (*Config) GetInt64

func (p *Config) GetInt64(path string, defaultVal ...int64) int64

func (*Config) GetInt64List

func (p *Config) GetInt64List(path string) []int64

func (*Config) GetMapValue

func (p *Config) GetMapValue(path string) map[string]*HoconValue

func (*Config) GetNode

func (p *Config) GetNode(path string) *HoconValue

func (*Config) GetObject

func (p *Config) GetObject(path string) *Config

func (*Config) GetObjectArray

func (p *Config) GetObjectArray(path string) []*Config

func (*Config) GetObjectMap

func (p *Config) GetObjectMap(path string) map[string]*Config

may be add cpu cost with range operation in convert

func (*Config) GetString

func (p *Config) GetString(path string, defaultVal ...string) string

func (*Config) GetStringList

func (p *Config) GetStringList(path string) []string

func (*Config) GetStringMapBool

func (p *Config) GetStringMapBool(path string) map[string]bool

func (*Config) GetStringMapFloat32

func (p *Config) GetStringMapFloat32(path string) map[string]float32

func (*Config) GetStringMapFloat64

func (p *Config) GetStringMapFloat64(path string) map[string]float64

func (*Config) GetStringMapInt32

func (p *Config) GetStringMapInt32(path string) map[string]int32

func (*Config) GetStringMapInt64

func (p *Config) GetStringMapInt64(path string) map[string]int64

func (*Config) GetStringMapString

func (p *Config) GetStringMapString(path string) map[string]string

func (*Config) GetTimeDuration

func (p *Config) GetTimeDuration(path string, defaultVal ...time.Duration) time.Duration

func (*Config) GetTimeDurationInfiniteNotAllowed

func (p *Config) GetTimeDurationInfiniteNotAllowed(path string, defaultVal ...time.Duration) time.Duration

func (*Config) GetValue

func (p *Config) GetValue(path string) *HoconValue

func (*Config) HasPath

func (p *Config) HasPath(path string) bool

func (*Config) IsArray

func (p *Config) IsArray(path string) bool

func (*Config) IsEmpty

func (p *Config) IsEmpty() bool

func (*Config) IsObject

func (p *Config) IsObject(path string) bool

func (*Config) Root

func (p *Config) Root() *HoconValue

func (Config) String

func (p Config) String() string

func (*Config) WithFallback

func (p *Config) WithFallback(fallback *Config) *Config

type HoconArray added in v1.0.1

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

func NewHoconArray added in v1.0.1

func NewHoconArray() *HoconArray

func (*HoconArray) GetArray added in v1.0.1

func (p *HoconArray) GetArray() []*HoconValue

func (*HoconArray) GetString added in v1.0.1

func (p *HoconArray) GetString() string

func (*HoconArray) IsArray added in v1.0.1

func (p *HoconArray) IsArray() bool

func (*HoconArray) IsString added in v1.0.1

func (p *HoconArray) IsString() bool

func (*HoconArray) String added in v1.0.1

func (p *HoconArray) String() string

type HoconElement added in v1.0.1

type HoconElement interface {
	IsString() bool
	GetString() string
	IsArray() bool
	GetArray() []*HoconValue
}

type HoconLiteral added in v1.0.1

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

func NewHoconLiteral added in v1.0.1

func NewHoconLiteral(value string) *HoconLiteral

func (*HoconLiteral) GetArray added in v1.0.1

func (p *HoconLiteral) GetArray() []*HoconValue

func (*HoconLiteral) GetString added in v1.0.1

func (p *HoconLiteral) GetString() string

func (*HoconLiteral) IsArray added in v1.0.1

func (p *HoconLiteral) IsArray() bool

func (*HoconLiteral) IsString added in v1.0.1

func (p *HoconLiteral) IsString() bool

func (*HoconLiteral) String added in v1.0.1

func (p *HoconLiteral) String() string

type HoconObject added in v1.0.1

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

func NewHoconObject added in v1.0.1

func NewHoconObject() *HoconObject

func (*HoconObject) GetArray added in v1.0.1

func (p *HoconObject) GetArray() []*HoconValue

func (*HoconObject) GetKey added in v1.0.1

func (p *HoconObject) GetKey(key string) *HoconValue

func (*HoconObject) GetKeys added in v1.0.1

func (p *HoconObject) GetKeys() []string

func (*HoconObject) GetMapValue added in v1.0.1

func (p *HoconObject) GetMapValue() map[string]*HoconValue

func (*HoconObject) GetOrCreateKey added in v1.0.1

func (p *HoconObject) GetOrCreateKey(key string) *HoconValue

func (*HoconObject) GetString added in v1.0.1

func (p *HoconObject) GetString() string

func (*HoconObject) IsArray added in v1.0.1

func (p *HoconObject) IsArray() bool

func (*HoconObject) IsString added in v1.0.1

func (p *HoconObject) IsString() bool

func (*HoconObject) Items added in v1.0.1

func (p *HoconObject) Items() map[string]*HoconValue

func (*HoconObject) Merge added in v1.0.1

func (p *HoconObject) Merge(other *HoconObject)

func (*HoconObject) MergeImmutable added in v1.0.1

func (p *HoconObject) MergeImmutable(other *HoconObject) *HoconObject

func (*HoconObject) String added in v1.0.1

func (p *HoconObject) String() string

func (*HoconObject) ToString added in v1.0.1

func (p *HoconObject) ToString(indent int) string

func (*HoconObject) Unwrapped added in v1.0.1

func (p *HoconObject) Unwrapped() map[string]interface{}

type HoconRoot added in v1.0.1

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

func NewHoconRoot added in v1.0.1

func NewHoconRoot(value *HoconValue, substitutions ...*HoconSubstitution) *HoconRoot

func Parse added in v1.0.1

func Parse(text string, callback IncludeCallback) *HoconRoot

func (HoconRoot) Substitutions added in v1.0.1

func (p HoconRoot) Substitutions() []*HoconSubstitution

func (HoconRoot) Value added in v1.0.1

func (p HoconRoot) Value() *HoconValue

type HoconSubstitution added in v1.0.1

type HoconSubstitution struct {
	Path          string
	ResolvedValue *HoconValue
	IsOptional    bool
	OrignialPath  string
}

func NewHoconSubstitution added in v1.0.1

func NewHoconSubstitution(path string, isOptional bool) *HoconSubstitution

func (*HoconSubstitution) GetArray added in v1.0.1

func (p *HoconSubstitution) GetArray() []*HoconValue

func (*HoconSubstitution) GetObject added in v1.0.1

func (p *HoconSubstitution) GetObject() *HoconObject

func (*HoconSubstitution) GetString added in v1.0.1

func (p *HoconSubstitution) GetString() string

func (*HoconSubstitution) IsArray added in v1.0.1

func (p *HoconSubstitution) IsArray() bool

func (*HoconSubstitution) IsObject added in v1.0.1

func (p *HoconSubstitution) IsObject() bool

func (*HoconSubstitution) IsString added in v1.0.1

func (p *HoconSubstitution) IsString() bool

type HoconTokenizer added in v1.0.1

type HoconTokenizer struct {
	*Tokenizer
}

func NewHoconTokenizer added in v1.0.1

func NewHoconTokenizer(text string) *HoconTokenizer

func (*HoconTokenizer) IsArrayEnd added in v1.0.1

func (p *HoconTokenizer) IsArrayEnd() bool

func (*HoconTokenizer) IsArrayStart added in v1.0.1

func (p *HoconTokenizer) IsArrayStart() bool

func (*HoconTokenizer) IsAssignment added in v1.0.1

func (p *HoconTokenizer) IsAssignment() bool

func (*HoconTokenizer) IsComma added in v1.0.1

func (p *HoconTokenizer) IsComma() bool

func (*HoconTokenizer) IsDot added in v1.0.1

func (p *HoconTokenizer) IsDot() bool

func (*HoconTokenizer) IsEndOfObject added in v1.0.1

func (p *HoconTokenizer) IsEndOfObject() bool

func (*HoconTokenizer) IsInclude added in v1.0.1

func (p *HoconTokenizer) IsInclude() bool

func (*HoconTokenizer) IsNewline added in v1.0.1

func (p *HoconTokenizer) IsNewline() bool

func (*HoconTokenizer) IsObjectStart added in v1.0.1

func (p *HoconTokenizer) IsObjectStart() bool

func (*HoconTokenizer) IsPlusAssignment added in v1.0.1

func (p *HoconTokenizer) IsPlusAssignment() bool

func (*HoconTokenizer) IsSpaceOrTab added in v1.0.1

func (p *HoconTokenizer) IsSpaceOrTab() bool

func (*HoconTokenizer) IsStartOfComment added in v1.0.1

func (p *HoconTokenizer) IsStartOfComment() bool

func (*HoconTokenizer) IsStartOfQuotedText added in v1.0.1

func (p *HoconTokenizer) IsStartOfQuotedText() bool

func (*HoconTokenizer) IsStartOfTripleQuotedText added in v1.0.1

func (p *HoconTokenizer) IsStartOfTripleQuotedText() bool

func (*HoconTokenizer) IsStartSimpleValue added in v1.0.1

func (p *HoconTokenizer) IsStartSimpleValue() bool

func (*HoconTokenizer) IsSubstitutionStart added in v1.0.1

func (p *HoconTokenizer) IsSubstitutionStart() bool

func (*HoconTokenizer) IsUnquotedKey added in v1.0.1

func (p *HoconTokenizer) IsUnquotedKey() bool

func (*HoconTokenizer) IsUnquotedKeyStart added in v1.0.1

func (p *HoconTokenizer) IsUnquotedKeyStart() bool

func (*HoconTokenizer) IsWhitespace added in v1.0.1

func (p *HoconTokenizer) IsWhitespace() bool

func (*HoconTokenizer) IsWhitespaceOrComment added in v1.0.1

func (p *HoconTokenizer) IsWhitespaceOrComment() bool

func (*HoconTokenizer) PullArrayEnd added in v1.0.1

func (p *HoconTokenizer) PullArrayEnd() *Token

func (*HoconTokenizer) PullArrayStart added in v1.0.1

func (p *HoconTokenizer) PullArrayStart() *Token

func (*HoconTokenizer) PullAssignment added in v1.0.1

func (p *HoconTokenizer) PullAssignment() *Token

func (*HoconTokenizer) PullComma added in v1.0.1

func (p *HoconTokenizer) PullComma() *Token

func (*HoconTokenizer) PullComment added in v1.0.1

func (p *HoconTokenizer) PullComment() *Token

func (*HoconTokenizer) PullDot added in v1.0.1

func (p *HoconTokenizer) PullDot() *Token

func (*HoconTokenizer) PullEndOfObject added in v1.0.1

func (p *HoconTokenizer) PullEndOfObject() *Token

func (*HoconTokenizer) PullInclude added in v1.0.1

func (p *HoconTokenizer) PullInclude() *Token

func (*HoconTokenizer) PullNewline added in v1.0.1

func (p *HoconTokenizer) PullNewline() *Token

func (*HoconTokenizer) PullNext added in v1.0.1

func (p *HoconTokenizer) PullNext() (token *Token)

func (*HoconTokenizer) PullPlusAssignment added in v1.0.1

func (p *HoconTokenizer) PullPlusAssignment() *Token

func (*HoconTokenizer) PullQuotedKey added in v1.0.1

func (p *HoconTokenizer) PullQuotedKey() *Token

func (*HoconTokenizer) PullQuotedText added in v1.0.1

func (p *HoconTokenizer) PullQuotedText() *Token

func (*HoconTokenizer) PullRestOfLine added in v1.0.1

func (p *HoconTokenizer) PullRestOfLine() string

func (*HoconTokenizer) PullSimpleValue added in v1.0.1

func (p *HoconTokenizer) PullSimpleValue() *Token

func (*HoconTokenizer) PullSpaceOrTab added in v1.0.1

func (p *HoconTokenizer) PullSpaceOrTab() *Token

func (*HoconTokenizer) PullStartOfObject added in v1.0.1

func (p *HoconTokenizer) PullStartOfObject() *Token

func (*HoconTokenizer) PullTripleQuotedText added in v1.0.1

func (p *HoconTokenizer) PullTripleQuotedText() *Token

func (*HoconTokenizer) PullUnquotedKey added in v1.0.1

func (p *HoconTokenizer) PullUnquotedKey() *Token

func (*HoconTokenizer) PullValue added in v1.0.1

func (p *HoconTokenizer) PullValue() *Token

func (*HoconTokenizer) PullWhitespaceAndComments added in v1.0.1

func (p *HoconTokenizer) PullWhitespaceAndComments()

type HoconValue added in v1.0.1

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

func NewHoconValue added in v1.0.1

func NewHoconValue() *HoconValue

func (*HoconValue) AppendValue added in v1.0.1

func (p *HoconValue) AppendValue(value HoconElement)

func (*HoconValue) AtKey added in v1.0.1

func (p *HoconValue) AtKey(key string) *HoconRoot

func (*HoconValue) Clear added in v1.0.1

func (p *HoconValue) Clear()

func (*HoconValue) GetArray added in v1.0.1

func (p *HoconValue) GetArray() []*HoconValue

func (*HoconValue) GetBoolean added in v1.0.1

func (p *HoconValue) GetBoolean() bool

func (*HoconValue) GetBooleanList added in v1.0.1

func (p *HoconValue) GetBooleanList() []bool

func (*HoconValue) GetByte added in v1.0.1

func (p *HoconValue) GetByte() byte

func (*HoconValue) GetByteList added in v1.0.1

func (p *HoconValue) GetByteList() []byte

func (*HoconValue) GetByteSize added in v1.0.1

func (p *HoconValue) GetByteSize() *big.Int

func (*HoconValue) GetChildObject added in v1.0.1

func (p *HoconValue) GetChildObject(key string) *HoconValue

func (*HoconValue) GetFloat32 added in v1.0.1

func (p *HoconValue) GetFloat32() float32

func (*HoconValue) GetFloat32List added in v1.0.1

func (p *HoconValue) GetFloat32List() []float32

func (*HoconValue) GetFloat64 added in v1.0.1

func (p *HoconValue) GetFloat64() float64

func (*HoconValue) GetFloat64List added in v1.0.1

func (p *HoconValue) GetFloat64List() []float64

func (*HoconValue) GetInt32 added in v1.0.1

func (p *HoconValue) GetInt32() int32

func (*HoconValue) GetInt32List added in v1.0.1

func (p *HoconValue) GetInt32List() []int32

func (*HoconValue) GetInt64 added in v1.0.1

func (p *HoconValue) GetInt64() int64

func (*HoconValue) GetInt64List added in v1.0.1

func (p *HoconValue) GetInt64List() []int64

func (*HoconValue) GetObject added in v1.0.1

func (p *HoconValue) GetObject() *HoconObject

func (*HoconValue) GetString added in v1.0.1

func (p *HoconValue) GetString() string

func (*HoconValue) GetStringList added in v1.0.1

func (p *HoconValue) GetStringList() []string

func (*HoconValue) GetStringMapBool added in v1.0.1

func (p *HoconValue) GetStringMapBool() map[string]bool

func (*HoconValue) GetStringMapFloat32 added in v1.0.1

func (p *HoconValue) GetStringMapFloat32() map[string]float32

func (*HoconValue) GetStringMapFloat64 added in v1.0.1

func (p *HoconValue) GetStringMapFloat64() map[string]float64

func (*HoconValue) GetStringMapInt32 added in v1.0.1

func (p *HoconValue) GetStringMapInt32() map[string]int32

func (*HoconValue) GetStringMapInt64 added in v1.0.1

func (p *HoconValue) GetStringMapInt64() map[string]int64

func (*HoconValue) GetStringMapString added in v1.0.1

func (p *HoconValue) GetStringMapString() map[string]string

func (*HoconValue) GetTimeDuration added in v1.0.1

func (p *HoconValue) GetTimeDuration(allowInfinite bool) time.Duration

func (*HoconValue) IsArray added in v1.0.1

func (p *HoconValue) IsArray() bool

func (*HoconValue) IsEmpty added in v1.0.1

func (p *HoconValue) IsEmpty() bool

func (*HoconValue) IsObject added in v1.0.1

func (p *HoconValue) IsObject() bool

func (*HoconValue) IsString added in v1.0.1

func (p *HoconValue) IsString() bool

func (*HoconValue) NewValue added in v1.0.1

func (p *HoconValue) NewValue(value HoconElement)

func (*HoconValue) String added in v1.0.1

func (p *HoconValue) String() string

func (*HoconValue) ToConfig added in v1.0.1

func (p *HoconValue) ToConfig() *Config

func (*HoconValue) ToConfigWithCallback added in v1.0.1

func (p *HoconValue) ToConfigWithCallback() *Config

func (*HoconValue) ToString added in v1.0.1

func (p *HoconValue) ToString(indent int) string

type IncludeCallback added in v1.0.1

type IncludeCallback func(filename string) *HoconRoot

type MightBeAHoconObject added in v1.0.1

type MightBeAHoconObject interface {
	IsObject() bool
	GetObject() *HoconObject
}

type Parser added in v1.0.1

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

func (*Parser) ParseArray added in v1.0.1

func (p *Parser) ParseArray(currentPath string) HoconArray

func (*Parser) ParseSubstitution added in v1.0.1

func (p *Parser) ParseSubstitution(value string, isOptional bool) *HoconSubstitution

func (*Parser) ParseTrailingWhitespace added in v1.0.1

func (p *Parser) ParseTrailingWhitespace(owner *HoconValue)

func (*Parser) ParseValue added in v1.0.1

func (p *Parser) ParseValue(owner *HoconValue, isEqualPlus bool, currentPath string)

type Stack added in v1.0.1

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

func NewStack added in v1.0.1

func NewStack() *Stack

func (*Stack) Pop added in v1.0.1

func (p *Stack) Pop() (int, error)

func (*Stack) Push added in v1.0.1

func (p *Stack) Push(v int)

type Token added in v1.0.1

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

func NewToken added in v1.0.1

func NewToken(v interface{}) *Token

func (*Token) Include added in v1.0.1

func (p *Token) Include(path string) *Token

func (*Token) Key added in v1.0.1

func (p *Token) Key(key string) *Token

func (*Token) LiteralValue added in v1.0.1

func (p *Token) LiteralValue(value string) *Token

func (*Token) Substitution added in v1.0.1

func (p *Token) Substitution(path string, isOptional bool) *Token

type TokenType added in v1.0.1

type TokenType int
const (
	TokenTypeNone TokenType = iota
	TokenTypeComment
	TokenTypeKey
	TokenTypeLiteralValue
	TokenTypeAssign
	TokenTypePlusAssign
	TokenTypeObjectStart
	TokenTypeObjectEnd
	TokenTypeDot
	TokenTypeNewline
	TokenTypeEoF
	TokenTypeArrayStart
	TokenTypeArrayEnd
	TokenTypeComma
	TokenTypeSubstitute
	TokenTypeInclude
)

type Tokenizer added in v1.0.1

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

func NewTokenizer added in v1.0.1

func NewTokenizer(text string) *Tokenizer

func (*Tokenizer) EOF added in v1.0.1

func (p *Tokenizer) EOF() bool

func (*Tokenizer) Matches added in v1.0.1

func (p *Tokenizer) Matches(pattern string) bool

func (*Tokenizer) MatchesMore added in v1.0.1

func (p *Tokenizer) MatchesMore(patterns []string) bool

func (*Tokenizer) Peek added in v1.0.1

func (p *Tokenizer) Peek() byte

func (*Tokenizer) Pop added in v1.0.1

func (p *Tokenizer) Pop()

func (*Tokenizer) PullWhitespace added in v1.0.1

func (p *Tokenizer) PullWhitespace()

func (*Tokenizer) Push added in v1.0.1

func (p *Tokenizer) Push()

func (*Tokenizer) Take added in v1.0.1

func (p *Tokenizer) Take(length int) string

func (*Tokenizer) TakeOne added in v1.0.1

func (p *Tokenizer) TakeOne() byte

Jump to

Keyboard shortcuts

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