add option to force using a pointer

This commit is contained in:
Ben Kraft
2021-04-12 16:01:21 -07:00
parent 74411faf52
commit e597cac74c
14 changed files with 351 additions and 65 deletions
+80
View File
@@ -0,0 +1,80 @@
package test
// Code generated by github.com/Khan/genqlient, DO NOT EDIT.
import (
"time"
"github.com/Khan/genqlient/graphql"
"github.com/me/mypkg"
)
type PointersQueryOtherUser struct {
Id *mypkg.ID `json:"id"`
}
type PointersQueryResponse struct {
User *PointersQueryUser `json:"user"`
OtherUser *PointersQueryOtherUser `json:"otherUser"`
MaybeConvert *time.Time `json:"maybeConvert"`
}
type PointersQueryUser struct {
Id *mypkg.ID `json:"id"`
Roles []*Role `json:"roles"`
Name *string `json:"name"`
Emails []*string `json:"emails"`
EmailsNoPtr []string `json:"emailsNoPtr"`
}
type Role string
const (
RoleStudent Role = "STUDENT"
RoleTeacher Role = "TEACHER"
)
type UserQueryInput struct {
Email *string `json:"email"`
Name *string `json:"name"`
Id *mypkg.ID `json:"id"`
Role *Role `json:"role"`
Names []*string `json:"names"`
}
func PointersQuery(
client graphql.Client,
query UserQueryInput,
dt time.Time,
tz string,
) (*PointersQueryResponse, error) {
variables := map[string]interface{}{
"query": query,
"dt": dt,
"tz": tz,
}
var retval PointersQueryResponse
err := client.MakeRequest(
nil,
"PointersQuery",
`
query PointersQuery ($query: UserQueryInput, $dt: DateTime, $tz: String) {
user(query: $query) {
id
roles
name
emails
emailsNoPtr: emails
}
otherUser: user(query: $query) {
id
}
maybeConvert(dt: $dt, tz: $tz)
}
`,
&retval,
variables,
)
return &retval, err
}