textx

package
v0.1.2 Latest Latest
Warning

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

Go to latest
Published: Sep 21, 2025 License: MIT Imports: 8 Imported by: 3

Documentation

Index

Examples

Constants

View Source
const URLTag = "url"

URLTag describes url parameter in struct tag

Variables

View Source
var (
	TextMarshaler   = reflect.TypeFor[encoding.TextMarshaler]()
	TextUnmarshaler = reflect.TypeFor[encoding.TextUnmarshaler]()
)

Functions

func Marshal added in v0.1.0

func Marshal(v any) ([]byte, error)

func MarshalURL added in v0.1.0

func MarshalURL(v any) (url.Values, error)

MarshalURL encodes a struct value into url.Values. It supports struct tags `name:"customName" as the URL parameter name; It will skip unexported fields and fields with name tag "-". By default, the URL parameter names are converted to lowerCamelCase.

Example
u, err := MarshalURL(struct {
	Name    string `url:"id"`
	Age     int
	Gender  int8
	Country string `url:"country,default='cn'"`
	Codes   []string
}{
	Name:  "Alex",
	Age:   30,
	Codes: []string{"a", "b", "c"},
})

if err != nil {
	panic(err)
}
fmt.Println(u.Encode())
Output:

age=30&codes=a&codes=b&codes=c&country=cn&id=Alex

func NewErrMarshalFailed added in v0.1.0

func NewErrMarshalFailed(input any, cause error) error

func NewErrMarshalURLFailed added in v0.1.0

func NewErrMarshalURLFailed(input any, field string, cause error) error

func NewErrMarshalURLInvalidInput added in v0.1.0

func NewErrMarshalURLInvalidInput(got any) error

func NewErrMarshalUnsupportedType added in v0.1.0

func NewErrMarshalUnsupportedType(got any) error

func NewErrUnmarshalFailed added in v0.1.0

func NewErrUnmarshalFailed(from []byte, to any, cause error) error

func NewErrUnmarshalInvalidInput added in v0.1.0

func NewErrUnmarshalInvalidInput(got any) error

func NewErrUnmarshalParseFailed added in v0.1.0

func NewErrUnmarshalParseFailed(from []byte, to any, cause error) error

func NewErrUnmarshalURLFailed added in v0.1.0

func NewErrUnmarshalURLFailed(tpe any, field, input string, cause error) error

func NewErrUnmarshalURLInvalidInput added in v0.1.0

func NewErrUnmarshalURLInvalidInput(got any) error

func NewErrUnmarshalUnsupportedType added in v0.1.0

func NewErrUnmarshalUnsupportedType(got any) error

func Unmarshal added in v0.1.0

func Unmarshal(data []byte, v any) error

func UnmarshalURL added in v0.1.0

func UnmarshalURL(u url.Values, v any) error

UnmarshalURL decodes values from url.Values into a struct. The input MUST be a pointer to a struct or reflect.Value of a struct.

Types

type ErrMarshalFailed added in v0.1.0

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

func (*ErrMarshalFailed) Error added in v0.1.0

func (e *ErrMarshalFailed) Error() string

func (*ErrMarshalFailed) Unwrap added in v0.1.0

func (e *ErrMarshalFailed) Unwrap() error

type ErrMarshalURLFailed added in v0.1.0

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

func (*ErrMarshalURLFailed) Error added in v0.1.0

func (e *ErrMarshalURLFailed) Error() string

func (*ErrMarshalURLFailed) Unwrap added in v0.1.0

func (e *ErrMarshalURLFailed) Unwrap() error

type ErrMarshalURLInvalidInput added in v0.1.0

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

func (*ErrMarshalURLInvalidInput) Error added in v0.1.0

func (e *ErrMarshalURLInvalidInput) Error() string

type ErrMarshalUnsupportedType

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

func (*ErrMarshalUnsupportedType) Error

func (e *ErrMarshalUnsupportedType) Error() string

type ErrUnmarshalFailed

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

func (*ErrUnmarshalFailed) Error

func (e *ErrUnmarshalFailed) Error() string

func (*ErrUnmarshalFailed) Unwrap added in v0.1.0

func (e *ErrUnmarshalFailed) Unwrap() error

type ErrUnmarshalInvalidInput added in v0.1.0

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

func (*ErrUnmarshalInvalidInput) Error added in v0.1.0

func (e *ErrUnmarshalInvalidInput) Error() string

type ErrUnmarshalParseFailed added in v0.1.0

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

func (*ErrUnmarshalParseFailed) Error added in v0.1.0

func (e *ErrUnmarshalParseFailed) Error() string

func (*ErrUnmarshalParseFailed) Unwrap added in v0.1.0

func (e *ErrUnmarshalParseFailed) Unwrap() error

type ErrUnmarshalURLFailed added in v0.1.0

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

func (*ErrUnmarshalURLFailed) Error added in v0.1.0

func (e *ErrUnmarshalURLFailed) Error() string

func (*ErrUnmarshalURLFailed) Unwrap added in v0.1.0

func (e *ErrUnmarshalURLFailed) Unwrap() error

type ErrUnmarshalURLInvalidInput added in v0.1.0

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

func (*ErrUnmarshalURLInvalidInput) Error added in v0.1.0

type ErrUnmarshalUnsupportedType

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

func (*ErrUnmarshalUnsupportedType) Error

Jump to

Keyboard shortcuts

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