introspect

package
v1.3.1 Latest Latest
Warning

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

Go to latest
Published: May 3, 2024 License: MIT Imports: 3 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ObjectResolverType reflect.Type = reflect.TypeOf(&ObjectResolver{}).Elem()

Reflection type for the object introspection resolver.

View Source
var TypeResolverType reflect.Type = reflect.TypeOf(&TypeResolver{}).Elem()

Reflection type for the type introspection resolver.

Functions

This section is empty.

Types

type ASTLookup

type ASTLookup interface {
	LookupType(ast.Type) ast.TypeDefinition
}

ASTLookup can look up pointers to type definitions.

type DirectiveResolver

type DirectiveResolver struct{}

DirectiveResolver resolves information about a directive.

func (*DirectiveResolver) Args

Args returns the arguments of the directive.

func (*DirectiveResolver) Description

func (r *DirectiveResolver) Description() string

Description returns the description of the directive.

func (*DirectiveResolver) Locations

func (r *DirectiveResolver) Locations() []string

Locations returns the locations of the directive.

func (*DirectiveResolver) Name

func (r *DirectiveResolver) Name() string

Name returns the name of the directive.

type EnumValueResolver

type EnumValueResolver struct {
	Lookup ASTLookup
	AST    *ast.EnumValueDefinition
}

EnumValueResolver resolves information about an enum value.

func (*EnumValueResolver) DeprecationReason

func (e *EnumValueResolver) DeprecationReason() *string

DeprecationReason returns the reason a value was deprecated, if any.

func (*EnumValueResolver) Description

func (e *EnumValueResolver) Description() *string

Description gets the description of an enum value.

func (*EnumValueResolver) IsDeprecated

func (e *EnumValueResolver) IsDeprecated() bool

IsDeprecated checks if an enum value is deprecated.

func (*EnumValueResolver) Name

func (e *EnumValueResolver) Name() string

Name returns the name of an enum value.

type FieldResolver

type FieldResolver struct {
	Lookup ASTLookup
	AST    *ast.FieldDefinition
}

FieldResolver resolves information about a field.

func (*FieldResolver) Args

func (f *FieldResolver) Args() []*InputValueResolver

Args returns the arguments of a field.

func (*FieldResolver) DeprecationReason

func (e *FieldResolver) DeprecationReason() *string

DeprecationReason returns the reason a field was deprecated, if any

func (*FieldResolver) Description

func (f *FieldResolver) Description() *string

Description returns the description of a field.

func (*FieldResolver) IsDeprecated

func (e *FieldResolver) IsDeprecated() bool

IsDeprecated checks if a field is deprecated.

func (*FieldResolver) Name

func (f *FieldResolver) Name() string

Name resolves the name of a field.

func (*FieldResolver) Type

func (r *FieldResolver) Type() *TypeResolver

Type resolves the type of a field.

type InputValueResolver

type InputValueResolver struct {
	Lookup ASTLookup
	AST    *ast.InputValueDefinition
}

InputValueResolver resolves information about input values.

func (*InputValueResolver) DefaultValue

func (r *InputValueResolver) DefaultValue() string

DefaultValue returns the graphql-formatted string of the default value.

func (*InputValueResolver) Description

func (r *InputValueResolver) Description() *string

Description returns the description of the input value.

func (*InputValueResolver) Name

func (r *InputValueResolver) Name() string

Name returns the name of the input value.

func (*InputValueResolver) Type

func (r *InputValueResolver) Type() *TypeResolver

Type returns the type information of the input value.

type ObjectResolver

type ObjectResolver struct {
	Lookup         ASTLookup
	AST            *ast.ObjectDefinition
	SchemaResolver *SchemaResolver
}

Resolver for various introspection fields on an object.

func (*ObjectResolver) Schema

func (sr *ObjectResolver) Schema() *SchemaResolver

Schema resolves the __schema field on an object.

func (*ObjectResolver) Type

func (sr *ObjectResolver) Type() *TypeResolver

Type resolves the __type field on an object.

type SchemaResolver

type SchemaResolver struct {
	Lookup    ASTLookup
	RootQuery ast.TypeDefinition

	NamedTypes map[string]ast.TypeDefinition
}

SchemaResolver resolves fields on the __schema object.

func (*SchemaResolver) Directives

func (r *SchemaResolver) Directives() []*DirectiveResolver

Directives returns the list of directive resolvers.

func (*SchemaResolver) QueryType

func (r *SchemaResolver) QueryType() *TypeResolver

QueryType returns the root query type of the schema.

func (*SchemaResolver) Types

func (r *SchemaResolver) Types() []*TypeResolver

Types finds all named types on the schema.

type TypeResolver

type TypeResolver struct {
	Lookup ASTLookup
	// NameCache overrides the name in ast.
	NameCache string
	AST       ast.Node
}

TypeResolver resolves fields on the __type object.

func (*TypeResolver) Description

func (r *TypeResolver) Description() *string

Description resolves the description of the Type.

func (*TypeResolver) EnumValues

func (r *TypeResolver) EnumValues(args *struct{ IncludeDeprecated bool }) []*EnumValueResolver

EnumValues returns all the possible values of an enum.

func (*TypeResolver) Fields

func (r *TypeResolver) Fields() []*FieldResolver

Fields returns a list of fields on a type.

func (*TypeResolver) InputFields

func (r *TypeResolver) InputFields() []*InputValueResolver

Fields returns a list of fields on a type.

func (*TypeResolver) Interfaces

func (r *TypeResolver) Interfaces() []*TypeResolver

Interfaces returns a list of interfaces a type implements.

func (*TypeResolver) Kind

func (r *TypeResolver) Kind() string

Kind resolves the kind of the Type.

func (*TypeResolver) Name

func (r *TypeResolver) Name() (typeName *string)

Name resolves the name of the Type.

func (*TypeResolver) OfType

func (sr *TypeResolver) OfType() *TypeResolver

OfType resolves the __type field of an array.

func (*TypeResolver) PossibleTypes

func (r *TypeResolver) PossibleTypes() []*TypeResolver

PossibleTypes returns a list of possible types a interface could be.

Jump to

Keyboard shortcuts

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