Documentation
¶
Index ¶
- Constants
- func Array[PT InspectablePtr[T], T any](array *[]T, inspector *Inspector, name string, elementName string, ...)
- func ArrayPtr[T any, PT InspectablePtr[T]](array *[]PT, inspector *Inspector, name string, elementName string, ...)
- func Map[K comparable, PK InspectablePtr[K], T any, PT InspectablePtr[T]](value *map[K]T, inspector *Inspector, name string, keyName string, ...)
- func MapPtr[K comparable, PK InspectablePtr[K], T any, PT InspectablePtr[T]](value *map[K]PT, inspector *Inspector, name string, keyName string, ...)
- func StringMap[T Inspectable](value *map[string]T, inspector *Inspector, name string, elementName string, ...)
- type BinaryReadInspector
- type BinaryWriteInspector
- type Inspectable
- type InspectablePtr
- type Inspector
- func (i *Inspector) ByteString(value *[]byte)
- func (i *Inspector) Bytes(value *[]byte)
- func (i *Inspector) EndArray()
- func (i *Inspector) EndMap()
- func (i *Inspector) Float32(value *float32, format byte, precision int)
- func (i *Inspector) Float64(value *float64, format byte, precision int)
- func (i *Inspector) Flush()
- func (i *Inspector) HaveNext() bool
- func (i *Inspector) Int(value *int)
- func (i *Inspector) Int32(value *int32)
- func (i *Inspector) Int64(value *int64)
- func (i *Inspector) IsReading() bool
- func (i *Inspector) LastError() error
- func (i *Inspector) ReadArray() int
- func (i *Inspector) ReadMap() int
- func (i *Inspector) ReadNextKey() string
- func (i *Inspector) SetReader(reader io.Reader)
- func (i *Inspector) SetWriter(writer io.Writer, bufferSize int)
- func (i *Inspector) StartObject(name string, description string) *ObjectInspector
- func (i *Inspector) String(value *string)
- func (i *Inspector) Value(value RawValue)
- func (i *Inspector) WriteArray(name string, elementName string, length int, description string)
- func (i *Inspector) WriteMap(name string, elementName string, length int, description string)
- func (i *Inspector) WriteNextKey(key string)
- type InspectorInterface
- type ObjectInspector
- func (o *ObjectInspector) ByteString(name string, value *[]byte, mandatory bool, description string)
- func (o *ObjectInspector) Bytes(name string, value *[]byte, mandatory bool, description string)
- func (o *ObjectInspector) End() *Inspector
- func (o *ObjectInspector) Float32(name string, value *float32, format byte, precision int, mandatory bool, ...)
- func (o *ObjectInspector) Float64(name string, value *float64, format byte, precision int, mandatory bool, ...)
- func (o *ObjectInspector) Flush()
- func (o *ObjectInspector) Int(name string, value *int, mandatory bool, description string)
- func (o *ObjectInspector) Int32(name string, value *int32, mandatory bool, description string)
- func (o *ObjectInspector) Int64(name string, value *int64, mandatory bool, description string)
- func (o *ObjectInspector) IsReading() bool
- func (o *ObjectInspector) Property(name string, mandatory bool, description string) *Inspector
- func (o *ObjectInspector) String(name string, value *string, mandatory bool, description string)
- func (o *ObjectInspector) Value(name string, value RawValue, mandatory bool, description string)
- type RawValue
- type ReadInspector
- func (r *ReadInspector[R]) ByteString(value *[]byte)
- func (r *ReadInspector[R]) Bytes(value *[]byte)
- func (r *ReadInspector[R]) EndArray()
- func (r *ReadInspector[R]) EndMap()
- func (r *ReadInspector[R]) EndObject()
- func (r *ReadInspector[R]) Float32(value *float32, format byte, precision int)
- func (r *ReadInspector[R]) Float64(value *float64, format byte, precision int)
- func (r *ReadInspector[R]) HaveNext() bool
- func (r *ReadInspector[R]) Int(value *int)
- func (r *ReadInspector[R]) Int32(value *int32)
- func (r *ReadInspector[R]) Int64(value *int64)
- func (r *ReadInspector[R]) IsReading() bool
- func (r *ReadInspector[R]) LastError() error
- func (r *ReadInspector[R]) Property(name string, mandatory bool, description string) bool
- func (r *ReadInspector[R]) PropertyByteString(name string, value *[]byte, mandatory bool, description string)
- func (r *ReadInspector[R]) PropertyBytes(name string, value *[]byte, mandatory bool, description string)
- func (r *ReadInspector[R]) PropertyFloat32(name string, value *float32, format byte, precision int, mandatory bool, ...)
- func (r *ReadInspector[R]) PropertyFloat64(name string, value *float64, format byte, precision int, mandatory bool, ...)
- func (r *ReadInspector[R]) PropertyInt(name string, value *int, mandatory bool, description string)
- func (r *ReadInspector[R]) PropertyInt32(name string, value *int32, mandatory bool, description string)
- func (r *ReadInspector[R]) PropertyInt64(name string, value *int64, mandatory bool, description string)
- func (r *ReadInspector[R]) PropertyString(name string, value *string, mandatory bool, description string)
- func (r *ReadInspector[R]) ReadArray(name string, elementName string) int
- func (r *ReadInspector[R]) ReadMap(name string, elementName string, description string) int
- func (r *ReadInspector[R]) ReadNextKey() string
- func (r *ReadInspector[R]) SetReader(reader io.Reader)
- func (r *ReadInspector[R]) SetWriter(io.Writer)
- func (r *ReadInspector[R]) StartObject(name string, description string)
- func (r *ReadInspector[R]) String(value *string)
- func (r *ReadInspector[R]) WriteArray(name string, elementName string, length int, description string)
- func (r *ReadInspector[R]) WriteMap(name string, elementName string, length int, description string)
- func (r *ReadInspector[R]) WriteNextKey(key string)
- type Reader
- type TextReadInspector
- type TextWriteInspector
- type WriteInspector
- func (w *WriteInspector[W, PW]) ByteString(value *[]byte)
- func (w *WriteInspector[W, PW]) Bytes(value *[]byte)
- func (w *WriteInspector[W, PW]) EndArray()
- func (w *WriteInspector[W, PW]) EndMap()
- func (w *WriteInspector[W, PW]) EndObject()
- func (w *WriteInspector[W, PW]) Float32(value *float32, format byte, precision int)
- func (w *WriteInspector[W, PW]) Float64(value *float64, format byte, precision int)
- func (w *WriteInspector[W, PW]) Flush()
- func (w *WriteInspector[W, PW]) HaveNext() bool
- func (w *WriteInspector[W, PW]) Int(value *int)
- func (w *WriteInspector[W, PW]) Int32(value *int32)
- func (w *WriteInspector[W, PW]) Int64(value *int64)
- func (w *WriteInspector[W, PW]) IsReading() bool
- func (w *WriteInspector[W, PW]) LastError() error
- func (w *WriteInspector[W, PW]) Property(name string, mandatory bool, description string) bool
- func (w *WriteInspector[W, PW]) PropertyByteString(name string, value *[]byte, mandatory bool, description string)
- func (w *WriteInspector[W, PW]) PropertyBytes(name string, value *[]byte, mandatory bool, description string)
- func (w *WriteInspector[W, PW]) PropertyFloat32(name string, value *float32, format byte, precision int, mandatory bool, ...)
- func (w *WriteInspector[W, PW]) PropertyFloat64(name string, value *float64, format byte, precision int, mandatory bool, ...)
- func (w *WriteInspector[W, PW]) PropertyInt(name string, value *int, mandatory bool, description string)
- func (w *WriteInspector[W, PW]) PropertyInt32(name string, value *int32, mandatory bool, description string)
- func (w *WriteInspector[W, PW]) PropertyInt64(name string, value *int64, mandatory bool, description string)
- func (w *WriteInspector[W, PW]) PropertyString(name string, value *string, mandatory bool, description string)
- func (w *WriteInspector[W, PW]) ReadArray() int
- func (w *WriteInspector[W, PW]) ReadMap() int
- func (w *WriteInspector[W, PW]) ReadNextKey() string
- func (w *WriteInspector[W, PW]) SetReader(io.Reader)
- func (w *WriteInspector[W, PW]) SetWriter(writer io.Writer, bufferSize int)
- func (w *WriteInspector[W, PW]) StartObject(name string, description string)
- func (w *WriteInspector[W, PW]) String(value *string)
- func (w *WriteInspector[W, PW]) WriteArray(name string, elementName string, length int, description string)
- func (w *WriteInspector[W, PW]) WriteMap(name string, elementName string, length int, description string)
- func (w *WriteInspector[W, PW]) WriteNextKey(key string)
- type Writer
- type WriterPtr
Constants ¶
View Source
const ( ErrNoField inspectError = iota ErrReaderCantWrite ErrWriterCantRead )
Variables ¶
This section is empty.
Functions ¶
func Map ¶
func Map[K comparable, PK InspectablePtr[K], T any, PT InspectablePtr[T]](value *map[K]T, inspector *Inspector, name string, keyName string, elementName string, description string)
func MapPtr ¶
func MapPtr[K comparable, PK InspectablePtr[K], T any, PT InspectablePtr[T]](value *map[K]PT, inspector *Inspector, name string, keyName string, elementName string, description string)
Types ¶
type BinaryReadInspector ¶
type BinaryReadInspector[R Reader] struct { ReadInspector[R] }
func (*BinaryReadInspector[R]) PropertyValue ¶
func (r *BinaryReadInspector[R]) PropertyValue(name string, value RawValue, mandatory bool, description string)
func (*BinaryReadInspector[R]) Value ¶
func (r *BinaryReadInspector[R]) Value(value RawValue)
type BinaryWriteInspector ¶
type BinaryWriteInspector[W any, PW WriterPtr[W]] struct { WriteInspector[W, PW] }
func (*BinaryWriteInspector[W, PW]) PropertyValue ¶
func (w *BinaryWriteInspector[W, PW]) PropertyValue(name string, value RawValue, mandatory bool, description string)
func (*BinaryWriteInspector[W, PW]) Value ¶
func (w *BinaryWriteInspector[W, PW]) Value(value RawValue)
type Inspectable ¶
type Inspectable interface {
Inspect(*Inspector)
}
type InspectablePtr ¶
type InspectablePtr[T any] interface { Inspectable *T }
type Inspector ¶
type Inspector struct {
// contains filtered or unexported fields
}
func NewInspector ¶
func NewInspector(impl InspectorInterface) *Inspector
func (*Inspector) ByteString ¶
func (*Inspector) ReadNextKey ¶
func (*Inspector) StartObject ¶
func (i *Inspector) StartObject(name string, description string) *ObjectInspector
func (*Inspector) WriteArray ¶
func (*Inspector) WriteNextKey ¶
type InspectorInterface ¶
type InspectorInterface interface { LastError() error SetReader(io.Reader) SetWriter(writer io.Writer, bufferSize int) Int32(value *int32) Int64(value *int64) Int(value *int) Float32(value *float32, format byte, precision int) Float64(value *float64, format byte, precision int) String(value *string) Bytes(value *[]byte) ByteString(value *[]byte) Value(value RawValue) StartObject(name string, description string) Property(name string, mandatory bool, description string) bool PropertyInt32(name string, value *int32, mandatory bool, description string) PropertyInt64(name string, value *int64, mandatory bool, description string) PropertyInt(name string, value *int, mandatory bool, description string) PropertyFloat32(name string, value *float32, format byte, precision int, mandatory bool, description string) PropertyFloat64(name string, value *float64, format byte, precision int, mandatory bool, description string) PropertyString(name string, value *string, mandatory bool, description string) PropertyBytes(name string, value *[]byte, mandatory bool, description string) PropertyByteString(name string, value *[]byte, mandatory bool, description string) PropertyValue(name string, value RawValue, mandatory bool, description string) EndObject() ReadArray() int WriteArray(name string, elementName string, length int, description string) HaveNext() bool EndArray() ReadMap() int WriteMap(name string, elementName string, length int, description string) ReadNextKey() string WriteNextKey(key string) EndMap() IsReading() bool Flush() }
type ObjectInspector ¶
type ObjectInspector Inspector
func (*ObjectInspector) ByteString ¶
func (o *ObjectInspector) ByteString(name string, value *[]byte, mandatory bool, description string)
func (*ObjectInspector) Bytes ¶
func (o *ObjectInspector) Bytes(name string, value *[]byte, mandatory bool, description string)
func (*ObjectInspector) End ¶
func (o *ObjectInspector) End() *Inspector
func (*ObjectInspector) Flush ¶
func (o *ObjectInspector) Flush()
func (*ObjectInspector) Int ¶
func (o *ObjectInspector) Int(name string, value *int, mandatory bool, description string)
func (*ObjectInspector) Int32 ¶
func (o *ObjectInspector) Int32(name string, value *int32, mandatory bool, description string)
func (*ObjectInspector) Int64 ¶
func (o *ObjectInspector) Int64(name string, value *int64, mandatory bool, description string)
func (*ObjectInspector) IsReading ¶
func (o *ObjectInspector) IsReading() bool
func (*ObjectInspector) Property ¶
func (o *ObjectInspector) Property(name string, mandatory bool, description string) *Inspector
type RawValue ¶
type RawValue interface { encoding.TextMarshaler gob.GobEncoder encoding.TextUnmarshaler gob.GobDecoder }
type ReadInspector ¶
type ReadInspector[R Reader] struct { // contains filtered or unexported fields }
func (*ReadInspector[R]) ByteString ¶
func (r *ReadInspector[R]) ByteString(value *[]byte)
func (*ReadInspector[R]) Bytes ¶
func (r *ReadInspector[R]) Bytes(value *[]byte)
func (*ReadInspector[R]) EndArray ¶
func (r *ReadInspector[R]) EndArray()
func (*ReadInspector[R]) EndMap ¶
func (r *ReadInspector[R]) EndMap()
func (*ReadInspector[R]) EndObject ¶
func (r *ReadInspector[R]) EndObject()
func (*ReadInspector[R]) Float32 ¶
func (r *ReadInspector[R]) Float32(value *float32, format byte, precision int)
func (*ReadInspector[R]) Float64 ¶
func (r *ReadInspector[R]) Float64(value *float64, format byte, precision int)
func (*ReadInspector[R]) HaveNext ¶
func (r *ReadInspector[R]) HaveNext() bool
func (*ReadInspector[R]) Int ¶
func (r *ReadInspector[R]) Int(value *int)
func (*ReadInspector[R]) Int32 ¶
func (r *ReadInspector[R]) Int32(value *int32)
func (*ReadInspector[R]) Int64 ¶
func (r *ReadInspector[R]) Int64(value *int64)
func (*ReadInspector[R]) IsReading ¶
func (r *ReadInspector[R]) IsReading() bool
func (*ReadInspector[R]) LastError ¶
func (r *ReadInspector[R]) LastError() error
func (*ReadInspector[R]) Property ¶
func (r *ReadInspector[R]) Property(name string, mandatory bool, description string) bool
func (*ReadInspector[R]) PropertyByteString ¶
func (r *ReadInspector[R]) PropertyByteString(name string, value *[]byte, mandatory bool, description string)
func (*ReadInspector[R]) PropertyBytes ¶
func (r *ReadInspector[R]) PropertyBytes(name string, value *[]byte, mandatory bool, description string)
func (*ReadInspector[R]) PropertyFloat32 ¶
func (*ReadInspector[R]) PropertyFloat64 ¶
func (*ReadInspector[R]) PropertyInt ¶
func (r *ReadInspector[R]) PropertyInt(name string, value *int, mandatory bool, description string)
func (*ReadInspector[R]) PropertyInt32 ¶
func (r *ReadInspector[R]) PropertyInt32(name string, value *int32, mandatory bool, description string)
func (*ReadInspector[R]) PropertyInt64 ¶
func (r *ReadInspector[R]) PropertyInt64(name string, value *int64, mandatory bool, description string)
func (*ReadInspector[R]) PropertyString ¶
func (r *ReadInspector[R]) PropertyString(name string, value *string, mandatory bool, description string)
func (*ReadInspector[R]) ReadArray ¶
func (r *ReadInspector[R]) ReadArray(name string, elementName string) int
func (*ReadInspector[R]) ReadMap ¶
func (r *ReadInspector[R]) ReadMap(name string, elementName string, description string) int
func (*ReadInspector[R]) ReadNextKey ¶
func (r *ReadInspector[R]) ReadNextKey() string
func (*ReadInspector[R]) SetReader ¶
func (r *ReadInspector[R]) SetReader(reader io.Reader)
func (*ReadInspector[R]) SetWriter ¶
func (r *ReadInspector[R]) SetWriter(io.Writer)
func (*ReadInspector[R]) StartObject ¶
func (r *ReadInspector[R]) StartObject(name string, description string)
func (*ReadInspector[R]) String ¶
func (r *ReadInspector[R]) String(value *string)
func (*ReadInspector[R]) WriteArray ¶
func (r *ReadInspector[R]) WriteArray(name string, elementName string, length int, description string)
func (*ReadInspector[R]) WriteMap ¶
func (r *ReadInspector[R]) WriteMap(name string, elementName string, length int, description string)
func (*ReadInspector[R]) WriteNextKey ¶
func (r *ReadInspector[R]) WriteNextKey(key string)
type Reader ¶
type Reader interface { SetReader(io.Reader) Int32() (int32, error) Int64() (int64, error) Float32() (float32, error) Float64() (float64, error) String() (string, error) Bytes() ([]byte, error) ByteString() ([]byte, error) StartObject() error Property(name string) error EndObject() error // length==-1 => check HaveNext() after every value // length==0 => no need to call EndArray StartArray() (length int, err error) // returns false when array ends or when StartArray returned length!=-1 HaveNext() (bool, error) EndArray() error StartMap() (length int, err error) NextKey() (string, error) EndMap() error }
type TextReadInspector ¶
type TextReadInspector[R Reader] struct { ReadInspector[R] }
func (*TextReadInspector[R]) PropertyValue ¶
func (r *TextReadInspector[R]) PropertyValue(name string, value RawValue, mandatory bool, description string)
func (*TextReadInspector[R]) Value ¶
func (r *TextReadInspector[R]) Value(value RawValue)
type TextWriteInspector ¶
type TextWriteInspector[W any, PW WriterPtr[W]] struct { WriteInspector[W, PW] }
func (*TextWriteInspector[W, PW]) PropertyValue ¶
func (w *TextWriteInspector[W, PW]) PropertyValue(name string, value RawValue, mandatory bool, description string)
func (*TextWriteInspector[W, PW]) Value ¶
func (w *TextWriteInspector[W, PW]) Value(value RawValue)
type WriteInspector ¶
func (*WriteInspector[W, PW]) ByteString ¶
func (w *WriteInspector[W, PW]) ByteString(value *[]byte)
func (*WriteInspector[W, PW]) Bytes ¶
func (w *WriteInspector[W, PW]) Bytes(value *[]byte)
func (*WriteInspector[W, PW]) EndArray ¶
func (w *WriteInspector[W, PW]) EndArray()
func (*WriteInspector[W, PW]) EndMap ¶
func (w *WriteInspector[W, PW]) EndMap()
func (*WriteInspector[W, PW]) EndObject ¶
func (w *WriteInspector[W, PW]) EndObject()
func (*WriteInspector[W, PW]) Float32 ¶
func (w *WriteInspector[W, PW]) Float32(value *float32, format byte, precision int)
func (*WriteInspector[W, PW]) Float64 ¶
func (w *WriteInspector[W, PW]) Float64(value *float64, format byte, precision int)
func (*WriteInspector[W, PW]) Flush ¶
func (w *WriteInspector[W, PW]) Flush()
func (*WriteInspector[W, PW]) HaveNext ¶
func (w *WriteInspector[W, PW]) HaveNext() bool
func (*WriteInspector[W, PW]) Int ¶
func (w *WriteInspector[W, PW]) Int(value *int)
func (*WriteInspector[W, PW]) Int32 ¶
func (w *WriteInspector[W, PW]) Int32(value *int32)
func (*WriteInspector[W, PW]) Int64 ¶
func (w *WriteInspector[W, PW]) Int64(value *int64)
func (*WriteInspector[W, PW]) IsReading ¶
func (w *WriteInspector[W, PW]) IsReading() bool
func (*WriteInspector[W, PW]) LastError ¶
func (w *WriteInspector[W, PW]) LastError() error
func (*WriteInspector[W, PW]) Property ¶
func (w *WriteInspector[W, PW]) Property(name string, mandatory bool, description string) bool
func (*WriteInspector[W, PW]) PropertyByteString ¶
func (w *WriteInspector[W, PW]) PropertyByteString(name string, value *[]byte, mandatory bool, description string)
func (*WriteInspector[W, PW]) PropertyBytes ¶
func (w *WriteInspector[W, PW]) PropertyBytes(name string, value *[]byte, mandatory bool, description string)
func (*WriteInspector[W, PW]) PropertyFloat32 ¶
func (*WriteInspector[W, PW]) PropertyFloat64 ¶
func (*WriteInspector[W, PW]) PropertyInt ¶
func (w *WriteInspector[W, PW]) PropertyInt(name string, value *int, mandatory bool, description string)
func (*WriteInspector[W, PW]) PropertyInt32 ¶
func (w *WriteInspector[W, PW]) PropertyInt32(name string, value *int32, mandatory bool, description string)
func (*WriteInspector[W, PW]) PropertyInt64 ¶
func (w *WriteInspector[W, PW]) PropertyInt64(name string, value *int64, mandatory bool, description string)
func (*WriteInspector[W, PW]) PropertyString ¶
func (w *WriteInspector[W, PW]) PropertyString(name string, value *string, mandatory bool, description string)
func (*WriteInspector[W, PW]) ReadArray ¶
func (w *WriteInspector[W, PW]) ReadArray() int
func (*WriteInspector[W, PW]) ReadMap ¶
func (w *WriteInspector[W, PW]) ReadMap() int
func (*WriteInspector[W, PW]) ReadNextKey ¶
func (w *WriteInspector[W, PW]) ReadNextKey() string
func (*WriteInspector[W, PW]) SetReader ¶
func (w *WriteInspector[W, PW]) SetReader(io.Reader)
func (*WriteInspector[W, PW]) SetWriter ¶
func (w *WriteInspector[W, PW]) SetWriter(writer io.Writer, bufferSize int)
func (*WriteInspector[W, PW]) StartObject ¶
func (w *WriteInspector[W, PW]) StartObject(name string, description string)
func (*WriteInspector[W, PW]) String ¶
func (w *WriteInspector[W, PW]) String(value *string)
func (*WriteInspector[W, PW]) WriteArray ¶
func (w *WriteInspector[W, PW]) WriteArray(name string, elementName string, length int, description string)
func (*WriteInspector[W, PW]) WriteMap ¶
func (w *WriteInspector[W, PW]) WriteMap(name string, elementName string, length int, description string)
func (*WriteInspector[W, PW]) WriteNextKey ¶
func (w *WriteInspector[W, PW]) WriteNextKey(key string)
type Writer ¶
type Writer interface { SetWriter(writer io.Writer, bufferSize int) Int32(value int32) error Int64(value int64) error Float32(value float32, format byte, precision int) error Float64(value float64, format byte, precision int) error String(value string) error Bytes(value []byte) error ByteString(value []byte) error StartObject() error Property(name string) error EndObject() error StartArray(length int) error EndArray() error StartMap(length int) error NextKey(key string) error EndMap() error Flush() error }
Source Files
¶
Click to show internal directories.
Click to hide internal directories.