tools

package
v0.0.0-...-f895429 Latest Latest
Warning

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

Go to latest
Published: Apr 4, 2021 License: Apache-2.0 Imports: 10 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Generator

type Generator struct {
	GenProxy   bool
	PackageDir string
	Filter     *regexp.Regexp
}

Generator generate cqrs proxy and provider

func NewGenerator

func NewGenerator() *Generator

NewGenerator creates new generator

func (*Generator) GenerateProvider

func (gen *Generator) GenerateProvider(pkgName string, objInfo *ObjInfo) *jen.File

GenerateProvider generate provider

func (*Generator) GenerateProxy

func (gen *Generator) GenerateProxy(infObj *ObjInfo) *jen.File

GenerateProxy generates proxy

func (*Generator) GetInfObj

func (gen *Generator) GetInfObj(pkgName string, inputObj types.Object) *ObjInfo

GetInfObj get interface object information

func (*Generator) GetStructObj

func (gen *Generator) GetStructObj(pkgName string, inputObj types.Object) *ObjInfo

GetStructObj get struct info object

func (*Generator) ListInterfaces

func (gen *Generator) ListInterfaces(pkg *packages.Package) []types.Object

ListInterfaces to generate proxy

func (*Generator) ListStructs

func (gen *Generator) ListStructs(pkg *packages.Package) []types.Object

ListStructs list struct to generate provider

func (*Generator) LoadPackage

func (gen *Generator) LoadPackage() *packages.Package

LoadPackage load package information

func (*Generator) WriteFile

func (gen *Generator) WriteFile(f *jen.File)

WriteFile generates file

type Method

type Method struct {
	Name    string
	KeyName string
	Args    []*Param
	Rets    []*Param
}

Method information struct

type ObjInfo

type ObjInfo struct {
	PackageName     string
	FullPackageName string
	Name            string
	Methods         []*Method
}

ObjInfo interface information

type Param

type Param struct {
	Name      string
	Type      string
	Package   string
	IsPointer bool
}

Param argument or return name and type of a inputMethod

Jump to

Keyboard shortcuts

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