Versions in this module Expand all Collapse all v0 v0.0.11 Aug 27, 2021 v0.0.10 Aug 27, 2021 v0.0.9 Aug 25, 2021 v0.0.8 Aug 23, 2021 v0.0.7 Aug 23, 2021 v0.0.6 Aug 22, 2021 v0.0.5 Aug 21, 2021 v0.0.4 Aug 21, 2021 Changes in this version type Model + func (mod *Model) AddAddressOf(a, b Loc) v0.0.3 Aug 18, 2021 Changes in this version + type GenParams struct + func NewGenParams(ts *typeset.TypeSet) *GenParams + func (p *GenParams) Attrs(a Attrs) *GenParams + func (p *GenParams) Class(c Class) *GenParams + func (p *GenParams) GoType(t types.Type) *GenParams + func (p *GenParams) Pos(pos token.Pos) *GenParams + func (p *GenParams) Reset() *GenParams + func (p *GenParams) Type(t typeset.Type) *GenParams type Model + func (mod *Model) Gen(gp *GenParams) Loc + func (mod *Model) Lsize(m Loc) int + func (mod *Model) Type(m Loc) typeset.Type + func (mod *Model) WithPointer(gp *GenParams) (obj, ptr Loc) + type PlainPos token.Pos + func (p *PlainPos) PlainDecode(r io.Reader) error + func (p PlainPos) PlainEncode(w io.Writer) error v0.0.2 Aug 16, 2021 v0.0.1 Aug 15, 2021 Changes in this version + const NoLoc + type Attrs byte + const IsFunc + const IsOpaque + const IsParam + const IsReturn + const NoAttrs + func (a *Attrs) PlainDecode(r io.Reader) error + func (a Attrs) IsFunc() bool + func (a Attrs) IsOpaque() bool + func (a Attrs) IsParam() bool + func (a Attrs) IsReturn() bool + func (a Attrs) PlainEncode(w io.Writer) error + func (a Attrs) String() string + type Class byte + const Global + const Heap + const Local + const Zero + func (c *Class) PlainDecode(r io.Reader) error + func (c Class) PlainEncode(w io.Writer) error + func (c Class) String() string + type Constraint struct + Dest Loc + Index indexing.I + Kind ConstraintKind + Src Loc + func AddressOf(dst, src Loc) Constraint + func Load(dst, src Loc) Constraint + func Store(dst, src Loc) Constraint + func Transfer(dst, src Loc) Constraint + func TransferIndex(dst, src Loc, i indexing.I) Constraint + func (c *Constraint) PlainDecode(r io.Reader) error + func (c *Constraint) PlainEncode(w io.Writer) error + type ConstraintKind int + const KAddressOf + const KLoad + const KStore + const KTransfer + func (ck *ConstraintKind) PlainDecode(r io.Reader) error + func (ck ConstraintKind) PlainEncode(w io.Writer) error + type Loc uint32 + func (m *Loc) PlainDecode(r io.Reader) error + func (m Loc) PlainEncode(w io.Writer) error + type Model struct + func NewModel(index indexing.T) *Model + func (mod *Model) AddAttrs(m Loc, a Attrs) + func (mod *Model) AddLoad(dst, src Loc) + func (mod *Model) AddPointsTo(a, b Loc) + func (mod *Model) AddStore(dst, src Loc) + func (mod *Model) AddTransfer(dst, src Loc) + func (mod *Model) AddTransferIndex(dst, src Loc, i indexing.I) + func (mod *Model) ArrayIndex(m Loc, i int) Loc + func (mod *Model) At(i int) Loc + func (mod *Model) Attrs(m Loc) Attrs + func (mod *Model) Cap(c int) + func (mod *Model) Check() error + func (mod *Model) Equals(a, b Loc) xtruth.T + func (mod *Model) Export(perm []Loc) []Loc + func (mod *Model) Field(m Loc, i int) Loc + func (mod *Model) GenRoot(ty types.Type, class Class, attrs Attrs, sk SrcKind, pos token.Pos) Loc + func (mod *Model) GenWithPointer(ty types.Type, c Class, as Attrs, sk SrcKind, pos token.Pos) (obj, ptr Loc) + func (mod *Model) Import(other *Model) + func (mod *Model) IsRoot(m Loc) bool + func (mod *Model) Len() int + func (mod *Model) Obj(ptr Loc) Loc + func (mod *Model) Overlaps(a, b Loc) xtruth.T + func (mod *Model) Parent(m Loc) Loc + func (mod *Model) PlainCoderAt(i int) plain.Coder + func (mod *Model) PlainDecode(r io.Reader) error + func (mod *Model) PlainDecodeConstraints(r io.Reader) error + func (mod *Model) PlainEncode(w io.Writer) error + func (mod *Model) PlainEncodeConstraints(w io.Writer) error + func (mod *Model) PointsToFor(dst []Loc, p Loc) []Loc + func (mod *Model) Pos(m Loc) token.Pos + func (mod *Model) Root(m Loc) Loc + func (mod *Model) SetAttrs(m Loc, a Attrs) + func (mod *Model) SetObj(ptr, dst Loc) + func (mod *Model) Solve() + func (mod *Model) SrcInfo(m Loc) *SrcInfo + func (mod *Model) SrcKind(m Loc) SrcKind + func (mod *Model) VSize(m Loc) indexing.I + func (mod *Model) Zero() Loc + type SrcInfo struct + Kind SrcKind + Pos token.Pos + func (si *SrcInfo) PlainDecode(r io.Reader) error + func (si *SrcInfo) PlainEncode(w io.Writer) error + type SrcKind int + const SrcAddressOf + const SrcFunc + const SrcMakeChan + const SrcMakeClosure + const SrcMakeInterface + const SrcMakeMap + const SrcMakeSlice + const SrcNew + const SrcVar + func (k *SrcKind) PlainDecode(r io.Reader) error + func (k SrcKind) PlainEncode(w io.Writer) error + func (k SrcKind) String() string