Versions in this module Expand all Collapse all v1 v1.0.1 Apr 17, 2023 v1.0.0 Apr 7, 2023 Changes in this version + type API struct + Client Client + func NewAPI(client Client, schema Schema) *API + func (api *API) ArgsFromStrings(name string, args ...string) (parsedArgs []any, err error) + func (api *API) Binding(name string) (BindingWrapper, bool) + func (api *API) Execute(name string, args ...any) (val any, err error) + func (api *API) Paginator(name string, waitTime time.Duration, args ...any) (paginator Paginator[any, any], err error) + type Afterable interface + After func() any + type Attr func(client Client) (string, any) + type Binding interface + AddAttrs func(attrs ...Attr) Binding[ResT, RetT] + ArgsFromStrings func(args ...string) ([]any, error) + Attrs func() map[string]any + Execute func(client Client, args ...any) (response RetT, err error) + GetParamsMethod func() BindingParamsMethod[ResT, RetT] + GetRequestMethod func() BindingRequestMethod[ResT, RetT] + GetResponseMethod func() BindingResponseMethod[ResT, RetT] + GetResponseUnwrappedMethod func() BindingResponseUnwrappedMethod[ResT, RetT] + GetResponseWrapperMethod func() BindingResponseWrapperMethod[ResT, RetT] + Name func() string + Paginated func() bool + Params func() []BindingParam + Request func(args ...any) (request Request) + Response func(response ResT, args ...any) RetT + ResponseUnwrapped func(responseWrapper reflect.Value, args ...any) (response ResT, err error) + ResponseWrapper func(args ...any) (responseWrapper reflect.Value, err error) + SetName func(name string) Binding[ResT, RetT] + SetPaginated func(paginated bool) Binding[ResT, RetT] + SetParamsMethod func(method BindingParamsMethod[ResT, RetT]) Binding[ResT, RetT] + SetResponseMethod func(method BindingResponseMethod[ResT, RetT]) Binding[ResT, RetT] + SetResponseUnwrappedMethod func(method BindingResponseUnwrappedMethod[ResT, RetT]) Binding[ResT, RetT] + SetResponseWrapperMethod func(method BindingResponseWrapperMethod[ResT, RetT]) Binding[ResT, RetT] + func NewBinding(request BindingRequestMethod[ResT, RetT], ...) Binding[ResT, RetT] + func NewBindingChain(request BindingRequestMethod[ResT, RetT]) Binding[ResT, RetT] + type BindingExecuteMethod func(binding Binding[ResT, RetT], client Client, args ...any) (response RetT, err error) + type BindingParam struct + func Param(name string, val any) BindingParam + func Params(args ...any) []BindingParam + func ReqParam(name string, val any) BindingParam + func VarParam(name string, val any) BindingParam + func (bp BindingParam) String() string + func (bp BindingParam) Type() reflect.Type + type BindingParamsMethod func(binding Binding[ResT, RetT]) []BindingParam + type BindingRequestMethod func(binding Binding[ResT, RetT], args ...any) (request Request) + type BindingResponseMethod func(binding Binding[ResT, RetT], response ResT, args ...any) RetT + type BindingResponseUnwrappedMethod func(binding Binding[ResT, RetT], responseWrapper reflect.Value, args ...any) (response ResT, err error) + type BindingResponseWrapperMethod func(binding Binding[ResT, RetT], args ...any) (responseWrapper reflect.Value, err error) + type BindingWrapper struct + func NewWrappedBinding(name string, request BindingRequestMethod[ResT, RetT], ...) BindingWrapper + func WrapBinding(binding Binding[ResT, RetT]) BindingWrapper + func (bw BindingWrapper) ArgsFromStrings(args ...string) (parsedArgs []any, err error) + func (bw BindingWrapper) Execute(client Client, args ...any) (val any, err error) + func (bw BindingWrapper) Name() string + func (bw BindingWrapper) Paginated() bool + func (bw BindingWrapper) Paginator(client Client, waitTime time.Duration, args ...any) (paginator Paginator[any, any], err error) + func (bw BindingWrapper) Params() []BindingParam + func (bw BindingWrapper) String() string + type Client interface + Run func(ctx context.Context, bindingName string, attrs map[string]any, req Request, ...) error + type GraphQLRequest struct + func (req GraphQLRequest) Header() *http.Header + type HTTPRequest struct + func (req HTTPRequest) Header() *http.Header + type Lenable interface + Len func() int + type Mergeable interface + HasMore func() bool + Merge func(similar any) error + type Paginator interface + All func() (RetT, error) + Continue func() bool + Next func() error + Page func() RetT + Pages func(pages int) (RetT, error) + Until func(predicate func(paginator Paginator[ResT, RetT], pages RetT) bool) (RetT, error) + func MustPaginate(client Client, waitTime time.Duration, binding BindingWrapper, args ...any) (paginator Paginator[any, any]) + func MustTypePaginate(client Client, waitTime time.Duration, binding Binding[ResT, RetT], ...) (paginator Paginator[ResT, RetT]) + func NewPaginator(client Client, waitTime time.Duration, binding BindingWrapper, args ...any) (pag Paginator[any, any], err error) + func NewTypedPaginator(client Client, waitTime time.Duration, binding Binding[ResT, RetT], ...) (paginator Paginator[ResT, RetT], err error) + type RateLimit interface + Remaining func() int + Reset func() time.Time + Type func() RateLimitType + Used func() int + type RateLimitType int + const RequestRateLimit + const ResourceRateLimit + type RateLimitedClient interface + AddRateLimit func(bindingName string, rateLimit RateLimit) + LatestRateLimit func(bindingName string) RateLimit + Log func(string) + RateLimits func() *sync.Map + type Request interface + Header func() *http.Header + type Schema map[string]BindingWrapper