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 ToGoModelName(parts ...string) string
- func ToGoPrivate(name string) string
- func ToGoPrivateModelName(parts ...string) 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 ToGoModelName ¶
func ToGoPrivate ¶
func ToGoPrivateModelName ¶
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
// Use the go:embed API to collect all the template files you want to pass into Render
// this is an alternative to passing the Template option
TemplateFS fs.FS
// 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.