Documentation ¶
Overview ¶
Package options provides an optional standard implementation of github.com/rrgmc/instruct options.
Index ¶
- func ConcatOptionsBefore[T any](source []T, options ...T) []T
- func ExtractOptions[RET any, INT any, IN ~[]INT](options IN) []RET
- type AnyOption
- type AnyTypeOption
- type DecodeOption
- type DecodeOptionImpl
- type DefaultAndDecodeOption
- type DefaultAndDecodeOptionImpl
- type DefaultAndTypeDefaultDecodeOption
- type DefaultAndTypeDefaultOption
- type DefaultAndTypeDefaultOptionImpl
- type DefaultOption
- type DefaultOptionImpl
- type FullOption
- type FullOptionImpl
- func (f FullOptionImpl[IT, DC, DOPTT, TOPTT, DCOPTT, TCOPTT]) ApplyDecodeOption(o *DCOPTT)
- func (f FullOptionImpl[IT, DC, DOPTT, TOPTT, DCOPTT, TCOPTT]) ApplyDefaultOption(o *DOPTT)
- func (f FullOptionImpl[IT, DC, DOPTT, TOPTT, DCOPTT, TCOPTT]) ApplyTypeDecodeOption(o *TCOPTT)
- func (f FullOptionImpl[IT, DC, DOPTT, TOPTT, DCOPTT, TCOPTT]) ApplyTypeDefaultOption(o *TOPTT)
- type TypeDecodeOption
- type TypeDecodeOptionImpl
- type TypeDefaultAndDecodeOption
- type TypeDefaultAndDecodeOptionImpl
- type TypeDefaultAndTypeDecodeOption
- type TypeDefaultAndTypeDecodeOptionImpl
- type TypeDefaultOption
- type TypeDefaultOptionImpl
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ConcatOptionsBefore ¶
func ConcatOptionsBefore[T any](source []T, options ...T) []T
ConcatOptionsBefore returns an array with "options" before "source".
func ExtractOptions ¶
ExtractOptions extracts only options of a specific type.
Types ¶
type AnyOption ¶
type AnyOption[IT any, DC instruct.DecodeContext] interface { // contains filtered or unexported methods }
AnyOption states that the option can be used in any instruct.Decoder function.
type AnyTypeOption ¶
type AnyTypeOption[IT any, DC instruct.DecodeContext] interface { // contains filtered or unexported methods }
AnyTypeOption states that the option can be used in any instruct.TypeDecoder function.
type DecodeOption ¶
type DecodeOption[IT any, DC instruct.DecodeContext, COPTT any] interface { AnyOption[IT, DC] ApplyDecodeOption(*COPTT) }
DecodeOption states that the option can be used in the instruct.Decoder.Decode function.
type DecodeOptionImpl ¶
type DecodeOptionImpl[IT any, DC instruct.DecodeContext, COPTT any] struct { // contains filtered or unexported fields }
func DecodeOptionFunc ¶
func DecodeOptionFunc[IT any, DC instruct.DecodeContext, COPTT any](f func(o *COPTT)) *DecodeOptionImpl[IT, DC, COPTT]
DecodeOptionFunc is the option constructor for DecodeOption.
func (DecodeOptionImpl[IT, DC, COPTT]) ApplyDecodeOption ¶
func (f DecodeOptionImpl[IT, DC, COPTT]) ApplyDecodeOption(o *COPTT)
type DefaultAndDecodeOption ¶
type DefaultAndDecodeOption[IT any, DC instruct.DecodeContext, DOPTT any, COPTT any] interface { DefaultOption[IT, DC, DOPTT] DecodeOption[IT, DC, COPTT] }
DefaultAndDecodeOption states that the option can be used in the instruct.NewDecoder and instruct.Decoder.Decode functions.
type DefaultAndDecodeOptionImpl ¶
type DefaultAndDecodeOptionImpl[IT any, DC instruct.DecodeContext, TOPTT any, COPTT any] struct { // contains filtered or unexported fields }
func DefaultAndDecodeOptionFunc ¶
func DefaultAndDecodeOptionFunc[IT any, DC instruct.DecodeContext, TOPTT any, COPTT any](tf func(o *TOPTT), cf func(o *COPTT)) *DefaultAndDecodeOptionImpl[IT, DC, TOPTT, COPTT]
DefaultAndDecodeOptionFunc is the option constructor for DefaultAndDecodeOption.
func (DefaultAndDecodeOptionImpl[IT, DC, TOPTT, COPTT]) ApplyDecodeOption ¶
func (f DefaultAndDecodeOptionImpl[IT, DC, TOPTT, COPTT]) ApplyDecodeOption(o *COPTT)
func (DefaultAndDecodeOptionImpl[IT, DC, TOPTT, COPTT]) ApplyDefaultOption ¶
func (f DefaultAndDecodeOptionImpl[IT, DC, TOPTT, COPTT]) ApplyDefaultOption(o *TOPTT)
type DefaultAndTypeDefaultDecodeOption ¶
type DefaultAndTypeDefaultDecodeOption[IT any, DC instruct.DecodeContext, DCOPTT any, TCOPTT any] interface { DecodeOption[IT, DC, DCOPTT] TypeDecodeOption[IT, DC, TCOPTT] }
DefaultAndTypeDefaultDecodeOption states that the option can be used in the instruct.Decoder.Decode and instruct.TypeDecoder.Decode functions.
type DefaultAndTypeDefaultOption ¶
type DefaultAndTypeDefaultOption[IT any, DC instruct.DecodeContext, DOPTT any, TOPTT any] interface { DefaultOption[IT, DC, DOPTT] TypeDefaultOption[IT, DC, TOPTT] }
DefaultAndTypeDefaultOption states that the option can be used in the instruct.NewDecoder and instruct.NewTypeDecoder functions.
type DefaultAndTypeDefaultOptionImpl ¶
type DefaultAndTypeDefaultOptionImpl[IT any, DC instruct.DecodeContext, DOPTT any, TOPTT any] struct { // contains filtered or unexported fields }
func DefaultAndTypeDefaultOptionFunc ¶
func DefaultAndTypeDefaultOptionFunc[IT any, DC instruct.DecodeContext, DOPTT any, TOPTT any](df func(o *DOPTT), tf func(o *TOPTT)) *DefaultAndTypeDefaultOptionImpl[IT, DC, DOPTT, TOPTT]
DefaultAndTypeDefaultOptionFunc is the option constructor for DefaultAndTypeDefaultOption.
func (DefaultAndTypeDefaultOptionImpl[IT, DC, DOPTT, TOPTT]) ApplyDefaultOption ¶
func (f DefaultAndTypeDefaultOptionImpl[IT, DC, DOPTT, TOPTT]) ApplyDefaultOption(o *DOPTT)
func (DefaultAndTypeDefaultOptionImpl[IT, DC, DOPTT, TOPTT]) ApplyTypeDefaultOption ¶
func (f DefaultAndTypeDefaultOptionImpl[IT, DC, DOPTT, TOPTT]) ApplyTypeDefaultOption(o *TOPTT)
type DefaultOption ¶
type DefaultOption[IT any, DC instruct.DecodeContext, DOPTT any] interface { AnyOption[IT, DC] ApplyDefaultOption(*DOPTT) }
DefaultOption states that the option can be used in the instruct.NewDecoder function.
type DefaultOptionImpl ¶
type DefaultOptionImpl[IT any, DC instruct.DecodeContext, DOPTT any] struct { // contains filtered or unexported fields }
func DefaultOptionFunc ¶
func DefaultOptionFunc[IT any, DC instruct.DecodeContext, DOPTT any](f func(o *DOPTT)) *DefaultOptionImpl[IT, DC, DOPTT]
DefaultOptionFunc is the option constructor for DefaultOption.
func (DefaultOptionImpl[IT, DC, DOPTT]) ApplyDefaultOption ¶
func (f DefaultOptionImpl[IT, DC, DOPTT]) ApplyDefaultOption(o *DOPTT)
type FullOption ¶
type FullOption[IT any, DC instruct.DecodeContext, DOPTT any, TOPTT any, DCOPTT any, TCOPTT any] interface { DefaultOption[IT, DC, DOPTT] TypeDefaultOption[IT, DC, TOPTT] DecodeOption[IT, DC, DCOPTT] TypeDecodeOption[IT, DC, TCOPTT] }
FullOption states that the option can be used in all New functions and Decode methods.
type FullOptionImpl ¶
type FullOptionImpl[IT any, DC instruct.DecodeContext, DOPTT any, TOPTT any, DCOPTT any, TCOPTT any] struct { // contains filtered or unexported fields }
func FullOptionFunc ¶
func FullOptionFunc[IT any, DC instruct.DecodeContext, DOPTT any, TOPTT any, DCOPTT any, TCOPTT any](df func(o *DOPTT), tf func(o *TOPTT), dcf func(o *DCOPTT), tcf func(o *TCOPTT)) *FullOptionImpl[IT, DC, DOPTT, TOPTT, DCOPTT, TCOPTT]
FullOptionFunc is the option constructor for FullOption.
func (FullOptionImpl[IT, DC, DOPTT, TOPTT, DCOPTT, TCOPTT]) ApplyDecodeOption ¶
func (f FullOptionImpl[IT, DC, DOPTT, TOPTT, DCOPTT, TCOPTT]) ApplyDecodeOption(o *DCOPTT)
func (FullOptionImpl[IT, DC, DOPTT, TOPTT, DCOPTT, TCOPTT]) ApplyDefaultOption ¶
func (f FullOptionImpl[IT, DC, DOPTT, TOPTT, DCOPTT, TCOPTT]) ApplyDefaultOption(o *DOPTT)
func (FullOptionImpl[IT, DC, DOPTT, TOPTT, DCOPTT, TCOPTT]) ApplyTypeDecodeOption ¶
func (f FullOptionImpl[IT, DC, DOPTT, TOPTT, DCOPTT, TCOPTT]) ApplyTypeDecodeOption(o *TCOPTT)
func (FullOptionImpl[IT, DC, DOPTT, TOPTT, DCOPTT, TCOPTT]) ApplyTypeDefaultOption ¶
func (f FullOptionImpl[IT, DC, DOPTT, TOPTT, DCOPTT, TCOPTT]) ApplyTypeDefaultOption(o *TOPTT)
type TypeDecodeOption ¶
type TypeDecodeOption[IT any, DC instruct.DecodeContext, COPTT any] interface { AnyTypeOption[IT, DC] ApplyTypeDecodeOption(*COPTT) }
TypeDecodeOption states that the option can be used in the instruct.TypeDecoder.Decode function.
type TypeDecodeOptionImpl ¶
type TypeDecodeOptionImpl[IT any, DC instruct.DecodeContext, COPTT any] struct { // contains filtered or unexported fields }
func TypeDecodeOptionFunc ¶
func TypeDecodeOptionFunc[IT any, DC instruct.DecodeContext, COPTT any](f func(o *COPTT)) *TypeDecodeOptionImpl[IT, DC, COPTT]
TypeDecodeOptionFunc is the option constructor for TypeDecodeOption.
func (TypeDecodeOptionImpl[IT, DC, COPTT]) ApplyTypeDecodeOption ¶
func (f TypeDecodeOptionImpl[IT, DC, COPTT]) ApplyTypeDecodeOption(o *COPTT)
type TypeDefaultAndDecodeOption ¶
type TypeDefaultAndDecodeOption[IT any, DC instruct.DecodeContext, TOPTT any, DCOPTT any] interface { TypeDefaultOption[IT, DC, TOPTT] DecodeOption[IT, DC, DCOPTT] }
TypeDefaultAndDecodeOption states that the option can be used in the instruct.NewTypeDecoder and instruct.Decoder.Decode functions.
type TypeDefaultAndDecodeOptionImpl ¶
type TypeDefaultAndDecodeOptionImpl[IT any, DC instruct.DecodeContext, TOPTT any, COPTT any] struct { // contains filtered or unexported fields }
func TypeDefaultAndDecodeOptionFunc ¶
func TypeDefaultAndDecodeOptionFunc[IT any, DC instruct.DecodeContext, TOPTT any, COPTT any](tf func(o *TOPTT), cf func(o *COPTT)) *TypeDefaultAndDecodeOptionImpl[IT, DC, TOPTT, COPTT]
TypeDefaultAndDecodeOptionFunc is the option constructor for TypeDefaultAndDecodeOption.
func (TypeDefaultAndDecodeOptionImpl[IT, DC, TOPTT, COPTT]) ApplyDecodeOption ¶
func (f TypeDefaultAndDecodeOptionImpl[IT, DC, TOPTT, COPTT]) ApplyDecodeOption(o *COPTT)
func (TypeDefaultAndDecodeOptionImpl[IT, DC, TOPTT, COPTT]) ApplyTypeDefaultOption ¶
func (f TypeDefaultAndDecodeOptionImpl[IT, DC, TOPTT, COPTT]) ApplyTypeDefaultOption(o *TOPTT)
type TypeDefaultAndTypeDecodeOption ¶
type TypeDefaultAndTypeDecodeOption[IT any, DC instruct.DecodeContext, TOPTT any, COPTT any] interface { TypeDefaultOption[IT, DC, TOPTT] TypeDecodeOption[IT, DC, COPTT] }
TypeDefaultAndTypeDecodeOption states that the option can be used in the instruct.NewTypeDecoder and instruct.TypeDecoder.Decode functions.
type TypeDefaultAndTypeDecodeOptionImpl ¶
type TypeDefaultAndTypeDecodeOptionImpl[IT any, DC instruct.DecodeContext, TOPTT any, COPTT any] struct { // contains filtered or unexported fields }
func TypeDefaultAndTypeDecodeOptionFunc ¶
func TypeDefaultAndTypeDecodeOptionFunc[IT any, DC instruct.DecodeContext, TOPTT any, COPTT any](tf func(o *TOPTT), cf func(o *COPTT)) *TypeDefaultAndTypeDecodeOptionImpl[IT, DC, TOPTT, COPTT]
TypeDefaultAndTypeDecodeOptionFunc is the option constructor for TypeDefaultAndTypeDecodeOption.
func (TypeDefaultAndTypeDecodeOptionImpl[IT, DC, TOPTT, COPTT]) ApplyTypeDecodeOption ¶
func (f TypeDefaultAndTypeDecodeOptionImpl[IT, DC, TOPTT, COPTT]) ApplyTypeDecodeOption(o *COPTT)
func (TypeDefaultAndTypeDecodeOptionImpl[IT, DC, TOPTT, COPTT]) ApplyTypeDefaultOption ¶
func (f TypeDefaultAndTypeDecodeOptionImpl[IT, DC, TOPTT, COPTT]) ApplyTypeDefaultOption(o *TOPTT)
type TypeDefaultOption ¶
type TypeDefaultOption[IT any, DC instruct.DecodeContext, TOPTT any] interface { AnyTypeOption[IT, DC] ApplyTypeDefaultOption(*TOPTT) }
TypeDefaultOption states that the option can be used in the instruct.NewTypeDecoder function.
type TypeDefaultOptionImpl ¶
type TypeDefaultOptionImpl[IT any, DC instruct.DecodeContext, TOPTT any] struct { // contains filtered or unexported fields }
func TypeDefaultOptionFunc ¶
func TypeDefaultOptionFunc[IT any, DC instruct.DecodeContext, TOPTT any](tf func(o *TOPTT)) *TypeDefaultOptionImpl[IT, DC, TOPTT]
TypeDefaultOptionFunc is the option constructor for TypeDefaultOption.
func (TypeDefaultOptionImpl[IT, DC, TOPTT]) ApplyTypeDefaultOption ¶
func (f TypeDefaultOptionImpl[IT, DC, TOPTT]) ApplyTypeDefaultOption(o *TOPTT)