Versions in this module Expand all Collapse all go1 go1.18.10 Jan 10, 2023 Changes in this version + const BADWIDTH + const BOGUS_FUNARG_OFFSET + const CMPeq + const CMPgt + const CMPlt + const CountBlankFields + const IgnoreBlankFields + const MaxPkgHeight + var AnyType *Type + var BasicTypeNames = []string + var Block int32 = 1 + var ByteType *Type + var CalcSizeDisabled bool + var ComparableType *Type + var ErrorType *Type + var IsComplex [NTYPE]bool + var IsFloat [NTYPE]bool + var IsInt [NTYPE]bool + var IsOrdered [NTYPE]bool + var IsSimple [NTYPE]bool + var MaxWidth int64 + var NewPtrCacheEnabled = true + var NumImport = make(map[string]int) + var ParamsResults = [2]func(*Type) *Type + var PtrSize int + var RecvsParams = [2]func(*Type) *Type + var RecvsParamsResults = [3]func(*Type) *Type + var RegSize int + var RuneType *Type + var ShapePkg = NewPkg("go.shape", "go.shape") + var SimType [NTYPE]Kind + var SkipSizeForTracing bool + var SliceCapOffset int64 + var SliceLenOffset int64 + var SlicePtrOffset int64 + var SliceSize int64 + var StringSize int64 + var TypeFlags = newSSA("flags") + var TypeInt128 = newSSA("int128") + var TypeInvalid = newSSA("invalid") + var TypeMem = newSSA("mem") + var TypeResultMem = newResults([]*Type{ ... }) + var TypeVoid = newSSA("void") + var Types [NTYPE]*Type + var UntypedBool = newType(TBOOL) + var UntypedComplex = newType(TIDEAL) + var UntypedFloat = newType(TIDEAL) + var UntypedInt = newType(TIDEAL) + var UntypedRune = newType(TIDEAL) + var UntypedString = newType(TSTRING) + func AlgType(t *Type) (AlgKind, *Type) + func AllowsGoVersion(pkg *Pkg, major, minor int) bool + func CalcSize(t *Type) + func CalcStructSize(s *Type) + func CheckDclstack() + func CheckSize(t *Type) + func CleanroomDo(f func()) + func DeferCheckSize() + func FmtConst(v constant.Value, sharp bool) string + func Identical(t1, t2 *Type) bool + func IdenticalIgnoreTags(t1, t2 *Type) bool + func IdenticalStrict(t1, t2 *Type) bool + func InitTypes(defTypeName func(sym *Sym, typ *Type) Object) + func InternString(b []byte) string + func IsComparable(t *Type) bool + func IsDirectIface(t *Type) bool + func IsExported(name string) bool + func IsInterfaceMethod(f *Type) bool + func IsMethodApplicable(t *Type, m *Field) bool + func IsPaddedField(t *Type, i int) bool + func IsReflectPkg(p *Pkg) bool + func IsReflexive(t *Type) bool + func IsRuntimePkg(p *Pkg) bool + func Markdcl() + func ParseLangFlag() + func Popdcl() + func PtrDataSize(t *Type) int64 + func Pushdcl(s *Sym) + func RecalcSize(t *Type) + func ResumeCheckSize() + func Rnd(o int64, r int64) int64 + func TypeHasNoAlg(t *Type) bool + func TypeHash(t *Type) uint32 + func TypeSymName(t *Type) string + type AlgKind int + const ACPLX128 + const ACPLX64 + const AFLOAT32 + const AFLOAT64 + const AINTER + const AMEM + const AMEM0 + const AMEM128 + const AMEM16 + const AMEM32 + const AMEM64 + const AMEM8 + const ANILINTER + const ANOEQ + const ASPECIAL + const ASTRING + func (i AlgKind) String() string + type Array struct + Bound int64 + Elem *Type + type Chan struct + Dir ChanDir + Elem *Type + type ChanArgs struct + T *Type + type ChanDir uint8 + const Cboth + const Crecv + const Csend + func (c ChanDir) CanRecv() bool + func (c ChanDir) CanSend() bool + type Cmp int8 + type EmbeddedsByName []*Field + func (x EmbeddedsByName) Len() int + func (x EmbeddedsByName) Less(i, j int) bool + func (x EmbeddedsByName) Swap(i, j int) + type Field struct + Embedded uint8 + Nname Object + Note string + Offset int64 + Pos src.XPos + Sym *Sym + Type *Type + func FakeRecv() *Field + func IncomparableField(t *Type) *Field + func NewField(pos src.XPos, sym *Sym, typ *Type) *Field + func (f *Field) Broke() bool + func (f *Field) Copy() *Field + func (f *Field) End() int64 + func (f *Field) IsDDD() bool + func (f *Field) IsMethod() bool + func (f *Field) Nointerface() bool + func (f *Field) SetBroke(b bool) + func (f *Field) SetIsDDD(b bool) + func (f *Field) SetNointerface(b bool) + type Fields struct + func (f *Fields) Append(s ...*Field) + func (f *Fields) Index(i int) *Field + func (f *Fields) Len() int + func (f *Fields) Set(s []*Field) + func (f *Fields) Slice() []*Field + type Forward struct + Copyto []*Type + Embedlineno src.XPos + type Funarg uint8 + const FunargNone + const FunargParams + const FunargRcvr + const FunargResults + const FunargTparams + type Func struct + Argwid int64 + Params *Type + Receiver *Type + Results *Type + TParams *Type + type FuncArgs struct + T *Type + type Interface struct + type Kind uint8 + const NTYPE + const TANY + const TARRAY + const TBLANK + const TBOOL + const TCHAN + const TCHANARGS + const TCOMPLEX128 + const TCOMPLEX64 + const TFLOAT32 + const TFLOAT64 + const TFORW + const TFUNC + const TFUNCARGS + const TIDEAL + const TINT + const TINT16 + const TINT32 + const TINT64 + const TINT8 + const TINTER + const TMAP + const TNIL + const TPTR + const TRESULTS + const TSLICE + const TSSA + const TSTRING + const TSTRUCT + const TTUPLE + const TTYPEPARAM + const TUINT + const TUINT16 + const TUINT32 + const TUINT64 + const TUINT8 + const TUINTPTR + const TUNION + const TUNSAFEPTR + const Txxx + func (i Kind) String() string + type Map struct + Bucket *Type + Elem *Type + Hiter *Type + Hmap *Type + Key *Type + type MethodsByName []*Field + func (x MethodsByName) Len() int + func (x MethodsByName) Less(i, j int) bool + func (x MethodsByName) Swap(i, j int) + type Object interface + Pos func() src.XPos + Sym func() *Sym + Type func() *Type + type Pkg struct + Direct bool + Height int + Name string + Path string + Pathsym *obj.LSym + Prefix string + Syms map[string]*Sym + var BuiltinPkg *Pkg + var LocalPkg *Pkg + var NoPkg *Pkg = nil + var UnsafePkg *Pkg + func ImportedPkgList() []*Pkg + func NewPkg(path, name string) *Pkg + func (pkg *Pkg) Lookup(name string) *Sym + func (pkg *Pkg) LookupBytes(name []byte) *Sym + func (pkg *Pkg) LookupOK(name string) (s *Sym, existed bool) + type Ptr struct + Elem *Type + type Results struct + Types []*Type + type Slice struct + Elem *Type + type Struct struct + Funarg Funarg + Map *Type + type Sym struct + Block int32 + Def Object + Lastlineno src.XPos + Linkname string + Name string + Pkg *Pkg + var BlankSym *Sym + func OrigSym(s *Sym) *Sym + func TypeSym(t *Type) *Sym + func TypeSymLookup(name string) *Sym + func (a *Sym) Less(b *Sym) bool + func (s *Sym) Format(f fmt.State, verb rune) + func (s *Sym) PkgDef() Object + func (s *Sym) SetPkgDef(n Object) + func (s *Sym) String() string + func (sym *Sym) Asm() bool + func (sym *Sym) Func() bool + func (sym *Sym) IsBlank() bool + func (sym *Sym) Linksym() *obj.LSym + func (sym *Sym) LinksymABI(abi obj.ABI) *obj.LSym + func (sym *Sym) OnExportList() bool + func (sym *Sym) SetAsm(b bool) + func (sym *Sym) SetFunc(b bool) + func (sym *Sym) SetOnExportList(b bool) + func (sym *Sym) SetSiggen(b bool) + func (sym *Sym) SetUniq(b bool) + func (sym *Sym) Siggen() bool + func (sym *Sym) Uniq() bool + type Tuple struct + type Type struct + func ComplexForFloat(t *Type) *Type + func FakeRecvType() *Type + func FloatForComplex(t *Type) *Type + func NewArray(elem *Type, bound int64) *Type + func NewChan(elem *Type, dir ChanDir) *Type + func NewChanArgs(c *Type) *Type + func NewFuncArgs(f *Type) *Type + func NewInterface(pkg *Pkg, methods []*Field, implicit bool) *Type + func NewMap(k, v *Type) *Type + func NewNamed(obj TypeObject) *Type + func NewPtr(elem *Type) *Type + func NewResults(types []*Type) *Type + func NewSignature(pkg *Pkg, recv *Field, tparams, params, results []*Field) *Type + func NewSlice(elem *Type) *Type + func NewStruct(pkg *Pkg, fields []*Field) *Type + func NewTuple(t1, t2 *Type) *Type + func NewTypeParam(sym *Sym, index int) *Type + func NewUnion(terms []*Type, tildes []bool) *Type + func ReceiverBaseType(t *Type) *Type + func SubstAny(t *Type, types *[]*Type) *Type + func (*Type) CanBeAnSSAAux() + func (t *Type) Alignment() int64 + func (t *Type) AllMethods() *Fields + func (t *Type) ArgWidth() int64 + func (t *Type) Bound() *Type + func (t *Type) Broke() bool + func (t *Type) ChanArgs() *Type + func (t *Type) ChanDir() ChanDir + func (t *Type) ChanType() *Chan + func (t *Type) Compare(x *Type) Cmp + func (t *Type) Deferwidth() bool + func (t *Type) Elem() *Type + func (t *Type) Field(i int) *Field + func (t *Type) FieldName(i int) string + func (t *Type) FieldOff(i int) int64 + func (t *Type) FieldSlice() []*Field + func (t *Type) FieldType(i int) *Type + func (t *Type) Fields() *Fields + func (t *Type) Format(s fmt.State, verb rune) + func (t *Type) ForwardType() *Forward + func (t *Type) FuncArgs() *Type + func (t *Type) FuncType() *Func + func (t *Type) HasNil() bool + func (t *Type) HasPointers() bool + func (t *Type) HasShape() bool + func (t *Type) HasTParam() bool + func (t *Type) Index() int + func (t *Type) IsArray() bool + func (t *Type) IsBaseGeneric() bool + func (t *Type) IsBoolean() bool + func (t *Type) IsChan() bool + func (t *Type) IsComplex() bool + func (t *Type) IsEmptyInterface() bool + func (t *Type) IsFlags() bool + func (t *Type) IsFloat() bool + func (t *Type) IsFullyInstantiated() bool + func (t *Type) IsFuncArgStruct() bool + func (t *Type) IsImplicit() bool + func (t *Type) IsInstantiatedGeneric() bool + func (t *Type) IsInteger() bool + func (t *Type) IsInterface() bool + func (t *Type) IsKind(et Kind) bool + func (t *Type) IsMap() bool + func (t *Type) IsMemory() bool + func (t *Type) IsPtr() bool + func (t *Type) IsPtrElem() bool + func (t *Type) IsPtrShaped() bool + func (t *Type) IsResults() bool + func (t *Type) IsScalar() bool + func (t *Type) IsShape() bool + func (t *Type) IsSigned() bool + func (t *Type) IsSlice() bool + func (t *Type) IsString() bool + func (t *Type) IsStruct() bool + func (t *Type) IsTuple() bool + func (t *Type) IsTypeParam() bool + func (t *Type) IsUintptr() bool + func (t *Type) IsUnion() bool + func (t *Type) IsUnsafePtr() bool + func (t *Type) IsUnsigned() bool + func (t *Type) IsUntyped() bool + func (t *Type) IsVariadic() bool + func (t *Type) IsVoid() bool + func (t *Type) Key() *Type + func (t *Type) Kind() Kind + func (t *Type) LinkString() string + func (t *Type) MapType() *Map + func (t *Type) MarkImplicit() + func (t *Type) Methods() *Fields + func (t *Type) NameString() string + func (t *Type) Noalg() bool + func (t *Type) NotInHeap() bool + func (t *Type) NumComponents(countBlank componentsIncludeBlankFields) int64 + func (t *Type) NumElem() int64 + func (t *Type) NumFields() int + func (t *Type) NumParams() int + func (t *Type) NumRecvs() int + func (t *Type) NumResults() int + func (t *Type) NumTParams() int + func (t *Type) NumTerms() int + func (t *Type) Obj() Object + func (t *Type) OrigType() *Type + func (t *Type) Params() *Type + func (t *Type) Pkg() *Pkg + func (t *Type) Pos() src.XPos + func (t *Type) PtrTo() *Type + func (t *Type) RParams() []*Type + func (t *Type) Recur() bool + func (t *Type) Recv() *Field + func (t *Type) Recvs() *Type + func (t *Type) Results() *Type + func (t *Type) SetAllMethods(fs []*Field) + func (t *Type) SetBound(bound *Type) + func (t *Type) SetBroke(b bool) + func (t *Type) SetDeferwidth(b bool) + func (t *Type) SetFields(fields []*Field) + func (t *Type) SetHasShape(b bool) + func (t *Type) SetHasTParam(b bool) + func (t *Type) SetIndex(i int) + func (t *Type) SetInterface(methods []*Field) + func (t *Type) SetIsShape(b bool) + func (t *Type) SetNoalg(b bool) + func (t *Type) SetNod(n Object) + func (t *Type) SetNotInHeap(b bool) + func (t *Type) SetOrigType(orig *Type) + func (t *Type) SetRParams(rparams []*Type) + func (t *Type) SetRecur(b bool) + func (t *Type) SetSym(sym *Sym) + func (t *Type) SetUnderlying(underlying *Type) + func (t *Type) SetVargen() + func (t *Type) SimpleString() string + func (t *Type) Size() int64 + func (t *Type) SoleComponent() *Type + func (t *Type) String() string + func (t *Type) StructType() *Struct + func (t *Type) StructuralType() *Type + func (t *Type) Sym() *Sym + func (t *Type) TParams() *Type + func (t *Type) Term(i int) (*Type, bool) + func (t *Type) ToUnsigned() *Type + func (t *Type) Underlying() *Type + type TypeObject interface + TypeDefn func() *Type + type Typeparam struct + type Union struct