-
Notifications
You must be signed in to change notification settings - Fork 115
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add new package bindings option (#169)
Add new package bindings option This commit adds list of packages for which genqlient should automatically generate bindings; it's equivalent to adding all the exported types in the package to `bindings` explicitly. This can be useful when you're both a client and a server of the same schema and want to share types. We don't recommend doing things that way, but the feature isn't too invasive and may be useful for other purposes. Co-authored-by: Ben Kraft <[email protected]>
- Loading branch information
1 parent
1f44dc6
commit 093054e
Showing
5 changed files
with
127 additions
and
2 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
65 changes: 65 additions & 0 deletions
65
generate/testdata/snapshots/TestGenerateWithConfig-PackageBindings-testdata-queries
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,65 @@ | ||
// Code generated by github.com/Khan/genqlient, DO NOT EDIT. | ||
|
||
package testdata | ||
|
||
import ( | ||
"context" | ||
|
||
"github.com/Khan/genqlient/graphql" | ||
"github.com/Khan/genqlient/internal/testutil" | ||
) | ||
|
||
// SimpleQueryResponse is returned by SimpleQuery on success. | ||
type SimpleQueryResponse struct { | ||
// user looks up a user by some stuff. | ||
// | ||
// See UserQueryInput for what stuff is supported. | ||
// If query is null, returns the current user. | ||
User SimpleQueryUser `json:"user"` | ||
} | ||
|
||
// GetUser returns SimpleQueryResponse.User, and is useful for accessing the field via an interface. | ||
func (v *SimpleQueryResponse) GetUser() SimpleQueryUser { return v.User } | ||
|
||
// SimpleQueryUser includes the requested fields of the GraphQL type User. | ||
// The GraphQL type's documentation follows. | ||
// | ||
// A User is a user! | ||
type SimpleQueryUser struct { | ||
// id is the user's ID. | ||
// | ||
// It is stable, unique, and opaque, like all good IDs. | ||
Id testutil.ID `json:"id"` | ||
} | ||
|
||
// GetId returns SimpleQueryUser.Id, and is useful for accessing the field via an interface. | ||
func (v *SimpleQueryUser) GetId() testutil.ID { return v.Id } | ||
|
||
func SimpleQuery( | ||
ctx context.Context, | ||
client graphql.Client, | ||
) (*SimpleQueryResponse, error) { | ||
req := &graphql.Request{ | ||
OpName: "SimpleQuery", | ||
Query: ` | ||
query SimpleQuery { | ||
user { | ||
id | ||
} | ||
} | ||
`, | ||
} | ||
var err error | ||
|
||
var data SimpleQueryResponse | ||
resp := &graphql.Response{Data: &data} | ||
|
||
err = client.MakeRequest( | ||
ctx, | ||
req, | ||
resp, | ||
) | ||
|
||
return &data, err | ||
} | ||
|