Versions in this module Expand all Collapse all v0 v0.1.4 Feb 17, 2019 Changes in this version + type Code interface + AddDocs func(docs ...Comment) + Code func() *jen.Statement + Docs func() []Comment + String func() string + type Comment string + func NewComment(s string) Comment + func (c Comment) AddDocs(_ ...Comment) + func (c Comment) Code() *jen.Statement + func (c Comment) Docs() []Comment + func (c Comment) String() string + type Const Var + func NewConst(name string, tp Type, value interface{}, docs ...Comment) *Const + func (c *Const) AddDocs(docs ...Comment) + func (c *Const) Code() *jen.Statement + func (c *Const) Docs() []Comment + func (c *Const) String() string + type FieldTags map[string]string + func NewFieldTags(key, value string) *FieldTags + func (f *FieldTags) Set(key, value string) + type File struct + Code []Code + func NewFile(packageName string, code ...Code) *File + func (f *File) AppendAfter(c Code, new Code) error + func (f *File) PrependBefore(c Code, new Code) error + func (f *File) SetImportAliases(ia []ImportAlias) + func (f *File) String() string + type Function struct + Body []jen.Code + Name string + Params []Parameter + Recv *Parameter + Results []Parameter + func NewFunction(name string, options ...FunctionOptions) *Function + func (f *Function) AddDocs(docs ...Comment) + func (f *Function) AddParameter(p Parameter) + func (f *Function) AddResult(p Parameter) + func (f *Function) AddStringBody(s string) + func (f *Function) Code() *jen.Statement + func (f *Function) Docs() []Comment + func (f *Function) String() string + type FunctionOptions func(m *Function) + func BodyFunctionOption(body ...jen.Code) FunctionOptions + func DocsFunctionOption(docs ...Comment) FunctionOptions + func ParamsFunctionOption(params ...Parameter) FunctionOptions + func RecvFunctionOption(recv *Parameter) FunctionOptions + func ResultsFunctionOption(results ...Parameter) FunctionOptions + type FunctionType Function + func NewFunctionType(options ...FunctionOptions) *FunctionType + func (m *FunctionType) AddDocs(_ ...Comment) + func (m *FunctionType) Code() *jen.Statement + func (m *FunctionType) Docs() []Comment + func (m *FunctionType) String() string + type Import struct + Alias string + FilePath string + Path string + func NewImport(alias, path string) *Import + func NewImportWithFilePath(alias, path, filePath string) *Import + type ImportAlias struct + Name string + Path string + func NewImportAlias(name, path string) ImportAlias + type Interface struct + Methods []InterfaceMethod + Name string + func NewInterface(name string, methods []InterfaceMethod, docs ...Comment) *Interface + func (i *Interface) AddDocs(docs ...Comment) + func (i *Interface) AddMethod(m InterfaceMethod) + func (i *Interface) Code() *jen.Statement + func (i *Interface) Docs() []Comment + func (i *Interface) String() string + type InterfaceMethod Function + func NewInterfaceMethod(name string, options ...FunctionOptions) InterfaceMethod + func (m *InterfaceMethod) AddDocs(docs ...Comment) + func (m *InterfaceMethod) Code() *jen.Statement + func (m *InterfaceMethod) Docs() []Comment + func (m *InterfaceMethod) String() string + type Parameter struct + Name string + Type Type + func NewParameter(name string, tp Type) *Parameter + func (p *Parameter) AddDocs(_ ...Comment) + func (p *Parameter) Code() *jen.Statement + func (p *Parameter) Docs() []Comment + func (p *Parameter) String() string + type RawCode struct + func NewRawCode(code *jen.Statement) *RawCode + func (c *RawCode) AddDocs(_ ...Comment) + func (c *RawCode) Code() *jen.Statement + func (c *RawCode) Docs() []Comment + func (c *RawCode) String() string + type Struct struct + Fields []StructField + Name string + func NewStruct(name string, docs ...Comment) *Struct + func NewStructWithFields(name string, fields []StructField, docs ...Comment) *Struct + func (s *Struct) AddDocs(docs ...Comment) + func (s *Struct) Code() *jen.Statement + func (s *Struct) Docs() []Comment + func (s *Struct) String() string + type StructField struct + Tags *FieldTags + func NewStructField(name string, tp Type, docs ...Comment) *StructField + func NewStructFieldWithTag(name string, tp Type, tags *FieldTags, docs ...Comment) *StructField + func (s *StructField) Code() *jen.Statement + func (s *StructField) Docs() []Comment + func (s *StructField) String() string + type Type struct + Function *FunctionType + Import *Import + Pointer bool + Qualifier string + RawType *jen.Statement + Variadic bool + func NewRawType(tp *jen.Statement) Type + func NewType(qualifier string, options ...TypeOptions) Type + func (t Type) AddDocs(_ ...Comment) + func (t Type) Code() *jen.Statement + func (t Type) Docs() []Comment + func (t Type) String() string + type TypeOptions func(t *Type) + func FunctionTypeOption(m *FunctionType) TypeOptions + func ImportTypeOption(i *Import) TypeOptions + func PointerTypeOption() TypeOptions + func VariadicTypeOption() TypeOptions + type Var struct + Name string + Type Type + Value interface{} + func NewVar(name string, tp Type, docs ...Comment) *Var + func NewVarWithValue(name string, tp Type, value interface{}, docs ...Comment) *Var + func (v *Var) AddDocs(docs ...Comment) + func (v *Var) Code() *jen.Statement + func (v *Var) Docs() []Comment + func (v *Var) String() string