Documentation
¶
Index ¶
- func DeclareFileStub(fileIndex int, absFile string) string
- func DeclareFileStubForVar(fileIndex int, absFile string) string
- func DeclareFileStubGc(fileIndex int, absFile string) string
- func DeclareInitFunc(names PkgNames) string
- func DeclarePkgStubs(pkgPath string, names PkgNames) []string
- func GenerateRegCode(__xgo_init string, varDefs []string, varRegs []string, delayInits []string) string
- func JoinQuoteNames(names []string, sep string) string
- func JoinStmts(stmts ...string) string
- func QuoteNames(names []string) []string
- type Field
- type Fields
- type File
- type FileDecls
- type FileMapping
- type Func
- type FuncInfo
- type FuncMapping
- type Interface
- type InterfaceMapping
- type InterfaceType
- type Literal
- type Package
- type PackageMapping
- type Packages
- type PackagesMapping
- type PkgNames
- type Result
- type VarInfo
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func DeclareFileStub ¶
func DeclareFileStubForVar ¶
func DeclareFileStubGc ¶
func DeclareInitFunc ¶
make IR not inline check patch/link/link_ir.go
func DeclarePkgStubs ¶
func GenerateRegCode ¶
func JoinQuoteNames ¶
func QuoteNames ¶
Types ¶
type File ¶
type File struct {
Name string `json:"name,omitempty"`
AbsFile string `json:"absFile,omitempty"`
Funcs []*Func `json:"funcs,omitempty"`
Interfaces []*Interface `json:"interfaces,omitempty"`
}
func (*File) BuildMapping ¶
func (c *File) BuildMapping() *FileMapping
type FileDecls ¶
type FileDecls struct {
TrapFuncs []FuncInfo
TrapVars []VarInfo
InterfaceTypes []InterfaceType
}
type FileMapping ¶
type FileMapping struct {
Funcs map[string]*FuncMapping `json:"funcs,omitempty"`
Interfaces map[string]*InterfaceMapping `json:"interfaces,omitempty"`
}
type FuncMapping ¶
type FuncMapping struct{}
type InterfaceMapping ¶
type InterfaceMapping struct{}
type InterfaceType ¶
type Literal ¶
func DefineFuncLiteral ¶
func DefineIntfTypeLiteral ¶
func DefineIntfTypeLiteral(intfType *InterfaceType, stdlib bool, fileVar string, names PkgNames) Literal
type PackageMapping ¶
type PackageMapping struct {
HasVarTrap bool `json:"hasVarTrap,omitempty"`
Files map[string]*FileMapping `json:"files,omitempty"`
}
type Packages ¶
type Packages struct {
Packages []*Package `json:"packages,omitempty"`
}
func (*Packages) BuildLookup ¶
func (*Packages) BuildMD5SumMapping ¶
func (*Packages) BuildMapping ¶
func (c *Packages) BuildMapping() *PackagesMapping
type PackagesMapping ¶
type PackagesMapping struct {
Packages map[string]*PackageMapping `json:"packages,omitempty"`
}
mapping for efficient reading for large project, the mapping file can be as large as 6MB, be careful with the file size
func ParseMapping ¶
func ParseMapping(file string) (*PackagesMapping, error)
Click to show internal directories.
Click to hide internal directories.