tree

package
v0.0.0-...-561e3ec Latest Latest
Warning

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

Go to latest
Published: Oct 18, 2015 License: MPL-2.0 Imports: 2 Imported by: 0

Documentation

Index

Constants

View Source
const (
	E_LOAD  = 1
	E_STORE = 2
)
View Source
const (
	E_TP_SCALAR = iota
)
View Source
const EmptyVS = VarSpaceImpl(0)

Variables

This section is empty.

Functions

func CheckExpr

func CheckExpr(t int, e ...Expression)

func CheckExprScalar

func CheckExprScalar(e ...Expression)

Types

type ArrayLkup

type ArrayLkup struct {
	Arg1, Arg2 Expression
	Tptr       TempReg
	// contains filtered or unexported fields
}

func (*ArrayLkup) Cap

func (b *ArrayLkup) Cap() int

func (*ArrayLkup) LSBegin

func (b *ArrayLkup) LSBegin(dest io.Writer)

func (*ArrayLkup) LSLoad

func (b *ArrayLkup) LSLoad() (expr string)

func (*ArrayLkup) LSStore

func (b *ArrayLkup) LSStore(dest io.Writer, expr string) (expr2 string)

func (*ArrayLkup) Load

func (b *ArrayLkup) Load(dest io.Writer) (expr string)

func (*ArrayLkup) Store

func (b *ArrayLkup) Store(dest io.Writer, expr string) (expr2 string)

func (ArrayLkup) Typ

func (n ArrayLkup) Typ() int

type Assign

type Assign struct {
	Arg1, Arg2 Expression
	// contains filtered or unexported fields
}

func (*Assign) Cap

func (b *Assign) Cap() int

func (Assign) LSBegin

func (n Assign) LSBegin(dest io.Writer)

func (Assign) LSLoad

func (n Assign) LSLoad() (expr string)

func (Assign) LSStore

func (n Assign) LSStore(dest io.Writer, expr string) (expr2 string)

func (*Assign) Load

func (b *Assign) Load(dest io.Writer) (expr string)

func (Assign) Store

func (n Assign) Store(dest io.Writer, expr string) (expr2 string)

func (Assign) Typ

func (n Assign) Typ() int

type BinOp

type BinOp struct {
	Arg1, Arg2 Expression
	Op         string
	// contains filtered or unexported fields
}

func (*BinOp) Cap

func (b *BinOp) Cap() int

func (BinOp) LSBegin

func (n BinOp) LSBegin(dest io.Writer)

func (BinOp) LSLoad

func (n BinOp) LSLoad() (expr string)

func (BinOp) LSStore

func (n BinOp) LSStore(dest io.Writer, expr string) (expr2 string)

func (*BinOp) Load

func (b *BinOp) Load(dest io.Writer) (expr string)

func (BinOp) Store

func (n BinOp) Store(dest io.Writer, expr string) (expr2 string)

func (BinOp) Typ

func (n BinOp) Typ() int

type Expression

type Expression interface {
	Cap() int
	Typ() int
	Load(dest io.Writer) (expr string)
	Store(dest io.Writer, expr string) (expr2 string)
	LSBegin(dest io.Writer)
	LSLoad() (expr string)
	LSStore(dest io.Writer, expr string) (expr2 string)
}

type ScalarLit

type ScalarLit struct {
	Data string
	// contains filtered or unexported fields
}

func (*ScalarLit) Cap

func (s *ScalarLit) Cap() int

func (ScalarLit) LSBegin

func (n ScalarLit) LSBegin(dest io.Writer)

func (ScalarLit) LSLoad

func (n ScalarLit) LSLoad() (expr string)

func (ScalarLit) LSStore

func (n ScalarLit) LSStore(dest io.Writer, expr string) (expr2 string)

func (*ScalarLit) Load

func (s *ScalarLit) Load(dest io.Writer) (expr string)

func (ScalarLit) Store

func (n ScalarLit) Store(dest io.Writer, expr string) (expr2 string)

func (ScalarLit) Typ

func (n ScalarLit) Typ() int

type ScalarVar

type ScalarVar struct {
	Name string
	// contains filtered or unexported fields
}

func (*ScalarVar) Cap

func (s *ScalarVar) Cap() int

func (*ScalarVar) LSBegin

func (s *ScalarVar) LSBegin(dest io.Writer)

func (*ScalarVar) LSLoad

func (s *ScalarVar) LSLoad() (expr string)

func (*ScalarVar) LSStore

func (s *ScalarVar) LSStore(dest io.Writer, expr string) (expr2 string)

func (*ScalarVar) Load

func (s *ScalarVar) Load(dest io.Writer) (expr string)

func (*ScalarVar) Store

func (s *ScalarVar) Store(dest io.Writer, expr string) (expr2 string)

func (ScalarVar) Typ

func (n ScalarVar) Typ() int

type TempReg

type TempReg interface {
	Reg(n int) string
	Add(n int)
}

type VarSpace

type VarSpace interface {
	DefineScalar(s string)
	Scalar(s string) Expression
}

type VarSpaceImpl

type VarSpaceImpl int

func (VarSpaceImpl) DefineScalar

func (v VarSpaceImpl) DefineScalar(s string)

func (VarSpaceImpl) Scalar

func (v VarSpaceImpl) Scalar(s string) Expression

Jump to

Keyboard shortcuts

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