Files
genqlient/internal/integration/generated.go
T
Adam Babik 9fbb6b87aa Avoid capitalized error strings in generated code (#162)
Error strings should follow established guidelines
to ensure good composability and uniformity.
A mention of this particular guideline can be found
in Go Code Review Comments:
https://github.com/golang/go/wiki/CodeReviewComments#error-strings
2022-01-13 11:01:33 -08:00

3485 lines
97 KiB
Go

// Code generated by github.com/Khan/genqlient, DO NOT EDIT.
package integration
import (
"context"
"encoding/json"
"fmt"
"time"
"github.com/Khan/genqlient/graphql"
"github.com/Khan/genqlient/internal/testutil"
)
// AnimalFields includes the GraphQL fields of Animal requested by the fragment AnimalFields.
type AnimalFields struct {
Id string `json:"id"`
Hair AnimalFieldsHairBeingsHair `json:"hair"`
Owner AnimalFieldsOwnerBeing `json:"-"`
}
// GetId returns AnimalFields.Id, and is useful for accessing the field via an interface.
func (v *AnimalFields) GetId() string { return v.Id }
// GetHair returns AnimalFields.Hair, and is useful for accessing the field via an interface.
func (v *AnimalFields) GetHair() AnimalFieldsHairBeingsHair { return v.Hair }
// GetOwner returns AnimalFields.Owner, and is useful for accessing the field via an interface.
func (v *AnimalFields) GetOwner() AnimalFieldsOwnerBeing { return v.Owner }
func (v *AnimalFields) UnmarshalJSON(b []byte) error {
if string(b) == "null" {
return nil
}
var firstPass struct {
*AnimalFields
Owner json.RawMessage `json:"owner"`
graphql.NoUnmarshalJSON
}
firstPass.AnimalFields = v
err := json.Unmarshal(b, &firstPass)
if err != nil {
return err
}
{
dst := &v.Owner
src := firstPass.Owner
if len(src) != 0 && string(src) != "null" {
err = __unmarshalAnimalFieldsOwnerBeing(
src, dst)
if err != nil {
return fmt.Errorf(
"Unable to unmarshal AnimalFields.Owner: %w", err)
}
}
}
return nil
}
type __premarshalAnimalFields struct {
Id string `json:"id"`
Hair AnimalFieldsHairBeingsHair `json:"hair"`
Owner json.RawMessage `json:"owner"`
}
func (v *AnimalFields) MarshalJSON() ([]byte, error) {
premarshaled, err := v.__premarshalJSON()
if err != nil {
return nil, err
}
return json.Marshal(premarshaled)
}
func (v *AnimalFields) __premarshalJSON() (*__premarshalAnimalFields, error) {
var retval __premarshalAnimalFields
retval.Id = v.Id
retval.Hair = v.Hair
{
dst := &retval.Owner
src := v.Owner
var err error
*dst, err = __marshalAnimalFieldsOwnerBeing(
&src)
if err != nil {
return nil, fmt.Errorf(
"Unable to marshal AnimalFields.Owner: %w", err)
}
}
return &retval, nil
}
// AnimalFieldsHairBeingsHair includes the requested fields of the GraphQL type BeingsHair.
type AnimalFieldsHairBeingsHair struct {
HasHair bool `json:"hasHair"`
}
// GetHasHair returns AnimalFieldsHairBeingsHair.HasHair, and is useful for accessing the field via an interface.
func (v *AnimalFieldsHairBeingsHair) GetHasHair() bool { return v.HasHair }
// AnimalFieldsOwnerAnimal includes the requested fields of the GraphQL type Animal.
type AnimalFieldsOwnerAnimal struct {
Typename string `json:"__typename"`
Id string `json:"id"`
}
// GetTypename returns AnimalFieldsOwnerAnimal.Typename, and is useful for accessing the field via an interface.
func (v *AnimalFieldsOwnerAnimal) GetTypename() string { return v.Typename }
// GetId returns AnimalFieldsOwnerAnimal.Id, and is useful for accessing the field via an interface.
func (v *AnimalFieldsOwnerAnimal) GetId() string { return v.Id }
// AnimalFieldsOwnerBeing includes the requested fields of the GraphQL interface Being.
//
// AnimalFieldsOwnerBeing is implemented by the following types:
// AnimalFieldsOwnerUser
// AnimalFieldsOwnerAnimal
type AnimalFieldsOwnerBeing interface {
implementsGraphQLInterfaceAnimalFieldsOwnerBeing()
// GetTypename returns the receiver's concrete GraphQL type-name (see interface doc for possible values).
GetTypename() string
// GetId returns the interface-field "id" from its implementation.
GetId() string
}
func (v *AnimalFieldsOwnerUser) implementsGraphQLInterfaceAnimalFieldsOwnerBeing() {}
func (v *AnimalFieldsOwnerAnimal) implementsGraphQLInterfaceAnimalFieldsOwnerBeing() {}
func __unmarshalAnimalFieldsOwnerBeing(b []byte, v *AnimalFieldsOwnerBeing) error {
if string(b) == "null" {
return nil
}
var tn struct {
TypeName string `json:"__typename"`
}
err := json.Unmarshal(b, &tn)
if err != nil {
return err
}
switch tn.TypeName {
case "User":
*v = new(AnimalFieldsOwnerUser)
return json.Unmarshal(b, *v)
case "Animal":
*v = new(AnimalFieldsOwnerAnimal)
return json.Unmarshal(b, *v)
case "":
return fmt.Errorf(
"response was missing Being.__typename")
default:
return fmt.Errorf(
`unexpected concrete type for AnimalFieldsOwnerBeing: "%v"`, tn.TypeName)
}
}
func __marshalAnimalFieldsOwnerBeing(v *AnimalFieldsOwnerBeing) ([]byte, error) {
var typename string
switch v := (*v).(type) {
case *AnimalFieldsOwnerUser:
typename = "User"
premarshaled, err := v.__premarshalJSON()
if err != nil {
return nil, err
}
result := struct {
TypeName string `json:"__typename"`
*__premarshalAnimalFieldsOwnerUser
}{typename, premarshaled}
return json.Marshal(result)
case *AnimalFieldsOwnerAnimal:
typename = "Animal"
result := struct {
TypeName string `json:"__typename"`
*AnimalFieldsOwnerAnimal
}{typename, v}
return json.Marshal(result)
case nil:
return []byte("null"), nil
default:
return nil, fmt.Errorf(
`unexpected concrete type for AnimalFieldsOwnerBeing: "%T"`, v)
}
}
// AnimalFieldsOwnerUser includes the requested fields of the GraphQL type User.
type AnimalFieldsOwnerUser struct {
Typename string `json:"__typename"`
Id string `json:"id"`
UserFields `json:"-"`
LuckyFieldsUser `json:"-"`
}
// GetTypename returns AnimalFieldsOwnerUser.Typename, and is useful for accessing the field via an interface.
func (v *AnimalFieldsOwnerUser) GetTypename() string { return v.Typename }
// GetId returns AnimalFieldsOwnerUser.Id, and is useful for accessing the field via an interface.
func (v *AnimalFieldsOwnerUser) GetId() string { return v.Id }
// GetLuckyNumber returns AnimalFieldsOwnerUser.LuckyNumber, and is useful for accessing the field via an interface.
func (v *AnimalFieldsOwnerUser) GetLuckyNumber() int { return v.LuckyFieldsUser.LuckyNumber }
// GetHair returns AnimalFieldsOwnerUser.Hair, and is useful for accessing the field via an interface.
func (v *AnimalFieldsOwnerUser) GetHair() MoreUserFieldsHair { return v.UserFields.MoreUserFields.Hair }
func (v *AnimalFieldsOwnerUser) UnmarshalJSON(b []byte) error {
if string(b) == "null" {
return nil
}
var firstPass struct {
*AnimalFieldsOwnerUser
graphql.NoUnmarshalJSON
}
firstPass.AnimalFieldsOwnerUser = v
err := json.Unmarshal(b, &firstPass)
if err != nil {
return err
}
err = json.Unmarshal(
b, &v.UserFields)
if err != nil {
return err
}
err = json.Unmarshal(
b, &v.LuckyFieldsUser)
if err != nil {
return err
}
return nil
}
type __premarshalAnimalFieldsOwnerUser struct {
Typename string `json:"__typename"`
Id string `json:"id"`
LuckyNumber int `json:"luckyNumber"`
Hair MoreUserFieldsHair `json:"hair"`
}
func (v *AnimalFieldsOwnerUser) MarshalJSON() ([]byte, error) {
premarshaled, err := v.__premarshalJSON()
if err != nil {
return nil, err
}
return json.Marshal(premarshaled)
}
func (v *AnimalFieldsOwnerUser) __premarshalJSON() (*__premarshalAnimalFieldsOwnerUser, error) {
var retval __premarshalAnimalFieldsOwnerUser
retval.Typename = v.Typename
retval.Id = v.Id
retval.LuckyNumber = v.LuckyFieldsUser.LuckyNumber
retval.Hair = v.UserFields.MoreUserFields.Hair
return &retval, nil
}
// FriendsFields includes the GraphQL fields of User requested by the fragment FriendsFields.
type FriendsFields struct {
Id string `json:"id"`
Name string `json:"name"`
}
// GetId returns FriendsFields.Id, and is useful for accessing the field via an interface.
func (v *FriendsFields) GetId() string { return v.Id }
// GetName returns FriendsFields.Name, and is useful for accessing the field via an interface.
func (v *FriendsFields) GetName() string { return v.Name }
// InnerBeingFields includes the GraphQL fields of Being requested by the fragment InnerBeingFields.
//
// InnerBeingFields is implemented by the following types:
// InnerBeingFieldsUser
// InnerBeingFieldsAnimal
type InnerBeingFields interface {
implementsGraphQLInterfaceInnerBeingFields()
// GetId returns the interface-field "id" from its implementation.
GetId() string
// GetName returns the interface-field "name" from its implementation.
GetName() string
}
func (v *InnerBeingFieldsUser) implementsGraphQLInterfaceInnerBeingFields() {}
func (v *InnerBeingFieldsAnimal) implementsGraphQLInterfaceInnerBeingFields() {}
func __unmarshalInnerBeingFields(b []byte, v *InnerBeingFields) error {
if string(b) == "null" {
return nil
}
var tn struct {
TypeName string `json:"__typename"`
}
err := json.Unmarshal(b, &tn)
if err != nil {
return err
}
switch tn.TypeName {
case "User":
*v = new(InnerBeingFieldsUser)
return json.Unmarshal(b, *v)
case "Animal":
*v = new(InnerBeingFieldsAnimal)
return json.Unmarshal(b, *v)
case "":
return fmt.Errorf(
"response was missing Being.__typename")
default:
return fmt.Errorf(
`unexpected concrete type for InnerBeingFields: "%v"`, tn.TypeName)
}
}
func __marshalInnerBeingFields(v *InnerBeingFields) ([]byte, error) {
var typename string
switch v := (*v).(type) {
case *InnerBeingFieldsUser:
typename = "User"
result := struct {
TypeName string `json:"__typename"`
*InnerBeingFieldsUser
}{typename, v}
return json.Marshal(result)
case *InnerBeingFieldsAnimal:
typename = "Animal"
result := struct {
TypeName string `json:"__typename"`
*InnerBeingFieldsAnimal
}{typename, v}
return json.Marshal(result)
case nil:
return []byte("null"), nil
default:
return nil, fmt.Errorf(
`unexpected concrete type for InnerBeingFields: "%T"`, v)
}
}
// InnerBeingFields includes the GraphQL fields of Animal requested by the fragment InnerBeingFields.
type InnerBeingFieldsAnimal struct {
Id string `json:"id"`
Name string `json:"name"`
}
// GetId returns InnerBeingFieldsAnimal.Id, and is useful for accessing the field via an interface.
func (v *InnerBeingFieldsAnimal) GetId() string { return v.Id }
// GetName returns InnerBeingFieldsAnimal.Name, and is useful for accessing the field via an interface.
func (v *InnerBeingFieldsAnimal) GetName() string { return v.Name }
// InnerBeingFields includes the GraphQL fields of User requested by the fragment InnerBeingFields.
type InnerBeingFieldsUser struct {
Id string `json:"id"`
Name string `json:"name"`
Friends []FriendsFields `json:"friends"`
}
// GetId returns InnerBeingFieldsUser.Id, and is useful for accessing the field via an interface.
func (v *InnerBeingFieldsUser) GetId() string { return v.Id }
// GetName returns InnerBeingFieldsUser.Name, and is useful for accessing the field via an interface.
func (v *InnerBeingFieldsUser) GetName() string { return v.Name }
// GetFriends returns InnerBeingFieldsUser.Friends, and is useful for accessing the field via an interface.
func (v *InnerBeingFieldsUser) GetFriends() []FriendsFields { return v.Friends }
// InnerLuckyFields includes the GraphQL fields of Lucky requested by the fragment InnerLuckyFields.
//
// InnerLuckyFields is implemented by the following types:
// InnerLuckyFieldsUser
type InnerLuckyFields interface {
implementsGraphQLInterfaceInnerLuckyFields()
// GetLuckyNumber returns the interface-field "luckyNumber" from its implementation.
GetLuckyNumber() int
}
func (v *InnerLuckyFieldsUser) implementsGraphQLInterfaceInnerLuckyFields() {}
func __unmarshalInnerLuckyFields(b []byte, v *InnerLuckyFields) error {
if string(b) == "null" {
return nil
}
var tn struct {
TypeName string `json:"__typename"`
}
err := json.Unmarshal(b, &tn)
if err != nil {
return err
}
switch tn.TypeName {
case "User":
*v = new(InnerLuckyFieldsUser)
return json.Unmarshal(b, *v)
case "":
return fmt.Errorf(
"response was missing Lucky.__typename")
default:
return fmt.Errorf(
`unexpected concrete type for InnerLuckyFields: "%v"`, tn.TypeName)
}
}
func __marshalInnerLuckyFields(v *InnerLuckyFields) ([]byte, error) {
var typename string
switch v := (*v).(type) {
case *InnerLuckyFieldsUser:
typename = "User"
result := struct {
TypeName string `json:"__typename"`
*InnerLuckyFieldsUser
}{typename, v}
return json.Marshal(result)
case nil:
return []byte("null"), nil
default:
return nil, fmt.Errorf(
`unexpected concrete type for InnerLuckyFields: "%T"`, v)
}
}
// InnerLuckyFields includes the GraphQL fields of User requested by the fragment InnerLuckyFields.
type InnerLuckyFieldsUser struct {
LuckyNumber int `json:"luckyNumber"`
}
// GetLuckyNumber returns InnerLuckyFieldsUser.LuckyNumber, and is useful for accessing the field via an interface.
func (v *InnerLuckyFieldsUser) GetLuckyNumber() int { return v.LuckyNumber }
// LuckyFields includes the GraphQL fields of Lucky requested by the fragment LuckyFields.
//
// LuckyFields is implemented by the following types:
// LuckyFieldsUser
type LuckyFields interface {
implementsGraphQLInterfaceLuckyFields()
// GetLuckyNumber returns the interface-field "luckyNumber" from its implementation.
GetLuckyNumber() int
}
func (v *LuckyFieldsUser) implementsGraphQLInterfaceLuckyFields() {}
func __unmarshalLuckyFields(b []byte, v *LuckyFields) error {
if string(b) == "null" {
return nil
}
var tn struct {
TypeName string `json:"__typename"`
}
err := json.Unmarshal(b, &tn)
if err != nil {
return err
}
switch tn.TypeName {
case "User":
*v = new(LuckyFieldsUser)
return json.Unmarshal(b, *v)
case "":
return fmt.Errorf(
"response was missing Lucky.__typename")
default:
return fmt.Errorf(
`unexpected concrete type for LuckyFields: "%v"`, tn.TypeName)
}
}
func __marshalLuckyFields(v *LuckyFields) ([]byte, error) {
var typename string
switch v := (*v).(type) {
case *LuckyFieldsUser:
typename = "User"
premarshaled, err := v.__premarshalJSON()
if err != nil {
return nil, err
}
result := struct {
TypeName string `json:"__typename"`
*__premarshalLuckyFieldsUser
}{typename, premarshaled}
return json.Marshal(result)
case nil:
return []byte("null"), nil
default:
return nil, fmt.Errorf(
`unexpected concrete type for LuckyFields: "%T"`, v)
}
}
// LuckyFields includes the GraphQL fields of User requested by the fragment LuckyFields.
type LuckyFieldsUser struct {
MoreUserFields `json:"-"`
LuckyNumber int `json:"luckyNumber"`
}
// GetLuckyNumber returns LuckyFieldsUser.LuckyNumber, and is useful for accessing the field via an interface.
func (v *LuckyFieldsUser) GetLuckyNumber() int { return v.LuckyNumber }
// GetId returns LuckyFieldsUser.Id, and is useful for accessing the field via an interface.
func (v *LuckyFieldsUser) GetId() string { return v.MoreUserFields.Id }
// GetHair returns LuckyFieldsUser.Hair, and is useful for accessing the field via an interface.
func (v *LuckyFieldsUser) GetHair() MoreUserFieldsHair { return v.MoreUserFields.Hair }
func (v *LuckyFieldsUser) UnmarshalJSON(b []byte) error {
if string(b) == "null" {
return nil
}
var firstPass struct {
*LuckyFieldsUser
graphql.NoUnmarshalJSON
}
firstPass.LuckyFieldsUser = v
err := json.Unmarshal(b, &firstPass)
if err != nil {
return err
}
err = json.Unmarshal(
b, &v.MoreUserFields)
if err != nil {
return err
}
return nil
}
type __premarshalLuckyFieldsUser struct {
LuckyNumber int `json:"luckyNumber"`
Id string `json:"id"`
Hair MoreUserFieldsHair `json:"hair"`
}
func (v *LuckyFieldsUser) MarshalJSON() ([]byte, error) {
premarshaled, err := v.__premarshalJSON()
if err != nil {
return nil, err
}
return json.Marshal(premarshaled)
}
func (v *LuckyFieldsUser) __premarshalJSON() (*__premarshalLuckyFieldsUser, error) {
var retval __premarshalLuckyFieldsUser
retval.LuckyNumber = v.LuckyNumber
retval.Id = v.MoreUserFields.Id
retval.Hair = v.MoreUserFields.Hair
return &retval, nil
}
// MoreUserFields includes the GraphQL fields of User requested by the fragment MoreUserFields.
type MoreUserFields struct {
Id string `json:"id"`
Hair MoreUserFieldsHair `json:"hair"`
}
// GetId returns MoreUserFields.Id, and is useful for accessing the field via an interface.
func (v *MoreUserFields) GetId() string { return v.Id }
// GetHair returns MoreUserFields.Hair, and is useful for accessing the field via an interface.
func (v *MoreUserFields) GetHair() MoreUserFieldsHair { return v.Hair }
// MoreUserFieldsHair includes the requested fields of the GraphQL type Hair.
type MoreUserFieldsHair struct {
Color string `json:"color"`
}
// GetColor returns MoreUserFieldsHair.Color, and is useful for accessing the field via an interface.
func (v *MoreUserFieldsHair) GetColor() string { return v.Color }
// QueryFragment includes the GraphQL fields of Query requested by the fragment QueryFragment.
type QueryFragment struct {
Beings []QueryFragmentBeingsBeing `json:"-"`
}
// GetBeings returns QueryFragment.Beings, and is useful for accessing the field via an interface.
func (v *QueryFragment) GetBeings() []QueryFragmentBeingsBeing { return v.Beings }
func (v *QueryFragment) UnmarshalJSON(b []byte) error {
if string(b) == "null" {
return nil
}
var firstPass struct {
*QueryFragment
Beings []json.RawMessage `json:"beings"`
graphql.NoUnmarshalJSON
}
firstPass.QueryFragment = v
err := json.Unmarshal(b, &firstPass)
if err != nil {
return err
}
{
dst := &v.Beings
src := firstPass.Beings
*dst = make(
[]QueryFragmentBeingsBeing,
len(src))
for i, src := range src {
dst := &(*dst)[i]
if len(src) != 0 && string(src) != "null" {
err = __unmarshalQueryFragmentBeingsBeing(
src, dst)
if err != nil {
return fmt.Errorf(
"Unable to unmarshal QueryFragment.Beings: %w", err)
}
}
}
}
return nil
}
type __premarshalQueryFragment struct {
Beings []json.RawMessage `json:"beings"`
}
func (v *QueryFragment) MarshalJSON() ([]byte, error) {
premarshaled, err := v.__premarshalJSON()
if err != nil {
return nil, err
}
return json.Marshal(premarshaled)
}
func (v *QueryFragment) __premarshalJSON() (*__premarshalQueryFragment, error) {
var retval __premarshalQueryFragment
{
dst := &retval.Beings
src := v.Beings
*dst = make(
[]json.RawMessage,
len(src))
for i, src := range src {
dst := &(*dst)[i]
var err error
*dst, err = __marshalQueryFragmentBeingsBeing(
&src)
if err != nil {
return nil, fmt.Errorf(
"Unable to marshal QueryFragment.Beings: %w", err)
}
}
}
return &retval, nil
}
// QueryFragmentBeingsAnimal includes the requested fields of the GraphQL type Animal.
type QueryFragmentBeingsAnimal struct {
Typename string `json:"__typename"`
Id string `json:"id"`
Owner InnerBeingFields `json:"-"`
}
// GetTypename returns QueryFragmentBeingsAnimal.Typename, and is useful for accessing the field via an interface.
func (v *QueryFragmentBeingsAnimal) GetTypename() string { return v.Typename }
// GetId returns QueryFragmentBeingsAnimal.Id, and is useful for accessing the field via an interface.
func (v *QueryFragmentBeingsAnimal) GetId() string { return v.Id }
// GetOwner returns QueryFragmentBeingsAnimal.Owner, and is useful for accessing the field via an interface.
func (v *QueryFragmentBeingsAnimal) GetOwner() InnerBeingFields { return v.Owner }
func (v *QueryFragmentBeingsAnimal) UnmarshalJSON(b []byte) error {
if string(b) == "null" {
return nil
}
var firstPass struct {
*QueryFragmentBeingsAnimal
Owner json.RawMessage `json:"owner"`
graphql.NoUnmarshalJSON
}
firstPass.QueryFragmentBeingsAnimal = v
err := json.Unmarshal(b, &firstPass)
if err != nil {
return err
}
{
dst := &v.Owner
src := firstPass.Owner
if len(src) != 0 && string(src) != "null" {
err = __unmarshalInnerBeingFields(
src, dst)
if err != nil {
return fmt.Errorf(
"Unable to unmarshal QueryFragmentBeingsAnimal.Owner: %w", err)
}
}
}
return nil
}
type __premarshalQueryFragmentBeingsAnimal struct {
Typename string `json:"__typename"`
Id string `json:"id"`
Owner json.RawMessage `json:"owner"`
}
func (v *QueryFragmentBeingsAnimal) MarshalJSON() ([]byte, error) {
premarshaled, err := v.__premarshalJSON()
if err != nil {
return nil, err
}
return json.Marshal(premarshaled)
}
func (v *QueryFragmentBeingsAnimal) __premarshalJSON() (*__premarshalQueryFragmentBeingsAnimal, error) {
var retval __premarshalQueryFragmentBeingsAnimal
retval.Typename = v.Typename
retval.Id = v.Id
{
dst := &retval.Owner
src := v.Owner
var err error
*dst, err = __marshalInnerBeingFields(
&src)
if err != nil {
return nil, fmt.Errorf(
"Unable to marshal QueryFragmentBeingsAnimal.Owner: %w", err)
}
}
return &retval, nil
}
// QueryFragmentBeingsBeing includes the requested fields of the GraphQL interface Being.
//
// QueryFragmentBeingsBeing is implemented by the following types:
// QueryFragmentBeingsUser
// QueryFragmentBeingsAnimal
type QueryFragmentBeingsBeing interface {
implementsGraphQLInterfaceQueryFragmentBeingsBeing()
// GetTypename returns the receiver's concrete GraphQL type-name (see interface doc for possible values).
GetTypename() string
// GetId returns the interface-field "id" from its implementation.
GetId() string
}
func (v *QueryFragmentBeingsUser) implementsGraphQLInterfaceQueryFragmentBeingsBeing() {}
func (v *QueryFragmentBeingsAnimal) implementsGraphQLInterfaceQueryFragmentBeingsBeing() {}
func __unmarshalQueryFragmentBeingsBeing(b []byte, v *QueryFragmentBeingsBeing) error {
if string(b) == "null" {
return nil
}
var tn struct {
TypeName string `json:"__typename"`
}
err := json.Unmarshal(b, &tn)
if err != nil {
return err
}
switch tn.TypeName {
case "User":
*v = new(QueryFragmentBeingsUser)
return json.Unmarshal(b, *v)
case "Animal":
*v = new(QueryFragmentBeingsAnimal)
return json.Unmarshal(b, *v)
case "":
return fmt.Errorf(
"response was missing Being.__typename")
default:
return fmt.Errorf(
`unexpected concrete type for QueryFragmentBeingsBeing: "%v"`, tn.TypeName)
}
}
func __marshalQueryFragmentBeingsBeing(v *QueryFragmentBeingsBeing) ([]byte, error) {
var typename string
switch v := (*v).(type) {
case *QueryFragmentBeingsUser:
typename = "User"
premarshaled, err := v.__premarshalJSON()
if err != nil {
return nil, err
}
result := struct {
TypeName string `json:"__typename"`
*__premarshalQueryFragmentBeingsUser
}{typename, premarshaled}
return json.Marshal(result)
case *QueryFragmentBeingsAnimal:
typename = "Animal"
premarshaled, err := v.__premarshalJSON()
if err != nil {
return nil, err
}
result := struct {
TypeName string `json:"__typename"`
*__premarshalQueryFragmentBeingsAnimal
}{typename, premarshaled}
return json.Marshal(result)
case nil:
return []byte("null"), nil
default:
return nil, fmt.Errorf(
`unexpected concrete type for QueryFragmentBeingsBeing: "%T"`, v)
}
}
// QueryFragmentBeingsUser includes the requested fields of the GraphQL type User.
type QueryFragmentBeingsUser struct {
Typename string `json:"__typename"`
Id string `json:"id"`
InnerLuckyFieldsUser `json:"-"`
}
// GetTypename returns QueryFragmentBeingsUser.Typename, and is useful for accessing the field via an interface.
func (v *QueryFragmentBeingsUser) GetTypename() string { return v.Typename }
// GetId returns QueryFragmentBeingsUser.Id, and is useful for accessing the field via an interface.
func (v *QueryFragmentBeingsUser) GetId() string { return v.Id }
// GetLuckyNumber returns QueryFragmentBeingsUser.LuckyNumber, and is useful for accessing the field via an interface.
func (v *QueryFragmentBeingsUser) GetLuckyNumber() int { return v.InnerLuckyFieldsUser.LuckyNumber }
func (v *QueryFragmentBeingsUser) UnmarshalJSON(b []byte) error {
if string(b) == "null" {
return nil
}
var firstPass struct {
*QueryFragmentBeingsUser
graphql.NoUnmarshalJSON
}
firstPass.QueryFragmentBeingsUser = v
err := json.Unmarshal(b, &firstPass)
if err != nil {
return err
}
err = json.Unmarshal(
b, &v.InnerLuckyFieldsUser)
if err != nil {
return err
}
return nil
}
type __premarshalQueryFragmentBeingsUser struct {
Typename string `json:"__typename"`
Id string `json:"id"`
LuckyNumber int `json:"luckyNumber"`
}
func (v *QueryFragmentBeingsUser) MarshalJSON() ([]byte, error) {
premarshaled, err := v.__premarshalJSON()
if err != nil {
return nil, err
}
return json.Marshal(premarshaled)
}
func (v *QueryFragmentBeingsUser) __premarshalJSON() (*__premarshalQueryFragmentBeingsUser, error) {
var retval __premarshalQueryFragmentBeingsUser
retval.Typename = v.Typename
retval.Id = v.Id
retval.LuckyNumber = v.InnerLuckyFieldsUser.LuckyNumber
return &retval, nil
}
type Species string
const (
SpeciesDog Species = "DOG"
SpeciesCoelacanth Species = "COELACANTH"
)
// UserFields includes the GraphQL fields of User requested by the fragment UserFields.
type UserFields struct {
Id string `json:"id"`
LuckyFieldsUser `json:"-"`
MoreUserFields `json:"-"`
}
// GetId returns UserFields.Id, and is useful for accessing the field via an interface.
func (v *UserFields) GetId() string { return v.Id }
// GetLuckyNumber returns UserFields.LuckyNumber, and is useful for accessing the field via an interface.
func (v *UserFields) GetLuckyNumber() int { return v.LuckyFieldsUser.LuckyNumber }
// GetHair returns UserFields.Hair, and is useful for accessing the field via an interface.
func (v *UserFields) GetHair() MoreUserFieldsHair { return v.MoreUserFields.Hair }
func (v *UserFields) UnmarshalJSON(b []byte) error {
if string(b) == "null" {
return nil
}
var firstPass struct {
*UserFields
graphql.NoUnmarshalJSON
}
firstPass.UserFields = v
err := json.Unmarshal(b, &firstPass)
if err != nil {
return err
}
err = json.Unmarshal(
b, &v.LuckyFieldsUser)
if err != nil {
return err
}
err = json.Unmarshal(
b, &v.MoreUserFields)
if err != nil {
return err
}
return nil
}
type __premarshalUserFields struct {
Id string `json:"id"`
LuckyNumber int `json:"luckyNumber"`
Hair MoreUserFieldsHair `json:"hair"`
}
func (v *UserFields) MarshalJSON() ([]byte, error) {
premarshaled, err := v.__premarshalJSON()
if err != nil {
return nil, err
}
return json.Marshal(premarshaled)
}
func (v *UserFields) __premarshalJSON() (*__premarshalUserFields, error) {
var retval __premarshalUserFields
retval.Id = v.Id
retval.LuckyNumber = v.LuckyFieldsUser.LuckyNumber
retval.Hair = v.MoreUserFields.Hair
return &retval, nil
}
// __queryWithCustomMarshalInput is used internally by genqlient
type __queryWithCustomMarshalInput struct {
Date time.Time `json:"-"`
}
// GetDate returns __queryWithCustomMarshalInput.Date, and is useful for accessing the field via an interface.
func (v *__queryWithCustomMarshalInput) GetDate() time.Time { return v.Date }
func (v *__queryWithCustomMarshalInput) UnmarshalJSON(b []byte) error {
if string(b) == "null" {
return nil
}
var firstPass struct {
*__queryWithCustomMarshalInput
Date json.RawMessage `json:"date"`
graphql.NoUnmarshalJSON
}
firstPass.__queryWithCustomMarshalInput = v
err := json.Unmarshal(b, &firstPass)
if err != nil {
return err
}
{
dst := &v.Date
src := firstPass.Date
if len(src) != 0 && string(src) != "null" {
err = testutil.UnmarshalDate(
src, dst)
if err != nil {
return fmt.Errorf(
"Unable to unmarshal __queryWithCustomMarshalInput.Date: %w", err)
}
}
}
return nil
}
type __premarshal__queryWithCustomMarshalInput struct {
Date json.RawMessage `json:"date"`
}
func (v *__queryWithCustomMarshalInput) MarshalJSON() ([]byte, error) {
premarshaled, err := v.__premarshalJSON()
if err != nil {
return nil, err
}
return json.Marshal(premarshaled)
}
func (v *__queryWithCustomMarshalInput) __premarshalJSON() (*__premarshal__queryWithCustomMarshalInput, error) {
var retval __premarshal__queryWithCustomMarshalInput
{
dst := &retval.Date
src := v.Date
var err error
*dst, err = testutil.MarshalDate(
&src)
if err != nil {
return nil, fmt.Errorf(
"Unable to marshal __queryWithCustomMarshalInput.Date: %w", err)
}
}
return &retval, nil
}
// __queryWithCustomMarshalOptionalInput is used internally by genqlient
type __queryWithCustomMarshalOptionalInput struct {
Date *time.Time `json:"-"`
Id *string `json:"id"`
}
// GetDate returns __queryWithCustomMarshalOptionalInput.Date, and is useful for accessing the field via an interface.
func (v *__queryWithCustomMarshalOptionalInput) GetDate() *time.Time { return v.Date }
// GetId returns __queryWithCustomMarshalOptionalInput.Id, and is useful for accessing the field via an interface.
func (v *__queryWithCustomMarshalOptionalInput) GetId() *string { return v.Id }
func (v *__queryWithCustomMarshalOptionalInput) UnmarshalJSON(b []byte) error {
if string(b) == "null" {
return nil
}
var firstPass struct {
*__queryWithCustomMarshalOptionalInput
Date json.RawMessage `json:"date"`
graphql.NoUnmarshalJSON
}
firstPass.__queryWithCustomMarshalOptionalInput = v
err := json.Unmarshal(b, &firstPass)
if err != nil {
return err
}
{
dst := &v.Date
src := firstPass.Date
if len(src) != 0 && string(src) != "null" {
*dst = new(time.Time)
err = testutil.UnmarshalDate(
src, *dst)
if err != nil {
return fmt.Errorf(
"Unable to unmarshal __queryWithCustomMarshalOptionalInput.Date: %w", err)
}
}
}
return nil
}
type __premarshal__queryWithCustomMarshalOptionalInput struct {
Date json.RawMessage `json:"date"`
Id *string `json:"id"`
}
func (v *__queryWithCustomMarshalOptionalInput) MarshalJSON() ([]byte, error) {
premarshaled, err := v.__premarshalJSON()
if err != nil {
return nil, err
}
return json.Marshal(premarshaled)
}
func (v *__queryWithCustomMarshalOptionalInput) __premarshalJSON() (*__premarshal__queryWithCustomMarshalOptionalInput, error) {
var retval __premarshal__queryWithCustomMarshalOptionalInput
{
dst := &retval.Date
src := v.Date
if src != nil {
var err error
*dst, err = testutil.MarshalDate(
src)
if err != nil {
return nil, fmt.Errorf(
"Unable to marshal __queryWithCustomMarshalOptionalInput.Date: %w", err)
}
}
}
retval.Id = v.Id
return &retval, nil
}
// __queryWithCustomMarshalSliceInput is used internally by genqlient
type __queryWithCustomMarshalSliceInput struct {
Dates []time.Time `json:"-"`
}
// GetDates returns __queryWithCustomMarshalSliceInput.Dates, and is useful for accessing the field via an interface.
func (v *__queryWithCustomMarshalSliceInput) GetDates() []time.Time { return v.Dates }
func (v *__queryWithCustomMarshalSliceInput) UnmarshalJSON(b []byte) error {
if string(b) == "null" {
return nil
}
var firstPass struct {
*__queryWithCustomMarshalSliceInput
Dates []json.RawMessage `json:"dates"`
graphql.NoUnmarshalJSON
}
firstPass.__queryWithCustomMarshalSliceInput = v
err := json.Unmarshal(b, &firstPass)
if err != nil {
return err
}
{
dst := &v.Dates
src := firstPass.Dates
*dst = make(
[]time.Time,
len(src))
for i, src := range src {
dst := &(*dst)[i]
if len(src) != 0 && string(src) != "null" {
err = testutil.UnmarshalDate(
src, dst)
if err != nil {
return fmt.Errorf(
"Unable to unmarshal __queryWithCustomMarshalSliceInput.Dates: %w", err)
}
}
}
}
return nil
}
type __premarshal__queryWithCustomMarshalSliceInput struct {
Dates []json.RawMessage `json:"dates"`
}
func (v *__queryWithCustomMarshalSliceInput) MarshalJSON() ([]byte, error) {
premarshaled, err := v.__premarshalJSON()
if err != nil {
return nil, err
}
return json.Marshal(premarshaled)
}
func (v *__queryWithCustomMarshalSliceInput) __premarshalJSON() (*__premarshal__queryWithCustomMarshalSliceInput, error) {
var retval __premarshal__queryWithCustomMarshalSliceInput
{
dst := &retval.Dates
src := v.Dates
*dst = make(
[]json.RawMessage,
len(src))
for i, src := range src {
dst := &(*dst)[i]
var err error
*dst, err = testutil.MarshalDate(
&src)
if err != nil {
return nil, fmt.Errorf(
"Unable to marshal __queryWithCustomMarshalSliceInput.Dates: %w", err)
}
}
}
return &retval, nil
}
// __queryWithFlattenInput is used internally by genqlient
type __queryWithFlattenInput struct {
Ids []string `json:"ids"`
}
// GetIds returns __queryWithFlattenInput.Ids, and is useful for accessing the field via an interface.
func (v *__queryWithFlattenInput) GetIds() []string { return v.Ids }
// __queryWithFragmentsInput is used internally by genqlient
type __queryWithFragmentsInput struct {
Ids []string `json:"ids"`
}
// GetIds returns __queryWithFragmentsInput.Ids, and is useful for accessing the field via an interface.
func (v *__queryWithFragmentsInput) GetIds() []string { return v.Ids }
// __queryWithInterfaceListFieldInput is used internally by genqlient
type __queryWithInterfaceListFieldInput struct {
Ids []string `json:"ids"`
}
// GetIds returns __queryWithInterfaceListFieldInput.Ids, and is useful for accessing the field via an interface.
func (v *__queryWithInterfaceListFieldInput) GetIds() []string { return v.Ids }
// __queryWithInterfaceListPointerFieldInput is used internally by genqlient
type __queryWithInterfaceListPointerFieldInput struct {
Ids []string `json:"ids"`
}
// GetIds returns __queryWithInterfaceListPointerFieldInput.Ids, and is useful for accessing the field via an interface.
func (v *__queryWithInterfaceListPointerFieldInput) GetIds() []string { return v.Ids }
// __queryWithInterfaceNoFragmentsInput is used internally by genqlient
type __queryWithInterfaceNoFragmentsInput struct {
Id string `json:"id"`
}
// GetId returns __queryWithInterfaceNoFragmentsInput.Id, and is useful for accessing the field via an interface.
func (v *__queryWithInterfaceNoFragmentsInput) GetId() string { return v.Id }
// __queryWithNamedFragmentsInput is used internally by genqlient
type __queryWithNamedFragmentsInput struct {
Ids []string `json:"ids"`
}
// GetIds returns __queryWithNamedFragmentsInput.Ids, and is useful for accessing the field via an interface.
func (v *__queryWithNamedFragmentsInput) GetIds() []string { return v.Ids }
// __queryWithOmitemptyInput is used internally by genqlient
type __queryWithOmitemptyInput struct {
Id string `json:"id,omitempty"`
}
// GetId returns __queryWithOmitemptyInput.Id, and is useful for accessing the field via an interface.
func (v *__queryWithOmitemptyInput) GetId() string { return v.Id }
// __queryWithVariablesInput is used internally by genqlient
type __queryWithVariablesInput struct {
Id string `json:"id"`
}
// GetId returns __queryWithVariablesInput.Id, and is useful for accessing the field via an interface.
func (v *__queryWithVariablesInput) GetId() string { return v.Id }
// failingQueryMeUser includes the requested fields of the GraphQL type User.
type failingQueryMeUser struct {
Id string `json:"id"`
}
// GetId returns failingQueryMeUser.Id, and is useful for accessing the field via an interface.
func (v *failingQueryMeUser) GetId() string { return v.Id }
// failingQueryResponse is returned by failingQuery on success.
type failingQueryResponse struct {
Fail bool `json:"fail"`
Me failingQueryMeUser `json:"me"`
}
// GetFail returns failingQueryResponse.Fail, and is useful for accessing the field via an interface.
func (v *failingQueryResponse) GetFail() bool { return v.Fail }
// GetMe returns failingQueryResponse.Me, and is useful for accessing the field via an interface.
func (v *failingQueryResponse) GetMe() failingQueryMeUser { return v.Me }
// queryWithCustomMarshalOptionalResponse is returned by queryWithCustomMarshalOptional on success.
type queryWithCustomMarshalOptionalResponse struct {
UserSearch []queryWithCustomMarshalOptionalUserSearchUser `json:"userSearch"`
}
// GetUserSearch returns queryWithCustomMarshalOptionalResponse.UserSearch, and is useful for accessing the field via an interface.
func (v *queryWithCustomMarshalOptionalResponse) GetUserSearch() []queryWithCustomMarshalOptionalUserSearchUser {
return v.UserSearch
}
// queryWithCustomMarshalOptionalUserSearchUser includes the requested fields of the GraphQL type User.
type queryWithCustomMarshalOptionalUserSearchUser struct {
Id string `json:"id"`
Name string `json:"name"`
Birthdate time.Time `json:"-"`
}
// GetId returns queryWithCustomMarshalOptionalUserSearchUser.Id, and is useful for accessing the field via an interface.
func (v *queryWithCustomMarshalOptionalUserSearchUser) GetId() string { return v.Id }
// GetName returns queryWithCustomMarshalOptionalUserSearchUser.Name, and is useful for accessing the field via an interface.
func (v *queryWithCustomMarshalOptionalUserSearchUser) GetName() string { return v.Name }
// GetBirthdate returns queryWithCustomMarshalOptionalUserSearchUser.Birthdate, and is useful for accessing the field via an interface.
func (v *queryWithCustomMarshalOptionalUserSearchUser) GetBirthdate() time.Time { return v.Birthdate }
func (v *queryWithCustomMarshalOptionalUserSearchUser) UnmarshalJSON(b []byte) error {
if string(b) == "null" {
return nil
}
var firstPass struct {
*queryWithCustomMarshalOptionalUserSearchUser
Birthdate json.RawMessage `json:"birthdate"`
graphql.NoUnmarshalJSON
}
firstPass.queryWithCustomMarshalOptionalUserSearchUser = v
err := json.Unmarshal(b, &firstPass)
if err != nil {
return err
}
{
dst := &v.Birthdate
src := firstPass.Birthdate
if len(src) != 0 && string(src) != "null" {
err = testutil.UnmarshalDate(
src, dst)
if err != nil {
return fmt.Errorf(
"Unable to unmarshal queryWithCustomMarshalOptionalUserSearchUser.Birthdate: %w", err)
}
}
}
return nil
}
type __premarshalqueryWithCustomMarshalOptionalUserSearchUser struct {
Id string `json:"id"`
Name string `json:"name"`
Birthdate json.RawMessage `json:"birthdate"`
}
func (v *queryWithCustomMarshalOptionalUserSearchUser) MarshalJSON() ([]byte, error) {
premarshaled, err := v.__premarshalJSON()
if err != nil {
return nil, err
}
return json.Marshal(premarshaled)
}
func (v *queryWithCustomMarshalOptionalUserSearchUser) __premarshalJSON() (*__premarshalqueryWithCustomMarshalOptionalUserSearchUser, error) {
var retval __premarshalqueryWithCustomMarshalOptionalUserSearchUser
retval.Id = v.Id
retval.Name = v.Name
{
dst := &retval.Birthdate
src := v.Birthdate
var err error
*dst, err = testutil.MarshalDate(
&src)
if err != nil {
return nil, fmt.Errorf(
"Unable to marshal queryWithCustomMarshalOptionalUserSearchUser.Birthdate: %w", err)
}
}
return &retval, nil
}
// queryWithCustomMarshalResponse is returned by queryWithCustomMarshal on success.
type queryWithCustomMarshalResponse struct {
UsersBornOn []queryWithCustomMarshalUsersBornOnUser `json:"usersBornOn"`
}
// GetUsersBornOn returns queryWithCustomMarshalResponse.UsersBornOn, and is useful for accessing the field via an interface.
func (v *queryWithCustomMarshalResponse) GetUsersBornOn() []queryWithCustomMarshalUsersBornOnUser {
return v.UsersBornOn
}
// queryWithCustomMarshalSliceResponse is returned by queryWithCustomMarshalSlice on success.
type queryWithCustomMarshalSliceResponse struct {
UsersBornOnDates []queryWithCustomMarshalSliceUsersBornOnDatesUser `json:"usersBornOnDates"`
}
// GetUsersBornOnDates returns queryWithCustomMarshalSliceResponse.UsersBornOnDates, and is useful for accessing the field via an interface.
func (v *queryWithCustomMarshalSliceResponse) GetUsersBornOnDates() []queryWithCustomMarshalSliceUsersBornOnDatesUser {
return v.UsersBornOnDates
}
// queryWithCustomMarshalSliceUsersBornOnDatesUser includes the requested fields of the GraphQL type User.
type queryWithCustomMarshalSliceUsersBornOnDatesUser struct {
Id string `json:"id"`
Name string `json:"name"`
Birthdate time.Time `json:"-"`
}
// GetId returns queryWithCustomMarshalSliceUsersBornOnDatesUser.Id, and is useful for accessing the field via an interface.
func (v *queryWithCustomMarshalSliceUsersBornOnDatesUser) GetId() string { return v.Id }
// GetName returns queryWithCustomMarshalSliceUsersBornOnDatesUser.Name, and is useful for accessing the field via an interface.
func (v *queryWithCustomMarshalSliceUsersBornOnDatesUser) GetName() string { return v.Name }
// GetBirthdate returns queryWithCustomMarshalSliceUsersBornOnDatesUser.Birthdate, and is useful for accessing the field via an interface.
func (v *queryWithCustomMarshalSliceUsersBornOnDatesUser) GetBirthdate() time.Time {
return v.Birthdate
}
func (v *queryWithCustomMarshalSliceUsersBornOnDatesUser) UnmarshalJSON(b []byte) error {
if string(b) == "null" {
return nil
}
var firstPass struct {
*queryWithCustomMarshalSliceUsersBornOnDatesUser
Birthdate json.RawMessage `json:"birthdate"`
graphql.NoUnmarshalJSON
}
firstPass.queryWithCustomMarshalSliceUsersBornOnDatesUser = v
err := json.Unmarshal(b, &firstPass)
if err != nil {
return err
}
{
dst := &v.Birthdate
src := firstPass.Birthdate
if len(src) != 0 && string(src) != "null" {
err = testutil.UnmarshalDate(
src, dst)
if err != nil {
return fmt.Errorf(
"Unable to unmarshal queryWithCustomMarshalSliceUsersBornOnDatesUser.Birthdate: %w", err)
}
}
}
return nil
}
type __premarshalqueryWithCustomMarshalSliceUsersBornOnDatesUser struct {
Id string `json:"id"`
Name string `json:"name"`
Birthdate json.RawMessage `json:"birthdate"`
}
func (v *queryWithCustomMarshalSliceUsersBornOnDatesUser) MarshalJSON() ([]byte, error) {
premarshaled, err := v.__premarshalJSON()
if err != nil {
return nil, err
}
return json.Marshal(premarshaled)
}
func (v *queryWithCustomMarshalSliceUsersBornOnDatesUser) __premarshalJSON() (*__premarshalqueryWithCustomMarshalSliceUsersBornOnDatesUser, error) {
var retval __premarshalqueryWithCustomMarshalSliceUsersBornOnDatesUser
retval.Id = v.Id
retval.Name = v.Name
{
dst := &retval.Birthdate
src := v.Birthdate
var err error
*dst, err = testutil.MarshalDate(
&src)
if err != nil {
return nil, fmt.Errorf(
"Unable to marshal queryWithCustomMarshalSliceUsersBornOnDatesUser.Birthdate: %w", err)
}
}
return &retval, nil
}
// queryWithCustomMarshalUsersBornOnUser includes the requested fields of the GraphQL type User.
type queryWithCustomMarshalUsersBornOnUser struct {
Id string `json:"id"`
Name string `json:"name"`
Birthdate time.Time `json:"-"`
}
// GetId returns queryWithCustomMarshalUsersBornOnUser.Id, and is useful for accessing the field via an interface.
func (v *queryWithCustomMarshalUsersBornOnUser) GetId() string { return v.Id }
// GetName returns queryWithCustomMarshalUsersBornOnUser.Name, and is useful for accessing the field via an interface.
func (v *queryWithCustomMarshalUsersBornOnUser) GetName() string { return v.Name }
// GetBirthdate returns queryWithCustomMarshalUsersBornOnUser.Birthdate, and is useful for accessing the field via an interface.
func (v *queryWithCustomMarshalUsersBornOnUser) GetBirthdate() time.Time { return v.Birthdate }
func (v *queryWithCustomMarshalUsersBornOnUser) UnmarshalJSON(b []byte) error {
if string(b) == "null" {
return nil
}
var firstPass struct {
*queryWithCustomMarshalUsersBornOnUser
Birthdate json.RawMessage `json:"birthdate"`
graphql.NoUnmarshalJSON
}
firstPass.queryWithCustomMarshalUsersBornOnUser = v
err := json.Unmarshal(b, &firstPass)
if err != nil {
return err
}
{
dst := &v.Birthdate
src := firstPass.Birthdate
if len(src) != 0 && string(src) != "null" {
err = testutil.UnmarshalDate(
src, dst)
if err != nil {
return fmt.Errorf(
"Unable to unmarshal queryWithCustomMarshalUsersBornOnUser.Birthdate: %w", err)
}
}
}
return nil
}
type __premarshalqueryWithCustomMarshalUsersBornOnUser struct {
Id string `json:"id"`
Name string `json:"name"`
Birthdate json.RawMessage `json:"birthdate"`
}
func (v *queryWithCustomMarshalUsersBornOnUser) MarshalJSON() ([]byte, error) {
premarshaled, err := v.__premarshalJSON()
if err != nil {
return nil, err
}
return json.Marshal(premarshaled)
}
func (v *queryWithCustomMarshalUsersBornOnUser) __premarshalJSON() (*__premarshalqueryWithCustomMarshalUsersBornOnUser, error) {
var retval __premarshalqueryWithCustomMarshalUsersBornOnUser
retval.Id = v.Id
retval.Name = v.Name
{
dst := &retval.Birthdate
src := v.Birthdate
var err error
*dst, err = testutil.MarshalDate(
&src)
if err != nil {
return nil, fmt.Errorf(
"Unable to marshal queryWithCustomMarshalUsersBornOnUser.Birthdate: %w", err)
}
}
return &retval, nil
}
// queryWithFragmentsBeingsAnimal includes the requested fields of the GraphQL type Animal.
type queryWithFragmentsBeingsAnimal struct {
Typename string `json:"__typename"`
Id string `json:"id"`
Name string `json:"name"`
Hair queryWithFragmentsBeingsAnimalHairBeingsHair `json:"hair"`
Species Species `json:"species"`
Owner queryWithFragmentsBeingsAnimalOwnerBeing `json:"-"`
}
// GetTypename returns queryWithFragmentsBeingsAnimal.Typename, and is useful for accessing the field via an interface.
func (v *queryWithFragmentsBeingsAnimal) GetTypename() string { return v.Typename }
// GetId returns queryWithFragmentsBeingsAnimal.Id, and is useful for accessing the field via an interface.
func (v *queryWithFragmentsBeingsAnimal) GetId() string { return v.Id }
// GetName returns queryWithFragmentsBeingsAnimal.Name, and is useful for accessing the field via an interface.
func (v *queryWithFragmentsBeingsAnimal) GetName() string { return v.Name }
// GetHair returns queryWithFragmentsBeingsAnimal.Hair, and is useful for accessing the field via an interface.
func (v *queryWithFragmentsBeingsAnimal) GetHair() queryWithFragmentsBeingsAnimalHairBeingsHair {
return v.Hair
}
// GetSpecies returns queryWithFragmentsBeingsAnimal.Species, and is useful for accessing the field via an interface.
func (v *queryWithFragmentsBeingsAnimal) GetSpecies() Species { return v.Species }
// GetOwner returns queryWithFragmentsBeingsAnimal.Owner, and is useful for accessing the field via an interface.
func (v *queryWithFragmentsBeingsAnimal) GetOwner() queryWithFragmentsBeingsAnimalOwnerBeing {
return v.Owner
}
func (v *queryWithFragmentsBeingsAnimal) UnmarshalJSON(b []byte) error {
if string(b) == "null" {
return nil
}
var firstPass struct {
*queryWithFragmentsBeingsAnimal
Owner json.RawMessage `json:"owner"`
graphql.NoUnmarshalJSON
}
firstPass.queryWithFragmentsBeingsAnimal = v
err := json.Unmarshal(b, &firstPass)
if err != nil {
return err
}
{
dst := &v.Owner
src := firstPass.Owner
if len(src) != 0 && string(src) != "null" {
err = __unmarshalqueryWithFragmentsBeingsAnimalOwnerBeing(
src, dst)
if err != nil {
return fmt.Errorf(
"Unable to unmarshal queryWithFragmentsBeingsAnimal.Owner: %w", err)
}
}
}
return nil
}
type __premarshalqueryWithFragmentsBeingsAnimal struct {
Typename string `json:"__typename"`
Id string `json:"id"`
Name string `json:"name"`
Hair queryWithFragmentsBeingsAnimalHairBeingsHair `json:"hair"`
Species Species `json:"species"`
Owner json.RawMessage `json:"owner"`
}
func (v *queryWithFragmentsBeingsAnimal) MarshalJSON() ([]byte, error) {
premarshaled, err := v.__premarshalJSON()
if err != nil {
return nil, err
}
return json.Marshal(premarshaled)
}
func (v *queryWithFragmentsBeingsAnimal) __premarshalJSON() (*__premarshalqueryWithFragmentsBeingsAnimal, error) {
var retval __premarshalqueryWithFragmentsBeingsAnimal
retval.Typename = v.Typename
retval.Id = v.Id
retval.Name = v.Name
retval.Hair = v.Hair
retval.Species = v.Species
{
dst := &retval.Owner
src := v.Owner
var err error
*dst, err = __marshalqueryWithFragmentsBeingsAnimalOwnerBeing(
&src)
if err != nil {
return nil, fmt.Errorf(
"Unable to marshal queryWithFragmentsBeingsAnimal.Owner: %w", err)
}
}
return &retval, nil
}
// queryWithFragmentsBeingsAnimalHairBeingsHair includes the requested fields of the GraphQL type BeingsHair.
type queryWithFragmentsBeingsAnimalHairBeingsHair struct {
HasHair bool `json:"hasHair"`
}
// GetHasHair returns queryWithFragmentsBeingsAnimalHairBeingsHair.HasHair, and is useful for accessing the field via an interface.
func (v *queryWithFragmentsBeingsAnimalHairBeingsHair) GetHasHair() bool { return v.HasHair }
// queryWithFragmentsBeingsAnimalOwnerAnimal includes the requested fields of the GraphQL type Animal.
type queryWithFragmentsBeingsAnimalOwnerAnimal struct {
Typename string `json:"__typename"`
Id string `json:"id"`
Name string `json:"name"`
}
// GetTypename returns queryWithFragmentsBeingsAnimalOwnerAnimal.Typename, and is useful for accessing the field via an interface.
func (v *queryWithFragmentsBeingsAnimalOwnerAnimal) GetTypename() string { return v.Typename }
// GetId returns queryWithFragmentsBeingsAnimalOwnerAnimal.Id, and is useful for accessing the field via an interface.
func (v *queryWithFragmentsBeingsAnimalOwnerAnimal) GetId() string { return v.Id }
// GetName returns queryWithFragmentsBeingsAnimalOwnerAnimal.Name, and is useful for accessing the field via an interface.
func (v *queryWithFragmentsBeingsAnimalOwnerAnimal) GetName() string { return v.Name }
// queryWithFragmentsBeingsAnimalOwnerBeing includes the requested fields of the GraphQL interface Being.
//
// queryWithFragmentsBeingsAnimalOwnerBeing is implemented by the following types:
// queryWithFragmentsBeingsAnimalOwnerUser
// queryWithFragmentsBeingsAnimalOwnerAnimal
type queryWithFragmentsBeingsAnimalOwnerBeing interface {
implementsGraphQLInterfacequeryWithFragmentsBeingsAnimalOwnerBeing()
// GetTypename returns the receiver's concrete GraphQL type-name (see interface doc for possible values).
GetTypename() string
// GetId returns the interface-field "id" from its implementation.
GetId() string
// GetName returns the interface-field "name" from its implementation.
GetName() string
}
func (v *queryWithFragmentsBeingsAnimalOwnerUser) implementsGraphQLInterfacequeryWithFragmentsBeingsAnimalOwnerBeing() {
}
func (v *queryWithFragmentsBeingsAnimalOwnerAnimal) implementsGraphQLInterfacequeryWithFragmentsBeingsAnimalOwnerBeing() {
}
func __unmarshalqueryWithFragmentsBeingsAnimalOwnerBeing(b []byte, v *queryWithFragmentsBeingsAnimalOwnerBeing) error {
if string(b) == "null" {
return nil
}
var tn struct {
TypeName string `json:"__typename"`
}
err := json.Unmarshal(b, &tn)
if err != nil {
return err
}
switch tn.TypeName {
case "User":
*v = new(queryWithFragmentsBeingsAnimalOwnerUser)
return json.Unmarshal(b, *v)
case "Animal":
*v = new(queryWithFragmentsBeingsAnimalOwnerAnimal)
return json.Unmarshal(b, *v)
case "":
return fmt.Errorf(
"response was missing Being.__typename")
default:
return fmt.Errorf(
`unexpected concrete type for queryWithFragmentsBeingsAnimalOwnerBeing: "%v"`, tn.TypeName)
}
}
func __marshalqueryWithFragmentsBeingsAnimalOwnerBeing(v *queryWithFragmentsBeingsAnimalOwnerBeing) ([]byte, error) {
var typename string
switch v := (*v).(type) {
case *queryWithFragmentsBeingsAnimalOwnerUser:
typename = "User"
result := struct {
TypeName string `json:"__typename"`
*queryWithFragmentsBeingsAnimalOwnerUser
}{typename, v}
return json.Marshal(result)
case *queryWithFragmentsBeingsAnimalOwnerAnimal:
typename = "Animal"
result := struct {
TypeName string `json:"__typename"`
*queryWithFragmentsBeingsAnimalOwnerAnimal
}{typename, v}
return json.Marshal(result)
case nil:
return []byte("null"), nil
default:
return nil, fmt.Errorf(
`unexpected concrete type for queryWithFragmentsBeingsAnimalOwnerBeing: "%T"`, v)
}
}
// queryWithFragmentsBeingsAnimalOwnerUser includes the requested fields of the GraphQL type User.
type queryWithFragmentsBeingsAnimalOwnerUser struct {
Typename string `json:"__typename"`
Id string `json:"id"`
Name string `json:"name"`
LuckyNumber int `json:"luckyNumber"`
}
// GetTypename returns queryWithFragmentsBeingsAnimalOwnerUser.Typename, and is useful for accessing the field via an interface.
func (v *queryWithFragmentsBeingsAnimalOwnerUser) GetTypename() string { return v.Typename }
// GetId returns queryWithFragmentsBeingsAnimalOwnerUser.Id, and is useful for accessing the field via an interface.
func (v *queryWithFragmentsBeingsAnimalOwnerUser) GetId() string { return v.Id }
// GetName returns queryWithFragmentsBeingsAnimalOwnerUser.Name, and is useful for accessing the field via an interface.
func (v *queryWithFragmentsBeingsAnimalOwnerUser) GetName() string { return v.Name }
// GetLuckyNumber returns queryWithFragmentsBeingsAnimalOwnerUser.LuckyNumber, and is useful for accessing the field via an interface.
func (v *queryWithFragmentsBeingsAnimalOwnerUser) GetLuckyNumber() int { return v.LuckyNumber }
// queryWithFragmentsBeingsBeing includes the requested fields of the GraphQL interface Being.
//
// queryWithFragmentsBeingsBeing is implemented by the following types:
// queryWithFragmentsBeingsUser
// queryWithFragmentsBeingsAnimal
type queryWithFragmentsBeingsBeing interface {
implementsGraphQLInterfacequeryWithFragmentsBeingsBeing()
// GetTypename returns the receiver's concrete GraphQL type-name (see interface doc for possible values).
GetTypename() string
// GetId returns the interface-field "id" from its implementation.
GetId() string
// GetName returns the interface-field "name" from its implementation.
GetName() string
}
func (v *queryWithFragmentsBeingsUser) implementsGraphQLInterfacequeryWithFragmentsBeingsBeing() {}
func (v *queryWithFragmentsBeingsAnimal) implementsGraphQLInterfacequeryWithFragmentsBeingsBeing() {}
func __unmarshalqueryWithFragmentsBeingsBeing(b []byte, v *queryWithFragmentsBeingsBeing) error {
if string(b) == "null" {
return nil
}
var tn struct {
TypeName string `json:"__typename"`
}
err := json.Unmarshal(b, &tn)
if err != nil {
return err
}
switch tn.TypeName {
case "User":
*v = new(queryWithFragmentsBeingsUser)
return json.Unmarshal(b, *v)
case "Animal":
*v = new(queryWithFragmentsBeingsAnimal)
return json.Unmarshal(b, *v)
case "":
return fmt.Errorf(
"response was missing Being.__typename")
default:
return fmt.Errorf(
`unexpected concrete type for queryWithFragmentsBeingsBeing: "%v"`, tn.TypeName)
}
}
func __marshalqueryWithFragmentsBeingsBeing(v *queryWithFragmentsBeingsBeing) ([]byte, error) {
var typename string
switch v := (*v).(type) {
case *queryWithFragmentsBeingsUser:
typename = "User"
result := struct {
TypeName string `json:"__typename"`
*queryWithFragmentsBeingsUser
}{typename, v}
return json.Marshal(result)
case *queryWithFragmentsBeingsAnimal:
typename = "Animal"
premarshaled, err := v.__premarshalJSON()
if err != nil {
return nil, err
}
result := struct {
TypeName string `json:"__typename"`
*__premarshalqueryWithFragmentsBeingsAnimal
}{typename, premarshaled}
return json.Marshal(result)
case nil:
return []byte("null"), nil
default:
return nil, fmt.Errorf(
`unexpected concrete type for queryWithFragmentsBeingsBeing: "%T"`, v)
}
}
// queryWithFragmentsBeingsUser includes the requested fields of the GraphQL type User.
type queryWithFragmentsBeingsUser struct {
Typename string `json:"__typename"`
Id string `json:"id"`
Name string `json:"name"`
LuckyNumber int `json:"luckyNumber"`
Hair queryWithFragmentsBeingsUserHair `json:"hair"`
}
// GetTypename returns queryWithFragmentsBeingsUser.Typename, and is useful for accessing the field via an interface.
func (v *queryWithFragmentsBeingsUser) GetTypename() string { return v.Typename }
// GetId returns queryWithFragmentsBeingsUser.Id, and is useful for accessing the field via an interface.
func (v *queryWithFragmentsBeingsUser) GetId() string { return v.Id }
// GetName returns queryWithFragmentsBeingsUser.Name, and is useful for accessing the field via an interface.
func (v *queryWithFragmentsBeingsUser) GetName() string { return v.Name }
// GetLuckyNumber returns queryWithFragmentsBeingsUser.LuckyNumber, and is useful for accessing the field via an interface.
func (v *queryWithFragmentsBeingsUser) GetLuckyNumber() int { return v.LuckyNumber }
// GetHair returns queryWithFragmentsBeingsUser.Hair, and is useful for accessing the field via an interface.
func (v *queryWithFragmentsBeingsUser) GetHair() queryWithFragmentsBeingsUserHair { return v.Hair }
// queryWithFragmentsBeingsUserHair includes the requested fields of the GraphQL type Hair.
type queryWithFragmentsBeingsUserHair struct {
Color string `json:"color"`
}
// GetColor returns queryWithFragmentsBeingsUserHair.Color, and is useful for accessing the field via an interface.
func (v *queryWithFragmentsBeingsUserHair) GetColor() string { return v.Color }
// queryWithFragmentsResponse is returned by queryWithFragments on success.
type queryWithFragmentsResponse struct {
Beings []queryWithFragmentsBeingsBeing `json:"-"`
}
// GetBeings returns queryWithFragmentsResponse.Beings, and is useful for accessing the field via an interface.
func (v *queryWithFragmentsResponse) GetBeings() []queryWithFragmentsBeingsBeing { return v.Beings }
func (v *queryWithFragmentsResponse) UnmarshalJSON(b []byte) error {
if string(b) == "null" {
return nil
}
var firstPass struct {
*queryWithFragmentsResponse
Beings []json.RawMessage `json:"beings"`
graphql.NoUnmarshalJSON
}
firstPass.queryWithFragmentsResponse = v
err := json.Unmarshal(b, &firstPass)
if err != nil {
return err
}
{
dst := &v.Beings
src := firstPass.Beings
*dst = make(
[]queryWithFragmentsBeingsBeing,
len(src))
for i, src := range src {
dst := &(*dst)[i]
if len(src) != 0 && string(src) != "null" {
err = __unmarshalqueryWithFragmentsBeingsBeing(
src, dst)
if err != nil {
return fmt.Errorf(
"Unable to unmarshal queryWithFragmentsResponse.Beings: %w", err)
}
}
}
}
return nil
}
type __premarshalqueryWithFragmentsResponse struct {
Beings []json.RawMessage `json:"beings"`
}
func (v *queryWithFragmentsResponse) MarshalJSON() ([]byte, error) {
premarshaled, err := v.__premarshalJSON()
if err != nil {
return nil, err
}
return json.Marshal(premarshaled)
}
func (v *queryWithFragmentsResponse) __premarshalJSON() (*__premarshalqueryWithFragmentsResponse, error) {
var retval __premarshalqueryWithFragmentsResponse
{
dst := &retval.Beings
src := v.Beings
*dst = make(
[]json.RawMessage,
len(src))
for i, src := range src {
dst := &(*dst)[i]
var err error
*dst, err = __marshalqueryWithFragmentsBeingsBeing(
&src)
if err != nil {
return nil, fmt.Errorf(
"Unable to marshal queryWithFragmentsResponse.Beings: %w", err)
}
}
}
return &retval, nil
}
// queryWithInterfaceListFieldBeingsAnimal includes the requested fields of the GraphQL type Animal.
type queryWithInterfaceListFieldBeingsAnimal struct {
Typename string `json:"__typename"`
Id string `json:"id"`
Name string `json:"name"`
}
// GetTypename returns queryWithInterfaceListFieldBeingsAnimal.Typename, and is useful for accessing the field via an interface.
func (v *queryWithInterfaceListFieldBeingsAnimal) GetTypename() string { return v.Typename }
// GetId returns queryWithInterfaceListFieldBeingsAnimal.Id, and is useful for accessing the field via an interface.
func (v *queryWithInterfaceListFieldBeingsAnimal) GetId() string { return v.Id }
// GetName returns queryWithInterfaceListFieldBeingsAnimal.Name, and is useful for accessing the field via an interface.
func (v *queryWithInterfaceListFieldBeingsAnimal) GetName() string { return v.Name }
// queryWithInterfaceListFieldBeingsBeing includes the requested fields of the GraphQL interface Being.
//
// queryWithInterfaceListFieldBeingsBeing is implemented by the following types:
// queryWithInterfaceListFieldBeingsUser
// queryWithInterfaceListFieldBeingsAnimal
type queryWithInterfaceListFieldBeingsBeing interface {
implementsGraphQLInterfacequeryWithInterfaceListFieldBeingsBeing()
// GetTypename returns the receiver's concrete GraphQL type-name (see interface doc for possible values).
GetTypename() string
// GetId returns the interface-field "id" from its implementation.
GetId() string
// GetName returns the interface-field "name" from its implementation.
GetName() string
}
func (v *queryWithInterfaceListFieldBeingsUser) implementsGraphQLInterfacequeryWithInterfaceListFieldBeingsBeing() {
}
func (v *queryWithInterfaceListFieldBeingsAnimal) implementsGraphQLInterfacequeryWithInterfaceListFieldBeingsBeing() {
}
func __unmarshalqueryWithInterfaceListFieldBeingsBeing(b []byte, v *queryWithInterfaceListFieldBeingsBeing) error {
if string(b) == "null" {
return nil
}
var tn struct {
TypeName string `json:"__typename"`
}
err := json.Unmarshal(b, &tn)
if err != nil {
return err
}
switch tn.TypeName {
case "User":
*v = new(queryWithInterfaceListFieldBeingsUser)
return json.Unmarshal(b, *v)
case "Animal":
*v = new(queryWithInterfaceListFieldBeingsAnimal)
return json.Unmarshal(b, *v)
case "":
return fmt.Errorf(
"response was missing Being.__typename")
default:
return fmt.Errorf(
`unexpected concrete type for queryWithInterfaceListFieldBeingsBeing: "%v"`, tn.TypeName)
}
}
func __marshalqueryWithInterfaceListFieldBeingsBeing(v *queryWithInterfaceListFieldBeingsBeing) ([]byte, error) {
var typename string
switch v := (*v).(type) {
case *queryWithInterfaceListFieldBeingsUser:
typename = "User"
result := struct {
TypeName string `json:"__typename"`
*queryWithInterfaceListFieldBeingsUser
}{typename, v}
return json.Marshal(result)
case *queryWithInterfaceListFieldBeingsAnimal:
typename = "Animal"
result := struct {
TypeName string `json:"__typename"`
*queryWithInterfaceListFieldBeingsAnimal
}{typename, v}
return json.Marshal(result)
case nil:
return []byte("null"), nil
default:
return nil, fmt.Errorf(
`unexpected concrete type for queryWithInterfaceListFieldBeingsBeing: "%T"`, v)
}
}
// queryWithInterfaceListFieldBeingsUser includes the requested fields of the GraphQL type User.
type queryWithInterfaceListFieldBeingsUser struct {
Typename string `json:"__typename"`
Id string `json:"id"`
Name string `json:"name"`
}
// GetTypename returns queryWithInterfaceListFieldBeingsUser.Typename, and is useful for accessing the field via an interface.
func (v *queryWithInterfaceListFieldBeingsUser) GetTypename() string { return v.Typename }
// GetId returns queryWithInterfaceListFieldBeingsUser.Id, and is useful for accessing the field via an interface.
func (v *queryWithInterfaceListFieldBeingsUser) GetId() string { return v.Id }
// GetName returns queryWithInterfaceListFieldBeingsUser.Name, and is useful for accessing the field via an interface.
func (v *queryWithInterfaceListFieldBeingsUser) GetName() string { return v.Name }
// queryWithInterfaceListFieldResponse is returned by queryWithInterfaceListField on success.
type queryWithInterfaceListFieldResponse struct {
Beings []queryWithInterfaceListFieldBeingsBeing `json:"-"`
}
// GetBeings returns queryWithInterfaceListFieldResponse.Beings, and is useful for accessing the field via an interface.
func (v *queryWithInterfaceListFieldResponse) GetBeings() []queryWithInterfaceListFieldBeingsBeing {
return v.Beings
}
func (v *queryWithInterfaceListFieldResponse) UnmarshalJSON(b []byte) error {
if string(b) == "null" {
return nil
}
var firstPass struct {
*queryWithInterfaceListFieldResponse
Beings []json.RawMessage `json:"beings"`
graphql.NoUnmarshalJSON
}
firstPass.queryWithInterfaceListFieldResponse = v
err := json.Unmarshal(b, &firstPass)
if err != nil {
return err
}
{
dst := &v.Beings
src := firstPass.Beings
*dst = make(
[]queryWithInterfaceListFieldBeingsBeing,
len(src))
for i, src := range src {
dst := &(*dst)[i]
if len(src) != 0 && string(src) != "null" {
err = __unmarshalqueryWithInterfaceListFieldBeingsBeing(
src, dst)
if err != nil {
return fmt.Errorf(
"Unable to unmarshal queryWithInterfaceListFieldResponse.Beings: %w", err)
}
}
}
}
return nil
}
type __premarshalqueryWithInterfaceListFieldResponse struct {
Beings []json.RawMessage `json:"beings"`
}
func (v *queryWithInterfaceListFieldResponse) MarshalJSON() ([]byte, error) {
premarshaled, err := v.__premarshalJSON()
if err != nil {
return nil, err
}
return json.Marshal(premarshaled)
}
func (v *queryWithInterfaceListFieldResponse) __premarshalJSON() (*__premarshalqueryWithInterfaceListFieldResponse, error) {
var retval __premarshalqueryWithInterfaceListFieldResponse
{
dst := &retval.Beings
src := v.Beings
*dst = make(
[]json.RawMessage,
len(src))
for i, src := range src {
dst := &(*dst)[i]
var err error
*dst, err = __marshalqueryWithInterfaceListFieldBeingsBeing(
&src)
if err != nil {
return nil, fmt.Errorf(
"Unable to marshal queryWithInterfaceListFieldResponse.Beings: %w", err)
}
}
}
return &retval, nil
}
// queryWithInterfaceListPointerFieldBeingsAnimal includes the requested fields of the GraphQL type Animal.
type queryWithInterfaceListPointerFieldBeingsAnimal struct {
Typename string `json:"__typename"`
Id string `json:"id"`
Name string `json:"name"`
}
// GetTypename returns queryWithInterfaceListPointerFieldBeingsAnimal.Typename, and is useful for accessing the field via an interface.
func (v *queryWithInterfaceListPointerFieldBeingsAnimal) GetTypename() string { return v.Typename }
// GetId returns queryWithInterfaceListPointerFieldBeingsAnimal.Id, and is useful for accessing the field via an interface.
func (v *queryWithInterfaceListPointerFieldBeingsAnimal) GetId() string { return v.Id }
// GetName returns queryWithInterfaceListPointerFieldBeingsAnimal.Name, and is useful for accessing the field via an interface.
func (v *queryWithInterfaceListPointerFieldBeingsAnimal) GetName() string { return v.Name }
// queryWithInterfaceListPointerFieldBeingsBeing includes the requested fields of the GraphQL interface Being.
//
// queryWithInterfaceListPointerFieldBeingsBeing is implemented by the following types:
// queryWithInterfaceListPointerFieldBeingsUser
// queryWithInterfaceListPointerFieldBeingsAnimal
type queryWithInterfaceListPointerFieldBeingsBeing interface {
implementsGraphQLInterfacequeryWithInterfaceListPointerFieldBeingsBeing()
// GetTypename returns the receiver's concrete GraphQL type-name (see interface doc for possible values).
GetTypename() string
// GetId returns the interface-field "id" from its implementation.
GetId() string
// GetName returns the interface-field "name" from its implementation.
GetName() string
}
func (v *queryWithInterfaceListPointerFieldBeingsUser) implementsGraphQLInterfacequeryWithInterfaceListPointerFieldBeingsBeing() {
}
func (v *queryWithInterfaceListPointerFieldBeingsAnimal) implementsGraphQLInterfacequeryWithInterfaceListPointerFieldBeingsBeing() {
}
func __unmarshalqueryWithInterfaceListPointerFieldBeingsBeing(b []byte, v *queryWithInterfaceListPointerFieldBeingsBeing) error {
if string(b) == "null" {
return nil
}
var tn struct {
TypeName string `json:"__typename"`
}
err := json.Unmarshal(b, &tn)
if err != nil {
return err
}
switch tn.TypeName {
case "User":
*v = new(queryWithInterfaceListPointerFieldBeingsUser)
return json.Unmarshal(b, *v)
case "Animal":
*v = new(queryWithInterfaceListPointerFieldBeingsAnimal)
return json.Unmarshal(b, *v)
case "":
return fmt.Errorf(
"response was missing Being.__typename")
default:
return fmt.Errorf(
`unexpected concrete type for queryWithInterfaceListPointerFieldBeingsBeing: "%v"`, tn.TypeName)
}
}
func __marshalqueryWithInterfaceListPointerFieldBeingsBeing(v *queryWithInterfaceListPointerFieldBeingsBeing) ([]byte, error) {
var typename string
switch v := (*v).(type) {
case *queryWithInterfaceListPointerFieldBeingsUser:
typename = "User"
result := struct {
TypeName string `json:"__typename"`
*queryWithInterfaceListPointerFieldBeingsUser
}{typename, v}
return json.Marshal(result)
case *queryWithInterfaceListPointerFieldBeingsAnimal:
typename = "Animal"
result := struct {
TypeName string `json:"__typename"`
*queryWithInterfaceListPointerFieldBeingsAnimal
}{typename, v}
return json.Marshal(result)
case nil:
return []byte("null"), nil
default:
return nil, fmt.Errorf(
`unexpected concrete type for queryWithInterfaceListPointerFieldBeingsBeing: "%T"`, v)
}
}
// queryWithInterfaceListPointerFieldBeingsUser includes the requested fields of the GraphQL type User.
type queryWithInterfaceListPointerFieldBeingsUser struct {
Typename string `json:"__typename"`
Id string `json:"id"`
Name string `json:"name"`
}
// GetTypename returns queryWithInterfaceListPointerFieldBeingsUser.Typename, and is useful for accessing the field via an interface.
func (v *queryWithInterfaceListPointerFieldBeingsUser) GetTypename() string { return v.Typename }
// GetId returns queryWithInterfaceListPointerFieldBeingsUser.Id, and is useful for accessing the field via an interface.
func (v *queryWithInterfaceListPointerFieldBeingsUser) GetId() string { return v.Id }
// GetName returns queryWithInterfaceListPointerFieldBeingsUser.Name, and is useful for accessing the field via an interface.
func (v *queryWithInterfaceListPointerFieldBeingsUser) GetName() string { return v.Name }
// queryWithInterfaceListPointerFieldResponse is returned by queryWithInterfaceListPointerField on success.
type queryWithInterfaceListPointerFieldResponse struct {
Beings []*queryWithInterfaceListPointerFieldBeingsBeing `json:"-"`
}
// GetBeings returns queryWithInterfaceListPointerFieldResponse.Beings, and is useful for accessing the field via an interface.
func (v *queryWithInterfaceListPointerFieldResponse) GetBeings() []*queryWithInterfaceListPointerFieldBeingsBeing {
return v.Beings
}
func (v *queryWithInterfaceListPointerFieldResponse) UnmarshalJSON(b []byte) error {
if string(b) == "null" {
return nil
}
var firstPass struct {
*queryWithInterfaceListPointerFieldResponse
Beings []json.RawMessage `json:"beings"`
graphql.NoUnmarshalJSON
}
firstPass.queryWithInterfaceListPointerFieldResponse = v
err := json.Unmarshal(b, &firstPass)
if err != nil {
return err
}
{
dst := &v.Beings
src := firstPass.Beings
*dst = make(
[]*queryWithInterfaceListPointerFieldBeingsBeing,
len(src))
for i, src := range src {
dst := &(*dst)[i]
if len(src) != 0 && string(src) != "null" {
*dst = new(queryWithInterfaceListPointerFieldBeingsBeing)
err = __unmarshalqueryWithInterfaceListPointerFieldBeingsBeing(
src, *dst)
if err != nil {
return fmt.Errorf(
"Unable to unmarshal queryWithInterfaceListPointerFieldResponse.Beings: %w", err)
}
}
}
}
return nil
}
type __premarshalqueryWithInterfaceListPointerFieldResponse struct {
Beings []json.RawMessage `json:"beings"`
}
func (v *queryWithInterfaceListPointerFieldResponse) MarshalJSON() ([]byte, error) {
premarshaled, err := v.__premarshalJSON()
if err != nil {
return nil, err
}
return json.Marshal(premarshaled)
}
func (v *queryWithInterfaceListPointerFieldResponse) __premarshalJSON() (*__premarshalqueryWithInterfaceListPointerFieldResponse, error) {
var retval __premarshalqueryWithInterfaceListPointerFieldResponse
{
dst := &retval.Beings
src := v.Beings
*dst = make(
[]json.RawMessage,
len(src))
for i, src := range src {
dst := &(*dst)[i]
if src != nil {
var err error
*dst, err = __marshalqueryWithInterfaceListPointerFieldBeingsBeing(
src)
if err != nil {
return nil, fmt.Errorf(
"Unable to marshal queryWithInterfaceListPointerFieldResponse.Beings: %w", err)
}
}
}
}
return &retval, nil
}
// queryWithInterfaceNoFragmentsBeing includes the requested fields of the GraphQL interface Being.
//
// queryWithInterfaceNoFragmentsBeing is implemented by the following types:
// queryWithInterfaceNoFragmentsBeingUser
// queryWithInterfaceNoFragmentsBeingAnimal
type queryWithInterfaceNoFragmentsBeing interface {
implementsGraphQLInterfacequeryWithInterfaceNoFragmentsBeing()
// GetTypename returns the receiver's concrete GraphQL type-name (see interface doc for possible values).
GetTypename() string
// GetId returns the interface-field "id" from its implementation.
GetId() string
// GetName returns the interface-field "name" from its implementation.
GetName() string
}
func (v *queryWithInterfaceNoFragmentsBeingUser) implementsGraphQLInterfacequeryWithInterfaceNoFragmentsBeing() {
}
func (v *queryWithInterfaceNoFragmentsBeingAnimal) implementsGraphQLInterfacequeryWithInterfaceNoFragmentsBeing() {
}
func __unmarshalqueryWithInterfaceNoFragmentsBeing(b []byte, v *queryWithInterfaceNoFragmentsBeing) error {
if string(b) == "null" {
return nil
}
var tn struct {
TypeName string `json:"__typename"`
}
err := json.Unmarshal(b, &tn)
if err != nil {
return err
}
switch tn.TypeName {
case "User":
*v = new(queryWithInterfaceNoFragmentsBeingUser)
return json.Unmarshal(b, *v)
case "Animal":
*v = new(queryWithInterfaceNoFragmentsBeingAnimal)
return json.Unmarshal(b, *v)
case "":
return fmt.Errorf(
"response was missing Being.__typename")
default:
return fmt.Errorf(
`unexpected concrete type for queryWithInterfaceNoFragmentsBeing: "%v"`, tn.TypeName)
}
}
func __marshalqueryWithInterfaceNoFragmentsBeing(v *queryWithInterfaceNoFragmentsBeing) ([]byte, error) {
var typename string
switch v := (*v).(type) {
case *queryWithInterfaceNoFragmentsBeingUser:
typename = "User"
result := struct {
TypeName string `json:"__typename"`
*queryWithInterfaceNoFragmentsBeingUser
}{typename, v}
return json.Marshal(result)
case *queryWithInterfaceNoFragmentsBeingAnimal:
typename = "Animal"
result := struct {
TypeName string `json:"__typename"`
*queryWithInterfaceNoFragmentsBeingAnimal
}{typename, v}
return json.Marshal(result)
case nil:
return []byte("null"), nil
default:
return nil, fmt.Errorf(
`unexpected concrete type for queryWithInterfaceNoFragmentsBeing: "%T"`, v)
}
}
// queryWithInterfaceNoFragmentsBeingAnimal includes the requested fields of the GraphQL type Animal.
type queryWithInterfaceNoFragmentsBeingAnimal struct {
Typename string `json:"__typename"`
Id string `json:"id"`
Name string `json:"name"`
}
// GetTypename returns queryWithInterfaceNoFragmentsBeingAnimal.Typename, and is useful for accessing the field via an interface.
func (v *queryWithInterfaceNoFragmentsBeingAnimal) GetTypename() string { return v.Typename }
// GetId returns queryWithInterfaceNoFragmentsBeingAnimal.Id, and is useful for accessing the field via an interface.
func (v *queryWithInterfaceNoFragmentsBeingAnimal) GetId() string { return v.Id }
// GetName returns queryWithInterfaceNoFragmentsBeingAnimal.Name, and is useful for accessing the field via an interface.
func (v *queryWithInterfaceNoFragmentsBeingAnimal) GetName() string { return v.Name }
// queryWithInterfaceNoFragmentsBeingUser includes the requested fields of the GraphQL type User.
type queryWithInterfaceNoFragmentsBeingUser struct {
Typename string `json:"__typename"`
Id string `json:"id"`
Name string `json:"name"`
}
// GetTypename returns queryWithInterfaceNoFragmentsBeingUser.Typename, and is useful for accessing the field via an interface.
func (v *queryWithInterfaceNoFragmentsBeingUser) GetTypename() string { return v.Typename }
// GetId returns queryWithInterfaceNoFragmentsBeingUser.Id, and is useful for accessing the field via an interface.
func (v *queryWithInterfaceNoFragmentsBeingUser) GetId() string { return v.Id }
// GetName returns queryWithInterfaceNoFragmentsBeingUser.Name, and is useful for accessing the field via an interface.
func (v *queryWithInterfaceNoFragmentsBeingUser) GetName() string { return v.Name }
// queryWithInterfaceNoFragmentsMeUser includes the requested fields of the GraphQL type User.
type queryWithInterfaceNoFragmentsMeUser struct {
Id string `json:"id"`
Name string `json:"name"`
}
// GetId returns queryWithInterfaceNoFragmentsMeUser.Id, and is useful for accessing the field via an interface.
func (v *queryWithInterfaceNoFragmentsMeUser) GetId() string { return v.Id }
// GetName returns queryWithInterfaceNoFragmentsMeUser.Name, and is useful for accessing the field via an interface.
func (v *queryWithInterfaceNoFragmentsMeUser) GetName() string { return v.Name }
// queryWithInterfaceNoFragmentsResponse is returned by queryWithInterfaceNoFragments on success.
type queryWithInterfaceNoFragmentsResponse struct {
Being queryWithInterfaceNoFragmentsBeing `json:"-"`
Me queryWithInterfaceNoFragmentsMeUser `json:"me"`
}
// GetBeing returns queryWithInterfaceNoFragmentsResponse.Being, and is useful for accessing the field via an interface.
func (v *queryWithInterfaceNoFragmentsResponse) GetBeing() queryWithInterfaceNoFragmentsBeing {
return v.Being
}
// GetMe returns queryWithInterfaceNoFragmentsResponse.Me, and is useful for accessing the field via an interface.
func (v *queryWithInterfaceNoFragmentsResponse) GetMe() queryWithInterfaceNoFragmentsMeUser {
return v.Me
}
func (v *queryWithInterfaceNoFragmentsResponse) UnmarshalJSON(b []byte) error {
if string(b) == "null" {
return nil
}
var firstPass struct {
*queryWithInterfaceNoFragmentsResponse
Being json.RawMessage `json:"being"`
graphql.NoUnmarshalJSON
}
firstPass.queryWithInterfaceNoFragmentsResponse = v
err := json.Unmarshal(b, &firstPass)
if err != nil {
return err
}
{
dst := &v.Being
src := firstPass.Being
if len(src) != 0 && string(src) != "null" {
err = __unmarshalqueryWithInterfaceNoFragmentsBeing(
src, dst)
if err != nil {
return fmt.Errorf(
"Unable to unmarshal queryWithInterfaceNoFragmentsResponse.Being: %w", err)
}
}
}
return nil
}
type __premarshalqueryWithInterfaceNoFragmentsResponse struct {
Being json.RawMessage `json:"being"`
Me queryWithInterfaceNoFragmentsMeUser `json:"me"`
}
func (v *queryWithInterfaceNoFragmentsResponse) MarshalJSON() ([]byte, error) {
premarshaled, err := v.__premarshalJSON()
if err != nil {
return nil, err
}
return json.Marshal(premarshaled)
}
func (v *queryWithInterfaceNoFragmentsResponse) __premarshalJSON() (*__premarshalqueryWithInterfaceNoFragmentsResponse, error) {
var retval __premarshalqueryWithInterfaceNoFragmentsResponse
{
dst := &retval.Being
src := v.Being
var err error
*dst, err = __marshalqueryWithInterfaceNoFragmentsBeing(
&src)
if err != nil {
return nil, fmt.Errorf(
"Unable to marshal queryWithInterfaceNoFragmentsResponse.Being: %w", err)
}
}
retval.Me = v.Me
return &retval, nil
}
// queryWithNamedFragmentsBeingsAnimal includes the requested fields of the GraphQL type Animal.
type queryWithNamedFragmentsBeingsAnimal struct {
Typename string `json:"__typename"`
Id string `json:"id"`
AnimalFields `json:"-"`
}
// GetTypename returns queryWithNamedFragmentsBeingsAnimal.Typename, and is useful for accessing the field via an interface.
func (v *queryWithNamedFragmentsBeingsAnimal) GetTypename() string { return v.Typename }
// GetId returns queryWithNamedFragmentsBeingsAnimal.Id, and is useful for accessing the field via an interface.
func (v *queryWithNamedFragmentsBeingsAnimal) GetId() string { return v.Id }
// GetHair returns queryWithNamedFragmentsBeingsAnimal.Hair, and is useful for accessing the field via an interface.
func (v *queryWithNamedFragmentsBeingsAnimal) GetHair() AnimalFieldsHairBeingsHair {
return v.AnimalFields.Hair
}
// GetOwner returns queryWithNamedFragmentsBeingsAnimal.Owner, and is useful for accessing the field via an interface.
func (v *queryWithNamedFragmentsBeingsAnimal) GetOwner() AnimalFieldsOwnerBeing {
return v.AnimalFields.Owner
}
func (v *queryWithNamedFragmentsBeingsAnimal) UnmarshalJSON(b []byte) error {
if string(b) == "null" {
return nil
}
var firstPass struct {
*queryWithNamedFragmentsBeingsAnimal
graphql.NoUnmarshalJSON
}
firstPass.queryWithNamedFragmentsBeingsAnimal = v
err := json.Unmarshal(b, &firstPass)
if err != nil {
return err
}
err = json.Unmarshal(
b, &v.AnimalFields)
if err != nil {
return err
}
return nil
}
type __premarshalqueryWithNamedFragmentsBeingsAnimal struct {
Typename string `json:"__typename"`
Id string `json:"id"`
Hair AnimalFieldsHairBeingsHair `json:"hair"`
Owner json.RawMessage `json:"owner"`
}
func (v *queryWithNamedFragmentsBeingsAnimal) MarshalJSON() ([]byte, error) {
premarshaled, err := v.__premarshalJSON()
if err != nil {
return nil, err
}
return json.Marshal(premarshaled)
}
func (v *queryWithNamedFragmentsBeingsAnimal) __premarshalJSON() (*__premarshalqueryWithNamedFragmentsBeingsAnimal, error) {
var retval __premarshalqueryWithNamedFragmentsBeingsAnimal
retval.Typename = v.Typename
retval.Id = v.Id
retval.Hair = v.AnimalFields.Hair
{
dst := &retval.Owner
src := v.AnimalFields.Owner
var err error
*dst, err = __marshalAnimalFieldsOwnerBeing(
&src)
if err != nil {
return nil, fmt.Errorf(
"Unable to marshal queryWithNamedFragmentsBeingsAnimal.AnimalFields.Owner: %w", err)
}
}
return &retval, nil
}
// queryWithNamedFragmentsBeingsBeing includes the requested fields of the GraphQL interface Being.
//
// queryWithNamedFragmentsBeingsBeing is implemented by the following types:
// queryWithNamedFragmentsBeingsUser
// queryWithNamedFragmentsBeingsAnimal
type queryWithNamedFragmentsBeingsBeing interface {
implementsGraphQLInterfacequeryWithNamedFragmentsBeingsBeing()
// GetTypename returns the receiver's concrete GraphQL type-name (see interface doc for possible values).
GetTypename() string
// GetId returns the interface-field "id" from its implementation.
GetId() string
}
func (v *queryWithNamedFragmentsBeingsUser) implementsGraphQLInterfacequeryWithNamedFragmentsBeingsBeing() {
}
func (v *queryWithNamedFragmentsBeingsAnimal) implementsGraphQLInterfacequeryWithNamedFragmentsBeingsBeing() {
}
func __unmarshalqueryWithNamedFragmentsBeingsBeing(b []byte, v *queryWithNamedFragmentsBeingsBeing) error {
if string(b) == "null" {
return nil
}
var tn struct {
TypeName string `json:"__typename"`
}
err := json.Unmarshal(b, &tn)
if err != nil {
return err
}
switch tn.TypeName {
case "User":
*v = new(queryWithNamedFragmentsBeingsUser)
return json.Unmarshal(b, *v)
case "Animal":
*v = new(queryWithNamedFragmentsBeingsAnimal)
return json.Unmarshal(b, *v)
case "":
return fmt.Errorf(
"response was missing Being.__typename")
default:
return fmt.Errorf(
`unexpected concrete type for queryWithNamedFragmentsBeingsBeing: "%v"`, tn.TypeName)
}
}
func __marshalqueryWithNamedFragmentsBeingsBeing(v *queryWithNamedFragmentsBeingsBeing) ([]byte, error) {
var typename string
switch v := (*v).(type) {
case *queryWithNamedFragmentsBeingsUser:
typename = "User"
premarshaled, err := v.__premarshalJSON()
if err != nil {
return nil, err
}
result := struct {
TypeName string `json:"__typename"`
*__premarshalqueryWithNamedFragmentsBeingsUser
}{typename, premarshaled}
return json.Marshal(result)
case *queryWithNamedFragmentsBeingsAnimal:
typename = "Animal"
premarshaled, err := v.__premarshalJSON()
if err != nil {
return nil, err
}
result := struct {
TypeName string `json:"__typename"`
*__premarshalqueryWithNamedFragmentsBeingsAnimal
}{typename, premarshaled}
return json.Marshal(result)
case nil:
return []byte("null"), nil
default:
return nil, fmt.Errorf(
`unexpected concrete type for queryWithNamedFragmentsBeingsBeing: "%T"`, v)
}
}
// queryWithNamedFragmentsBeingsUser includes the requested fields of the GraphQL type User.
type queryWithNamedFragmentsBeingsUser struct {
Typename string `json:"__typename"`
Id string `json:"id"`
UserFields `json:"-"`
}
// GetTypename returns queryWithNamedFragmentsBeingsUser.Typename, and is useful for accessing the field via an interface.
func (v *queryWithNamedFragmentsBeingsUser) GetTypename() string { return v.Typename }
// GetId returns queryWithNamedFragmentsBeingsUser.Id, and is useful for accessing the field via an interface.
func (v *queryWithNamedFragmentsBeingsUser) GetId() string { return v.Id }
// GetLuckyNumber returns queryWithNamedFragmentsBeingsUser.LuckyNumber, and is useful for accessing the field via an interface.
func (v *queryWithNamedFragmentsBeingsUser) GetLuckyNumber() int {
return v.UserFields.LuckyFieldsUser.LuckyNumber
}
// GetHair returns queryWithNamedFragmentsBeingsUser.Hair, and is useful for accessing the field via an interface.
func (v *queryWithNamedFragmentsBeingsUser) GetHair() MoreUserFieldsHair {
return v.UserFields.MoreUserFields.Hair
}
func (v *queryWithNamedFragmentsBeingsUser) UnmarshalJSON(b []byte) error {
if string(b) == "null" {
return nil
}
var firstPass struct {
*queryWithNamedFragmentsBeingsUser
graphql.NoUnmarshalJSON
}
firstPass.queryWithNamedFragmentsBeingsUser = v
err := json.Unmarshal(b, &firstPass)
if err != nil {
return err
}
err = json.Unmarshal(
b, &v.UserFields)
if err != nil {
return err
}
return nil
}
type __premarshalqueryWithNamedFragmentsBeingsUser struct {
Typename string `json:"__typename"`
Id string `json:"id"`
LuckyNumber int `json:"luckyNumber"`
Hair MoreUserFieldsHair `json:"hair"`
}
func (v *queryWithNamedFragmentsBeingsUser) MarshalJSON() ([]byte, error) {
premarshaled, err := v.__premarshalJSON()
if err != nil {
return nil, err
}
return json.Marshal(premarshaled)
}
func (v *queryWithNamedFragmentsBeingsUser) __premarshalJSON() (*__premarshalqueryWithNamedFragmentsBeingsUser, error) {
var retval __premarshalqueryWithNamedFragmentsBeingsUser
retval.Typename = v.Typename
retval.Id = v.Id
retval.LuckyNumber = v.UserFields.LuckyFieldsUser.LuckyNumber
retval.Hair = v.UserFields.MoreUserFields.Hair
return &retval, nil
}
// queryWithNamedFragmentsResponse is returned by queryWithNamedFragments on success.
type queryWithNamedFragmentsResponse struct {
Beings []queryWithNamedFragmentsBeingsBeing `json:"-"`
}
// GetBeings returns queryWithNamedFragmentsResponse.Beings, and is useful for accessing the field via an interface.
func (v *queryWithNamedFragmentsResponse) GetBeings() []queryWithNamedFragmentsBeingsBeing {
return v.Beings
}
func (v *queryWithNamedFragmentsResponse) UnmarshalJSON(b []byte) error {
if string(b) == "null" {
return nil
}
var firstPass struct {
*queryWithNamedFragmentsResponse
Beings []json.RawMessage `json:"beings"`
graphql.NoUnmarshalJSON
}
firstPass.queryWithNamedFragmentsResponse = v
err := json.Unmarshal(b, &firstPass)
if err != nil {
return err
}
{
dst := &v.Beings
src := firstPass.Beings
*dst = make(
[]queryWithNamedFragmentsBeingsBeing,
len(src))
for i, src := range src {
dst := &(*dst)[i]
if len(src) != 0 && string(src) != "null" {
err = __unmarshalqueryWithNamedFragmentsBeingsBeing(
src, dst)
if err != nil {
return fmt.Errorf(
"Unable to unmarshal queryWithNamedFragmentsResponse.Beings: %w", err)
}
}
}
}
return nil
}
type __premarshalqueryWithNamedFragmentsResponse struct {
Beings []json.RawMessage `json:"beings"`
}
func (v *queryWithNamedFragmentsResponse) MarshalJSON() ([]byte, error) {
premarshaled, err := v.__premarshalJSON()
if err != nil {
return nil, err
}
return json.Marshal(premarshaled)
}
func (v *queryWithNamedFragmentsResponse) __premarshalJSON() (*__premarshalqueryWithNamedFragmentsResponse, error) {
var retval __premarshalqueryWithNamedFragmentsResponse
{
dst := &retval.Beings
src := v.Beings
*dst = make(
[]json.RawMessage,
len(src))
for i, src := range src {
dst := &(*dst)[i]
var err error
*dst, err = __marshalqueryWithNamedFragmentsBeingsBeing(
&src)
if err != nil {
return nil, fmt.Errorf(
"Unable to marshal queryWithNamedFragmentsResponse.Beings: %w", err)
}
}
}
return &retval, nil
}
// queryWithOmitemptyResponse is returned by queryWithOmitempty on success.
type queryWithOmitemptyResponse struct {
User queryWithOmitemptyUser `json:"user"`
}
// GetUser returns queryWithOmitemptyResponse.User, and is useful for accessing the field via an interface.
func (v *queryWithOmitemptyResponse) GetUser() queryWithOmitemptyUser { return v.User }
// queryWithOmitemptyUser includes the requested fields of the GraphQL type User.
type queryWithOmitemptyUser struct {
Id string `json:"id"`
Name string `json:"name"`
LuckyNumber int `json:"luckyNumber"`
}
// GetId returns queryWithOmitemptyUser.Id, and is useful for accessing the field via an interface.
func (v *queryWithOmitemptyUser) GetId() string { return v.Id }
// GetName returns queryWithOmitemptyUser.Name, and is useful for accessing the field via an interface.
func (v *queryWithOmitemptyUser) GetName() string { return v.Name }
// GetLuckyNumber returns queryWithOmitemptyUser.LuckyNumber, and is useful for accessing the field via an interface.
func (v *queryWithOmitemptyUser) GetLuckyNumber() int { return v.LuckyNumber }
// queryWithVariablesResponse is returned by queryWithVariables on success.
type queryWithVariablesResponse struct {
User queryWithVariablesUser `json:"user"`
}
// GetUser returns queryWithVariablesResponse.User, and is useful for accessing the field via an interface.
func (v *queryWithVariablesResponse) GetUser() queryWithVariablesUser { return v.User }
// queryWithVariablesUser includes the requested fields of the GraphQL type User.
type queryWithVariablesUser struct {
Id string `json:"id"`
Name string `json:"name"`
LuckyNumber int `json:"luckyNumber"`
}
// GetId returns queryWithVariablesUser.Id, and is useful for accessing the field via an interface.
func (v *queryWithVariablesUser) GetId() string { return v.Id }
// GetName returns queryWithVariablesUser.Name, and is useful for accessing the field via an interface.
func (v *queryWithVariablesUser) GetName() string { return v.Name }
// GetLuckyNumber returns queryWithVariablesUser.LuckyNumber, and is useful for accessing the field via an interface.
func (v *queryWithVariablesUser) GetLuckyNumber() int { return v.LuckyNumber }
// simpleQueryMeUser includes the requested fields of the GraphQL type User.
type simpleQueryMeUser struct {
Id string `json:"id"`
Name string `json:"name"`
LuckyNumber int `json:"luckyNumber"`
}
// GetId returns simpleQueryMeUser.Id, and is useful for accessing the field via an interface.
func (v *simpleQueryMeUser) GetId() string { return v.Id }
// GetName returns simpleQueryMeUser.Name, and is useful for accessing the field via an interface.
func (v *simpleQueryMeUser) GetName() string { return v.Name }
// GetLuckyNumber returns simpleQueryMeUser.LuckyNumber, and is useful for accessing the field via an interface.
func (v *simpleQueryMeUser) GetLuckyNumber() int { return v.LuckyNumber }
// simpleQueryResponse is returned by simpleQuery on success.
type simpleQueryResponse struct {
Me simpleQueryMeUser `json:"me"`
}
// GetMe returns simpleQueryResponse.Me, and is useful for accessing the field via an interface.
func (v *simpleQueryResponse) GetMe() simpleQueryMeUser { return v.Me }
func failingQuery(
ctx context.Context,
client graphql.Client,
) (*failingQueryResponse, error) {
var err error
var retval failingQueryResponse
err = client.MakeRequest(
ctx,
"failingQuery",
`
query failingQuery {
fail
me {
id
}
}
`,
&retval,
nil,
)
return &retval, err
}
func queryWithCustomMarshal(
ctx context.Context,
client graphql.Client,
date time.Time,
) (*queryWithCustomMarshalResponse, error) {
__input := __queryWithCustomMarshalInput{
Date: date,
}
var err error
var retval queryWithCustomMarshalResponse
err = client.MakeRequest(
ctx,
"queryWithCustomMarshal",
`
query queryWithCustomMarshal ($date: Date!) {
usersBornOn(date: $date) {
id
name
birthdate
}
}
`,
&retval,
&__input,
)
return &retval, err
}
func queryWithCustomMarshalOptional(
ctx context.Context,
client graphql.Client,
date *time.Time,
id *string,
) (*queryWithCustomMarshalOptionalResponse, error) {
__input := __queryWithCustomMarshalOptionalInput{
Date: date,
Id: id,
}
var err error
var retval queryWithCustomMarshalOptionalResponse
err = client.MakeRequest(
ctx,
"queryWithCustomMarshalOptional",
`
query queryWithCustomMarshalOptional ($date: Date, $id: ID) {
userSearch(birthdate: $date, id: $id) {
id
name
birthdate
}
}
`,
&retval,
&__input,
)
return &retval, err
}
func queryWithCustomMarshalSlice(
ctx context.Context,
client graphql.Client,
dates []time.Time,
) (*queryWithCustomMarshalSliceResponse, error) {
__input := __queryWithCustomMarshalSliceInput{
Dates: dates,
}
var err error
var retval queryWithCustomMarshalSliceResponse
err = client.MakeRequest(
ctx,
"queryWithCustomMarshalSlice",
`
query queryWithCustomMarshalSlice ($dates: [Date!]!) {
usersBornOnDates(dates: $dates) {
id
name
birthdate
}
}
`,
&retval,
&__input,
)
return &retval, err
}
func queryWithFlatten(
ctx context.Context,
client graphql.Client,
ids []string,
) (*QueryFragment, error) {
__input := __queryWithFlattenInput{
Ids: ids,
}
var err error
var retval QueryFragment
err = client.MakeRequest(
ctx,
"queryWithFlatten",
`
query queryWithFlatten ($ids: [ID!]!) {
... QueryFragment
}
fragment QueryFragment on Query {
beings(ids: $ids) {
__typename
id
... FlattenedUserFields
... on Animal {
owner {
__typename
... BeingFields
}
}
}
}
fragment FlattenedUserFields on User {
... FlattenedLuckyFields
}
fragment BeingFields on Being {
... InnerBeingFields
}
fragment FlattenedLuckyFields on Lucky {
... InnerLuckyFields
}
fragment InnerBeingFields on Being {
id
name
... on User {
friends {
... FriendsFields
}
}
}
fragment InnerLuckyFields on Lucky {
luckyNumber
}
fragment FriendsFields on User {
id
name
}
`,
&retval,
&__input,
)
return &retval, err
}
func queryWithFragments(
ctx context.Context,
client graphql.Client,
ids []string,
) (*queryWithFragmentsResponse, error) {
__input := __queryWithFragmentsInput{
Ids: ids,
}
var err error
var retval queryWithFragmentsResponse
err = client.MakeRequest(
ctx,
"queryWithFragments",
`
query queryWithFragments ($ids: [ID!]!) {
beings(ids: $ids) {
__typename
id
... on Being {
id
name
}
... on Animal {
id
hair {
hasHair
}
species
owner {
__typename
id
... on Being {
name
}
... on User {
luckyNumber
}
}
}
... on Lucky {
luckyNumber
}
... on User {
hair {
color
}
}
}
}
`,
&retval,
&__input,
)
return &retval, err
}
func queryWithInterfaceListField(
ctx context.Context,
client graphql.Client,
ids []string,
) (*queryWithInterfaceListFieldResponse, error) {
__input := __queryWithInterfaceListFieldInput{
Ids: ids,
}
var err error
var retval queryWithInterfaceListFieldResponse
err = client.MakeRequest(
ctx,
"queryWithInterfaceListField",
`
query queryWithInterfaceListField ($ids: [ID!]!) {
beings(ids: $ids) {
__typename
id
name
}
}
`,
&retval,
&__input,
)
return &retval, err
}
func queryWithInterfaceListPointerField(
ctx context.Context,
client graphql.Client,
ids []string,
) (*queryWithInterfaceListPointerFieldResponse, error) {
__input := __queryWithInterfaceListPointerFieldInput{
Ids: ids,
}
var err error
var retval queryWithInterfaceListPointerFieldResponse
err = client.MakeRequest(
ctx,
"queryWithInterfaceListPointerField",
`
query queryWithInterfaceListPointerField ($ids: [ID!]!) {
beings(ids: $ids) {
__typename
id
name
}
}
`,
&retval,
&__input,
)
return &retval, err
}
func queryWithInterfaceNoFragments(
ctx context.Context,
client graphql.Client,
id string,
) (*queryWithInterfaceNoFragmentsResponse, error) {
__input := __queryWithInterfaceNoFragmentsInput{
Id: id,
}
var err error
var retval queryWithInterfaceNoFragmentsResponse
err = client.MakeRequest(
ctx,
"queryWithInterfaceNoFragments",
`
query queryWithInterfaceNoFragments ($id: ID!) {
being(id: $id) {
__typename
id
name
}
me {
id
name
}
}
`,
&retval,
&__input,
)
return &retval, err
}
func queryWithNamedFragments(
ctx context.Context,
client graphql.Client,
ids []string,
) (*queryWithNamedFragmentsResponse, error) {
__input := __queryWithNamedFragmentsInput{
Ids: ids,
}
var err error
var retval queryWithNamedFragmentsResponse
err = client.MakeRequest(
ctx,
"queryWithNamedFragments",
`
query queryWithNamedFragments ($ids: [ID!]!) {
beings(ids: $ids) {
__typename
id
... AnimalFields
... UserFields
}
}
fragment AnimalFields on Animal {
id
hair {
hasHair
}
owner {
__typename
id
... UserFields
... LuckyFields
}
}
fragment UserFields on User {
id
... LuckyFields
... MoreUserFields
}
fragment LuckyFields on Lucky {
... MoreUserFields
luckyNumber
}
fragment MoreUserFields on User {
id
hair {
color
}
}
`,
&retval,
&__input,
)
return &retval, err
}
func queryWithOmitempty(
ctx context.Context,
client graphql.Client,
id string,
) (*queryWithOmitemptyResponse, error) {
__input := __queryWithOmitemptyInput{
Id: id,
}
var err error
var retval queryWithOmitemptyResponse
err = client.MakeRequest(
ctx,
"queryWithOmitempty",
`
query queryWithOmitempty ($id: ID) {
user(id: $id) {
id
name
luckyNumber
}
}
`,
&retval,
&__input,
)
return &retval, err
}
func queryWithVariables(
ctx context.Context,
client graphql.Client,
id string,
) (*queryWithVariablesResponse, error) {
__input := __queryWithVariablesInput{
Id: id,
}
var err error
var retval queryWithVariablesResponse
err = client.MakeRequest(
ctx,
"queryWithVariables",
`
query queryWithVariables ($id: ID!) {
user(id: $id) {
id
name
luckyNumber
}
}
`,
&retval,
&__input,
)
return &retval, err
}
func simpleQuery(
ctx context.Context,
client graphql.Client,
) (*simpleQueryResponse, error) {
var err error
var retval simpleQueryResponse
err = client.MakeRequest(
ctx,
"simpleQuery",
`
query simpleQuery {
me {
id
name
luckyNumber
}
}
`,
&retval,
nil,
)
return &retval, err
}