Versions in this module Expand all Collapse all v0 v0.1.1 Feb 20, 2025 v0.1.0 Nov 6, 2023 Changes in this version + const TagName + func Elem(rType reflect.Type) reflect.Type + func EscapeSpecialChars(value string, config *Config) string + func WriteObject(writer *Buffer, config *Config, values []string, wasString []bool) + type Accessor struct + func (a *Accessor) Has() bool + func (a *Accessor) Headers() ([]string, []string) + func (a *Accessor) Interfacer() *xunsafe.Type + func (a *Accessor) RegularHeaders() ([]string, []string) + func (a *Accessor) Reset() + func (a *Accessor) ResetAllChildren() + func (a *Accessor) Set(pointer unsafe.Pointer) + type Buffer struct + func NewBuffer(size int) *Buffer + func (b *Buffer) Read(dest []byte) (int, error) + type Config struct + DataRowFieldTag string + DataRowFieldTypes map[string]string + DataRowTag string + DataTag string + EncloseBy string + EscapeBy string + ExcludedPaths []string + FieldSeparator string + HeaderRowFieldAttr string + HeaderRowFieldType map[string]string + HeaderRowFieldTypeAttr string + HeaderRowTag string + HeaderTag string + NewLineSeparator string + NullValue string + ObjectSeparator string + References []*Reference + RegularNullValue string + RegularRootTag string + RegularRowTag string + RootTag string + StringifierConfig io.StringifierConfig + Stringify StringifyConfig + Style string + TabularNullValue string + UniqueFields []string + type Field struct + type Index struct + func (i *Index) Get(key string) (interface{}, bool) + func (i *Index) Has(owner, value interface{}) bool + type Marshaller struct + func NewMarshaller(rType reflect.Type, config *Config) (*Marshaller, error) + func (m *Marshaller) Marshal(val interface{}, options ...interface{}) ([]byte, error) + func (m *Marshaller) ReadHeaders(b []byte) ([]string, error) + func (m *Marshaller) Unmarshal(b []byte, dest interface{}) error + type Node interface + AddChildren func(node Node) + ID func() interface{} + ParentID func() interface{} + func BuildTree(nodes []Node) []Node + type NodeIndex map[interface{}]map[interface{}]bool + func (i NodeIndex) Get(id interface{}) map[interface{}]bool + type Object struct + func ParentOf(objects []*Object) (*Object, bool) + func (o *Object) Accessor(accessorIndex int, mainConfig *Config, depth int, configs []*Config) (*Accessor, error) + func (o *Object) AddChildren(node Node) + func (o *Object) AddHolder(field *Field, holder *string) + func (o *Object) CheckIndexed() (interface{}, bool) + func (o *Object) Has(parent interface{}, value interface{}) bool + func (o *Object) ID() interface{} + func (o *Object) ParentID() interface{} + func (o *Object) Umarshal() error + type ObjectIndex map[interface{}]setMarker + func (i ObjectIndex) Index(value interface{}) setMarker + type Reader struct + func NewReader(any interface{}, config *Config, options ...interface{}) (*Reader, reflect.Type, error) + func (r *Reader) ItemCount() int + func (r *Reader) Read(buffer []byte) (n int, err error) + type Reference struct + ChildField string + ParentField string + type StringifyConfig struct + IgnoreEncloseBy bool + IgnoreFieldSeparator bool + IgnoreObjectSeparator bool + type Tag struct + Cdata bool + NullifyEmpty bool + OmitTagName bool + Path string + Tabular bool + func ParseTag(rTag reflect.StructTag) (*Tag, error) + type UnmarshalSession struct + type XMLMarhsaler interface + MarshalXML func() ([]byte, error)