Documentation
¶
Index ¶
- Variables
- func GetParamValue(p ParamFieldInfo, ctx core.Context, cookies map[string]*http.Cookie) string
- func HasMultipartFields(t reflect.Type) bool
- func IsMultipartFormFilesType(t reflect.Type) bool
- func ParseDeepObjectQuery(query url.Values, name string) map[string]string
- func ParseInto(ctx core.Context, f reflect.Value, value string, preSplit []string, ...) (any, error)
- func SetDeepObjectValue(pb *core.PathBuffer, res *core.ValidateResult, f reflect.Value, ...) map[string]any
- func SetupMultipartRequestBody(op *core.Operation, fields []MultipartFieldInfo)
- func WriteHeader(write func(string, string), info *HeaderInfo, f reflect.Value)
- func WriteResponse(api core.API, ctx core.Context, status int, ct string, body any) error
- func WriteResponseWithPanic(api core.API, ctx core.Context, status int, ct string, body any)
- type BodyProcessingConfig
- type ContextError
- type FindResult
- type FindResultPath
- type HeaderInfo
- type InputMeta
- type IntoUnmarshaler
- type MultipartFieldInfo
- type MultipartFormFiles
- type MultipartProcessingConfig
- type OutputMeta
- type ParamFieldInfo
- type ParamLocation
- type ParamReactor
- type ParamWrapper
Constants ¶
This section is empty.
Variables ¶
View Source
var ErrUnparsable = errors.New("unparsable value")
Functions ¶
func GetParamValue ¶
func HasMultipartFields ¶
func ParseDeepObjectQuery ¶
func SetDeepObjectValue ¶
func SetDeepObjectValue(pb *core.PathBuffer, res *core.ValidateResult, f reflect.Value, data map[string]string) map[string]any
func SetupMultipartRequestBody ¶
func SetupMultipartRequestBody(op *core.Operation, fields []MultipartFieldInfo)
func WriteHeader ¶
func WriteHeader(write func(string, string), info *HeaderInfo, f reflect.Value)
func WriteResponse ¶
Types ¶
type BodyProcessingConfig ¶
type BodyProcessingConfig struct {
Body []byte
Op core.Operation
Value reflect.Value
HasInputBody bool
InputBodyIndex []int
Unmarshaler IntoUnmarshaler
Validator func(data any, res *core.ValidateResult)
Defaults *FindResult[any]
Result *core.ValidateResult
}
type ContextError ¶
func ProcessMultipartForm ¶
func ProcessMultipartForm(ctx core.Context, cfg MultipartProcessingConfig) *ContextError
func ProcessRegularMsgBody ¶
func ProcessRegularMsgBody(cfg BodyProcessingConfig) (int, *ContextError)
func (*ContextError) Error ¶
func (e *ContextError) Error() string
type FindResult ¶
type FindResult[T comparable] struct { Paths []FindResultPath[T] }
func (*FindResult[T]) Every ¶
func (r *FindResult[T]) Every(v reflect.Value, f func(reflect.Value, T))
func (*FindResult[T]) EveryPB ¶
func (r *FindResult[T]) EveryPB(pb *core.PathBuffer, v reflect.Value, f func(reflect.Value, T))
type FindResultPath ¶
type FindResultPath[T comparable] struct { Path []int Value T }
type HeaderInfo ¶
type HeaderInfo struct {
Field reflect.StructField
Name string
TimeFormat string
}
type InputMeta ¶
type InputMeta struct {
Params *FindResult[*ParamFieldInfo]
InputBodyIndex []int
HasInputBody bool
RawBodyIndex []int
InSchema *core.Schema
Resolvers *FindResult[bool]
Defaults *FindResult[any]
MultipartFields []MultipartFieldInfo
MultipartBodyIndex []int
}
type IntoUnmarshaler ¶
type MultipartFieldInfo ¶
type MultipartFieldInfo struct {
Name string
Index []int
IsFile bool
IsSlice bool
Type reflect.Type
}
func AnalyzeMultipartFields ¶
func AnalyzeMultipartFields(t reflect.Type) []MultipartFieldInfo
type MultipartFormFiles ¶
type MultipartFormFiles[T any] struct { // contains filtered or unexported fields }
func (*MultipartFormFiles[T]) Data ¶
func (m *MultipartFormFiles[T]) Data() T
type MultipartProcessingConfig ¶
type MultipartProcessingConfig struct {
Value reflect.Value
Fields []MultipartFieldInfo
}
type OutputMeta ¶
type OutputMeta struct {
Headers *FindResult[*HeaderInfo]
StatusIndex int
BodyIndex int
BodyFunc bool
}
func AnalyzeOutput ¶
type ParamFieldInfo ¶
type ParamLocation ¶
type ParamLocation struct {
Explode *bool
PFI *ParamFieldInfo
}
type ParamReactor ¶
type ParamWrapper ¶
Click to show internal directories.
Click to hide internal directories.