gqlgen: Index | Files

package templates

import ""


Package Files

import.go templates.go

func Call Uses

func Call(p *types.Func) string

func Dump Uses

func Dump(val interface{}) string

func Funcs Uses

func Funcs() template.FuncMap

func LcFirst Uses

func LcFirst(s string) string

func Render Uses

func Render(cfg Options) error

Render renders a gql plugin template from the given Options. Render is an abstraction of the text/template package that makes it easier to write gqlgen plugins. If Options.Template is empty, the Render function will look for `.gotpl` files inside the directory where you wrote the plugin.

func ToGo Uses

func ToGo(name string) string

func ToGoPrivate Uses

func ToGoPrivate(name string) string

func TypeIdentifier Uses

func TypeIdentifier(t types.Type) string

func UcFirst Uses

func UcFirst(s string) string

type Import Uses

type Import struct {
    Name  string
    Path  string
    Alias string

func (*Import) String Uses

func (i *Import) String() string

type Imports Uses

type Imports struct {
    // contains filtered or unexported fields
var CurrentImports *Imports

CurrentImports keeps track of all the import declarations that are needed during the execution of a plugin. this is done with a global because subtemplates currently get called in functions. Lets aim to remove this eventually.

func (*Imports) Lookup Uses

func (s *Imports) Lookup(path string) string

func (*Imports) LookupType Uses

func (s *Imports) LookupType(t types.Type) string

func (*Imports) Reserve Uses

func (s *Imports) Reserve(path string, aliases ...string) (string, error)

func (*Imports) String Uses

func (s *Imports) String() string

type Options Uses

type Options struct {
    // PackageName is a helper that specifies the package header declaration.
    // In other words, when you write the template you don't need to specify `package X`
    // at the top of the file. By providing PackageName in the Options, the Render
    // function will do that for you.
    PackageName string
    // Template is a string of the entire template that
    // will be parsed and rendered. If it's empty,
    // the plugin processor will look for .gotpl files
    // in the same directory of where you wrote the plugin.
    Template string
    // Filename is the name of the file that will be
    // written to the system disk once the template is rendered.
    Filename        string
    RegionTags      bool
    GeneratedHeader bool
    // PackageDoc is documentation written above the package line
    PackageDoc string
    // FileNotice is notice written below the package line
    FileNotice string
    // Data will be passed to the template execution.
    Data  interface{}
    Funcs template.FuncMap

    // Packages cache, you can find me on config.Config
    Packages *code.Packages

Options specify various parameters to rendering a template.

Package templates imports 16 packages (graph) and is imported by 64 packages. Updated 2020-07-06. Refresh now. Tools for package owners.