Documentation ¶
Index ¶
- func Call(p *types.Func) string
- func Dump(val interface{}) string
- func Funcs() template.FuncMap
- func LcFirst(s string) string
- func Render(cfg Options) error
- func ToGo(name string) string
- func ToGoPrivate(name string) string
- func TypeIdentifier(t types.Type) string
- func UcFirst(s string) string
- type Import
- type Imports
- type Options
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Render ¶
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 ToGoPrivate ¶
func TypeIdentifier ¶
Types ¶
type Imports ¶
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.
type Options ¶
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.
Click to show internal directories.
Click to hide internal directories.