types

package
v1.7.8 Latest Latest
Warning

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

Go to latest
Published: May 17, 2025 License: MIT Imports: 8 Imported by: 0

Documentation ¶

Index ¶

Constants ¶

View Source
const KeyAny = "any"
View Source
const KeyBit = "bit"
View Source
const KeyBool = "bool"
View Source
const KeyByte = "byte"
View Source
const KeyChar = "char"
View Source
const KeyDate = "date"
View Source
const KeyEnum = "enum"
View Source
const KeyEnumValue = "enumValue"
View Source
const KeyError = "error"
View Source
const KeyFloat = "float"
View Source
const KeyInt = "int"
View Source
const KeyJSON, _ = util.KeyJSON, "{}"
View Source
const KeyList = "list"
View Source
const KeyMap = "map"
View Source
const KeyMethod = "method"
View Source
const KeyNil = "nil"
View Source
const KeyNumeric = "numeric"
View Source
const KeyOption = "option"
View Source
const KeyOrderedMap = "orderedMap"
View Source
const KeyRange = "range"
View Source
const KeyReference = "reference"
View Source
const KeySet = "set"
View Source
const KeyString = "string"
View Source
const KeyTime = "time"
View Source
const KeyTimestamp = "timestamp"
View Source
const KeyTimestampZoned = "timestampZoned"
View Source
const KeyUUID = "uuid"
View Source
const KeyUnknown = "unknown"
View Source
const KeyValueMap = "valuemap"
View Source
const KeyXML = util.KeyXML

Variables ¶

This section is empty.

Functions ¶

func Bits ¶ added in v1.5.24

func Bits(t Type) int

func IsBool ¶ added in v0.11.9

func IsBool(t Type) bool

func IsInt ¶ added in v0.11.9

func IsInt(t Type) bool

func IsList ¶ added in v0.6.15

func IsList(t Type) bool

func IsString ¶ added in v0.11.9

func IsString(t Type) bool

func IsStringList ¶ added in v0.6.15

func IsStringList(t Type) bool

func TypeAs ¶ added in v0.3.16

func TypeAs[T Type](t Type) T

Types ¶

type Any ¶

type Any struct{}

func (*Any) Default ¶

func (x *Any) Default(string) any

func (*Any) From ¶

func (x *Any) From(v any) any

func (*Any) Key ¶

func (x *Any) Key() string

func (*Any) Scalar ¶

func (x *Any) Scalar() bool

func (*Any) Sortable ¶

func (x *Any) Sortable() bool

func (*Any) String ¶

func (x *Any) String() string

type Argument ¶

type Argument struct {
	Key  string   `json:"key"`
	Type *Wrapped `json:"type"`
}

func (Argument) String ¶

func (a Argument) String() string

type Arguments ¶

type Arguments []Argument

type Bit ¶

type Bit struct{}

func (*Bit) Default ¶

func (x *Bit) Default(string) any

func (*Bit) From ¶

func (x *Bit) From(v any) any

func (*Bit) Key ¶

func (x *Bit) Key() string

func (*Bit) Scalar ¶

func (x *Bit) Scalar() bool

func (*Bit) Sortable ¶

func (x *Bit) Sortable() bool

func (*Bit) String ¶

func (x *Bit) String() string

type Bool ¶

type Bool struct{}

func (*Bool) Default ¶

func (x *Bool) Default(string) any

func (*Bool) From ¶

func (x *Bool) From(v any) any

func (*Bool) Key ¶

func (x *Bool) Key() string

func (*Bool) Scalar ¶

func (x *Bool) Scalar() bool

func (*Bool) Sortable ¶

func (x *Bool) Sortable() bool

func (*Bool) String ¶

func (x *Bool) String() string

type Byte ¶

type Byte struct{}

func (*Byte) Default ¶

func (x *Byte) Default(string) any

func (*Byte) From ¶

func (x *Byte) From(v any) any

func (*Byte) Key ¶

func (x *Byte) Key() string

func (*Byte) Scalar ¶

func (x *Byte) Scalar() bool

func (*Byte) Sortable ¶

func (x *Byte) Sortable() bool

func (*Byte) String ¶

func (x *Byte) String() string

type Char ¶

type Char struct{}

func (*Char) Default ¶

func (x *Char) Default(string) any

func (*Char) From ¶

func (x *Char) From(v any) any

func (*Char) Key ¶

func (x *Char) Key() string

func (*Char) Scalar ¶

func (x *Char) Scalar() bool

func (*Char) Sortable ¶

func (x *Char) Sortable() bool

func (*Char) String ¶

func (x *Char) String() string

type Date ¶

type Date struct{}

func (*Date) Default ¶

func (x *Date) Default(string) any

func (*Date) From ¶

func (x *Date) From(v any) any

func (*Date) Key ¶

func (x *Date) Key() string

func (*Date) Scalar ¶

func (x *Date) Scalar() bool

func (*Date) Sortable ¶

func (x *Date) Sortable() bool

func (*Date) String ¶

func (x *Date) String() string

type Enum ¶

type Enum struct {
	Ref string `json:"ref"`
}

func (*Enum) Default ¶

func (x *Enum) Default(_ string) any

func (*Enum) From ¶

func (x *Enum) From(v any) any

func (*Enum) Key ¶

func (x *Enum) Key() string

func (*Enum) Scalar ¶

func (x *Enum) Scalar() bool

func (*Enum) Sortable ¶

func (x *Enum) Sortable() bool

func (*Enum) String ¶

func (x *Enum) String() string

type EnumValue ¶

type EnumValue struct{}

func (*EnumValue) Default ¶

func (x *EnumValue) Default(key string) any

func (*EnumValue) From ¶

func (x *EnumValue) From(v any) any

func (*EnumValue) Key ¶

func (x *EnumValue) Key() string

func (*EnumValue) Scalar ¶

func (x *EnumValue) Scalar() bool

func (*EnumValue) Sortable ¶

func (x *EnumValue) Sortable() bool

func (*EnumValue) String ¶

func (x *EnumValue) String() string

type Error ¶

type Error struct {
	Message string `json:"message"`
}

func (*Error) Default ¶

func (x *Error) Default(string) any

func (*Error) From ¶

func (x *Error) From(v any) any

func (*Error) Key ¶

func (x *Error) Key() string

func (*Error) Scalar ¶

func (x *Error) Scalar() bool

func (*Error) Sortable ¶

func (x *Error) Sortable() bool

func (*Error) String ¶

func (x *Error) String() string

type Float ¶

type Float struct {
	Bits int `json:"bits,omitempty"`
}

func (*Float) Default ¶

func (x *Float) Default(string) any

func (*Float) From ¶

func (x *Float) From(v any) any

func (*Float) Key ¶

func (x *Float) Key() string

func (*Float) Scalar ¶

func (x *Float) Scalar() bool

func (*Float) Sortable ¶

func (x *Float) Sortable() bool

func (*Float) String ¶

func (x *Float) String() string

type Int ¶

type Int struct {
	Bits     int  `json:"bits,omitempty"`
	Unsigned bool `json:"unsigned,omitempty"`
}

func (*Int) Default ¶

func (x *Int) Default(string) any

func (*Int) From ¶

func (x *Int) From(v any) any

func (*Int) Key ¶

func (x *Int) Key() string

func (*Int) Scalar ¶

func (x *Int) Scalar() bool

func (*Int) Sortable ¶

func (x *Int) Sortable() bool

func (*Int) String ¶

func (x *Int) String() string

type JSON ¶

type JSON struct {
	IsObject bool `json:"obj,omitempty"`
	IsArray  bool `json:"arr,omitempty"`
}

func (*JSON) Default ¶

func (x *JSON) Default(string) any

func (*JSON) From ¶

func (x *JSON) From(v any) any

func (*JSON) Key ¶

func (x *JSON) Key() string

func (*JSON) Scalar ¶

func (x *JSON) Scalar() bool

func (*JSON) Sortable ¶

func (x *JSON) Sortable() bool

func (*JSON) String ¶

func (x *JSON) String() string

type List ¶

type List struct {
	V    *Wrapped `json:"v"`
	Size int      `json:"size,omitempty"`
}

func (*List) Default ¶

func (x *List) Default(string) any

func (*List) From ¶

func (x *List) From(v any) any

func (*List) Key ¶

func (x *List) Key() string

func (*List) Scalar ¶

func (x *List) Scalar() bool

func (*List) Sortable ¶

func (x *List) Sortable() bool

func (*List) String ¶

func (x *List) String() string

type Map ¶

type Map struct {
	K *Wrapped `json:"k"`
	V *Wrapped `json:"v"`
}

func (*Map) Default ¶

func (x *Map) Default(string) any

func (*Map) From ¶

func (x *Map) From(v any) any

func (*Map) Key ¶

func (x *Map) Key() string

func (*Map) Scalar ¶

func (x *Map) Scalar() bool

func (*Map) Sortable ¶

func (x *Map) Sortable() bool

func (*Map) String ¶

func (x *Map) String() string

type Method ¶

type Method struct {
	Args Arguments `json:"args,omitempty"`
	Ret  *Wrapped  `json:"ret,omitempty"`
}

func (*Method) Default ¶

func (x *Method) Default(key string) any

func (*Method) From ¶

func (x *Method) From(v any) any

func (*Method) Key ¶

func (x *Method) Key() string

func (*Method) Scalar ¶

func (x *Method) Scalar() bool

func (*Method) Sortable ¶

func (x *Method) Sortable() bool

func (*Method) String ¶

func (x *Method) String() string

type Nil ¶

type Nil struct{}

func (*Nil) Default ¶

func (x *Nil) Default(string) any

func (*Nil) From ¶

func (x *Nil) From(v any) any

func (*Nil) Key ¶

func (x *Nil) Key() string

func (*Nil) Scalar ¶

func (x *Nil) Scalar() bool

func (*Nil) Sortable ¶

func (x *Nil) Sortable() bool

func (*Nil) String ¶

func (x *Nil) String() string

type Numeric ¶ added in v1.5.29

type Numeric struct{}

func (*Numeric) Default ¶ added in v1.5.29

func (x *Numeric) Default(key string) any

func (*Numeric) From ¶ added in v1.5.29

func (x *Numeric) From(v any) any

func (*Numeric) Key ¶ added in v1.5.29

func (x *Numeric) Key() string

func (*Numeric) Scalar ¶ added in v1.5.29

func (x *Numeric) Scalar() bool

func (*Numeric) Sortable ¶ added in v1.5.29

func (x *Numeric) Sortable() bool

func (*Numeric) String ¶ added in v1.5.29

func (x *Numeric) String() string

type Option ¶

type Option struct {
	V *Wrapped `json:"v"`
}

func (*Option) Default ¶

func (x *Option) Default(string) any

func (*Option) From ¶

func (x *Option) From(v any) any

func (*Option) Key ¶

func (x *Option) Key() string

func (*Option) Scalar ¶

func (x *Option) Scalar() bool

func (*Option) Sortable ¶

func (x *Option) Sortable() bool

func (*Option) String ¶

func (x *Option) String() string

type OrderedMap ¶ added in v1.5.34

type OrderedMap struct {
	V *Wrapped `json:"v"`
}

func (*OrderedMap) Default ¶ added in v1.5.34

func (x *OrderedMap) Default(string) any

func (*OrderedMap) From ¶ added in v1.5.34

func (x *OrderedMap) From(v any) any

func (*OrderedMap) Key ¶ added in v1.5.34

func (x *OrderedMap) Key() string

func (*OrderedMap) Scalar ¶ added in v1.5.34

func (x *OrderedMap) Scalar() bool

func (*OrderedMap) Sortable ¶ added in v1.5.34

func (x *OrderedMap) Sortable() bool

func (*OrderedMap) String ¶ added in v1.5.34

func (x *OrderedMap) String() string

type Range ¶

type Range struct {
	V *Wrapped `json:"v"`
}

func (*Range) Default ¶

func (x *Range) Default(string) any

func (*Range) From ¶

func (x *Range) From(v any) any

func (*Range) Key ¶

func (x *Range) Key() string

func (*Range) Scalar ¶

func (x *Range) Scalar() bool

func (*Range) Sortable ¶

func (x *Range) Sortable() bool

func (*Range) String ¶

func (x *Range) String() string

type Reference ¶

type Reference struct {
	Pkg util.Pkg `json:"pkg,omitempty"`
	K   string   `json:"k"`
}

func (*Reference) Default ¶

func (x *Reference) Default(string) any

func (*Reference) From ¶

func (x *Reference) From(v any) any

func (*Reference) Key ¶

func (x *Reference) Key() string

func (*Reference) LastAddr ¶ added in v1.5.23

func (x *Reference) LastAddr(includePkg bool) string

func (*Reference) LastRef ¶ added in v1.5.23

func (x *Reference) LastRef(includePkg bool) string

func (*Reference) Path ¶

func (x *Reference) Path() util.Pkg

func (*Reference) Scalar ¶

func (x *Reference) Scalar() bool

func (*Reference) Sortable ¶

func (x *Reference) Sortable() bool

func (*Reference) String ¶

func (x *Reference) String() string

type Set ¶

type Set struct {
	V *Wrapped `json:"v"`
}

func (*Set) Default ¶

func (x *Set) Default(string) any

func (*Set) From ¶

func (x *Set) From(v any) any

func (*Set) Key ¶

func (x *Set) Key() string

func (*Set) Scalar ¶

func (x *Set) Scalar() bool

func (*Set) Sortable ¶

func (x *Set) Sortable() bool

func (*Set) String ¶

func (x *Set) String() string

type String ¶

type String struct {
	MinLength int    `json:"minLength,omitempty"`
	MaxLength int    `json:"maxLength,omitempty"`
	Pattern   string `json:"pattern,omitempty"`
}

func (*String) Default ¶

func (x *String) Default(string) any

func (*String) From ¶

func (x *String) From(v any) any

func (*String) Key ¶

func (x *String) Key() string

func (*String) Scalar ¶

func (x *String) Scalar() bool

func (*String) Sortable ¶

func (x *String) Sortable() bool

func (*String) String ¶

func (x *String) String() string

type Time ¶

type Time struct{}

func (*Time) Default ¶

func (x *Time) Default(string) any

func (*Time) From ¶

func (x *Time) From(v any) any

func (*Time) Key ¶

func (x *Time) Key() string

func (*Time) Scalar ¶

func (x *Time) Scalar() bool

func (*Time) Sortable ¶

func (x *Time) Sortable() bool

func (*Time) String ¶

func (x *Time) String() string

type Timestamp ¶

type Timestamp struct{}

func (*Timestamp) Default ¶

func (x *Timestamp) Default(string) any

func (*Timestamp) From ¶

func (x *Timestamp) From(v any) any

func (*Timestamp) Key ¶

func (x *Timestamp) Key() string

func (*Timestamp) Scalar ¶

func (x *Timestamp) Scalar() bool

func (*Timestamp) Sortable ¶

func (x *Timestamp) Sortable() bool

func (*Timestamp) String ¶

func (x *Timestamp) String() string

type TimestampZoned ¶

type TimestampZoned struct{}

func (*TimestampZoned) Default ¶

func (x *TimestampZoned) Default(string) any

func (*TimestampZoned) From ¶

func (x *TimestampZoned) From(v any) any

func (*TimestampZoned) Key ¶

func (x *TimestampZoned) Key() string

func (*TimestampZoned) Scalar ¶

func (x *TimestampZoned) Scalar() bool

func (*TimestampZoned) Sortable ¶

func (x *TimestampZoned) Sortable() bool

func (*TimestampZoned) String ¶

func (x *TimestampZoned) String() string

type Type ¶

type Type interface {
	fmt.Stringer
	Key() string
	Sortable() bool
	Scalar() bool
	From(v any) any
	Default(key string) any
}

type Types ¶

type Types []Type

type UUID ¶

type UUID struct{}

func (*UUID) Default ¶

func (x *UUID) Default(string) any

func (*UUID) From ¶

func (x *UUID) From(v any) any

func (*UUID) Key ¶

func (x *UUID) Key() string

func (*UUID) Scalar ¶

func (x *UUID) Scalar() bool

func (*UUID) Sortable ¶

func (x *UUID) Sortable() bool

func (*UUID) String ¶

func (x *UUID) String() string

type Unknown ¶

type Unknown struct {
	X string `json:"x"`
}

func (*Unknown) Default ¶

func (x *Unknown) Default(string) any

func (*Unknown) From ¶

func (x *Unknown) From(v any) any

func (*Unknown) Key ¶

func (x *Unknown) Key() string

func (*Unknown) Scalar ¶

func (x *Unknown) Scalar() bool

func (*Unknown) Sortable ¶

func (x *Unknown) Sortable() bool

func (*Unknown) String ¶

func (x *Unknown) String() string

type ValueMap ¶

type ValueMap struct{}

func (*ValueMap) Default ¶

func (x *ValueMap) Default(s string) any

func (*ValueMap) From ¶

func (x *ValueMap) From(v any) any

func (*ValueMap) Key ¶

func (x *ValueMap) Key() string

func (*ValueMap) Scalar ¶

func (x *ValueMap) Scalar() bool

func (*ValueMap) Sortable ¶

func (x *ValueMap) Sortable() bool

func (*ValueMap) String ¶

func (x *ValueMap) String() string

type Wrapped ¶

type Wrapped struct {
	K string `json:"k"`
	T Type   `json:"t,omitempty"`
}

func ForString ¶ added in v1.7.8

func ForString(s string) *Wrapped

func FromReflect ¶

func FromReflect(t reflect.Type) *Wrapped

func NewAny ¶

func NewAny() *Wrapped

func NewBit ¶

func NewBit() *Wrapped

func NewBool ¶

func NewBool() *Wrapped

func NewByte ¶

func NewByte() *Wrapped

func NewChar ¶

func NewChar() *Wrapped

func NewDate ¶

func NewDate() *Wrapped

func NewEnum ¶

func NewEnum(ref string) *Wrapped

func NewEnumValue ¶

func NewEnumValue() *Wrapped

func NewError ¶

func NewError(msg string) *Wrapped

func NewFloat ¶

func NewFloat(bits int) *Wrapped

func NewInt ¶

func NewInt(bits int) *Wrapped

func NewJSON ¶

func NewJSON() *Wrapped

func NewJSONArgs ¶

func NewJSONArgs(obj bool, arr bool) *Wrapped

func NewList ¶

func NewList(t *Wrapped) *Wrapped

func NewListSized ¶

func NewListSized(t *Wrapped, size int) *Wrapped

func NewMap ¶

func NewMap(k *Wrapped, v *Wrapped) *Wrapped

func NewMethod ¶

func NewMethod(ret *Wrapped) *Wrapped

func NewNil ¶ added in v1.7.7

func NewNil() *Wrapped

func NewNumeric ¶ added in v1.5.29

func NewNumeric() *Wrapped

func NewOption ¶

func NewOption(t *Wrapped) *Wrapped

func NewOrderedMap ¶ added in v1.5.34

func NewOrderedMap(t *Wrapped) *Wrapped

func NewRange ¶

func NewRange(t *Wrapped) *Wrapped

func NewReference ¶

func NewReference() *Wrapped

func NewReferenceArgs ¶

func NewReferenceArgs(pkg util.Pkg, k string) *Wrapped

func NewSet ¶

func NewSet() *Wrapped

func NewString ¶

func NewString() *Wrapped

func NewStringArgs ¶

func NewStringArgs(minLength int, maxLength int, pattern string) *Wrapped

func NewTime ¶

func NewTime() *Wrapped

func NewTimestamp ¶

func NewTimestamp() *Wrapped

func NewTimestampZoned ¶

func NewTimestampZoned() *Wrapped

func NewUUID ¶

func NewUUID() *Wrapped

func NewUnknown ¶

func NewUnknown(x string) *Wrapped

func NewUnsignedInt ¶

func NewUnsignedInt(bits int) *Wrapped

func NewValueMap ¶

func NewValueMap() *Wrapped

func NewXML ¶

func NewXML() *Wrapped

func Wrap ¶

func Wrap(t Type) *Wrapped

func (*Wrapped) Default ¶

func (x *Wrapped) Default(key string) any

func (*Wrapped) EnumKey ¶

func (x *Wrapped) EnumKey() string

func (*Wrapped) Equals ¶ added in v0.6.4

func (x *Wrapped) Equals(tgt *Wrapped) bool

func (*Wrapped) From ¶

func (x *Wrapped) From(v any) any

func (*Wrapped) IsOption ¶

func (x *Wrapped) IsOption() bool

func (*Wrapped) Key ¶

func (x *Wrapped) Key() string

func (*Wrapped) ListType ¶ added in v1.0.6

func (x *Wrapped) ListType() *Wrapped

func (*Wrapped) MarshalJSON ¶

func (x *Wrapped) MarshalJSON() ([]byte, error)

func (*Wrapped) OrderedMapType ¶ added in v1.5.34

func (x *Wrapped) OrderedMapType() *Wrapped

func (*Wrapped) Scalar ¶

func (x *Wrapped) Scalar() bool

func (*Wrapped) Sortable ¶

func (x *Wrapped) Sortable() bool

func (*Wrapped) String ¶

func (x *Wrapped) String() string

func (*Wrapped) UnmarshalJSON ¶

func (x *Wrapped) UnmarshalJSON(data []byte) error

type XML ¶

type XML struct{}

func (*XML) Default ¶

func (x *XML) Default(string) any

func (*XML) From ¶

func (x *XML) From(v any) any

func (*XML) Key ¶

func (x *XML) Key() string

func (*XML) Scalar ¶

func (x *XML) Scalar() bool

func (*XML) Sortable ¶

func (x *XML) Sortable() bool

func (*XML) String ¶

func (x *XML) String() string

Jump to

Keyboard shortcuts

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