Version: v0.7.1 Latest Latest

This package is not in the latest version of its module.

Go to latest
Published: Nov 28, 2018 License: MIT Imports: 8 Imported by: 0




This section is empty.


This section is empty.


func MarshalID

func MarshalID(id external.ObjectID) graphql.Marshaler

Lets redefine the base ID type to use an id from an external library

func MarshalTimestamp

func MarshalTimestamp(t time.Time) graphql.Marshaler

if the type referenced in .gqlgen.yml is a function that returns a marshaller we can use it to encode and decode onto any existing go type.

func UnmarshalID

func UnmarshalID(v interface{}) (external.ObjectID, error)

And the same for the unmarshaler

func UnmarshalTimestamp

func UnmarshalTimestamp(v interface{}) (time.Time, error)

Unmarshal{Typename} is only required if the scalar appears as an input. The raw values have already been decoded from json into int/float64/bool/nil/map[string]interface/[]interface


type Address

type Address struct {
	ID       external.ObjectID `json:"id"`
	Location *Point            `json:"location"`

type Banned

type Banned bool

type Point

type Point struct {
	X int
	Y int

Point is serialized as a simple array, eg [1, 2]

func (Point) MarshalGQL

func (p Point) MarshalGQL(w io.Writer)

MarshalGQL implements the graphql.Marshaler interface

func (*Point) UnmarshalGQL

func (p *Point) UnmarshalGQL(v interface{}) error

type SearchArgs

type SearchArgs struct {
	Location     *Point
	CreatedAfter *time.Time
	IsBanned     Banned

type Tier

type Tier uint

A custom enum that uses integers to represent the values in memory but serialize as string for graphql

const (
	TierA Tier = iota
	TierB Tier = iota
	TierC Tier = iota

func TierForStr

func TierForStr(str string) (Tier, error)

func (Tier) IsValid

func (e Tier) IsValid() bool

func (Tier) MarshalGQL

func (e Tier) MarshalGQL(w io.Writer)

func (Tier) String

func (e Tier) String() string

func (*Tier) UnmarshalGQL

func (e *Tier) UnmarshalGQL(v interface{}) error

type User

type User struct {
	ID       external.ObjectID
	Name     string
	Created  time.Time // direct binding to builtin types with external Marshal/Unmarshal methods
	IsBanned Banned    // aliased primitive
	Address  Address
	Tier     Tier

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL