graph

package
v0.21.9 Latest Latest
Warning

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

Go to latest
Published: Dec 2, 2022 License: Apache-2.0 Imports: 10 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func FreeNode

func FreeNode(n *Node)

Types

type Arg

type Arg struct {
	Name string
	Val  *Node
}

type Directive

type Directive struct {
	Name string
	Args []Arg
}

type Field

type Field struct {
	ID       int32
	ParentID int32
	Type     FieldType
	Name     string
	Alias    string
	Args     []Arg

	Directives []Directive
	Children   []int32
	// contains filtered or unexported fields
}

type FieldType

type FieldType int8
const (
	FieldUnion FieldType = iota + 1
	FieldMember
	FieldKeyword
)

func (FieldType) String

func (i FieldType) String() string

type Fragment

type Fragment struct {
	Name   string
	On     string
	Fields []Field
}

func ParseFragment

func ParseFragment(fragment string, fetchFrag func(name string) (string, error)) (
	Fragment, error)
type Header struct {
	Type ParserType
	Name string
}

func FastParse added in v0.20.11

func FastParse(gql string) (Header, error)

type MType

type MType int8

MType identifies the type of lex items.

func (MType) String added in v0.17.16

func (i MType) String() string

type Node

type Node struct {
	Type     ParserType
	Name     string
	Val      string
	Parent   *Node
	Children []*Node
	CMap     map[string]*Node
}

func ParseArgValue

func ParseArgValue(argVal string, json bool) (*Node, error)

func (*Node) Free

func (n *Node) Free()

func (*Node) Reset

func (n *Node) Reset()

type Operation

type Operation struct {
	Header
	Args []Arg

	Directives []Directive
	Fields     []Field
	// contains filtered or unexported fields
}

func Parse

func Parse(gql []byte, fetchFrag func(name string) (string, error)) (Operation, error)

type Parser

type Parser struct {
	// contains filtered or unexported fields
}

type ParserType

type ParserType int8
const (
	OpQuery ParserType
	OpMutate
	OpSub
	NodeStr
	NodeNum
	NodeBool
	NodeObj
	NodeList
	NodeVar
	NodeLabel
)

func (ParserType) String

func (i ParserType) String() string

type Pos

type Pos int

Pos represents a byte position in the original input text from which this template was parsed.

type Stack

type Stack struct {
	// contains filtered or unexported fields
}

func NewStack

func NewStack() *Stack

Create a new Stack

func (*Stack) Len

func (s *Stack) Len() int

Return the number of items in the Stack

func (*Stack) Peek

func (s *Stack) Peek() int32

View the top item on the Stack

func (*Stack) Pop

func (s *Stack) Pop() int32

Pop the top item of the Stack and return it

func (*Stack) Push

func (s *Stack) Push(value int32)

Push a value onto the top of the Stack

Jump to

Keyboard shortcuts

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