tt/ttir/ttir.go
2025-01-20 16:17:30 +01:00

34 lines
423 B
Go

package ttir
type Program struct {
Functions []Function
}
type Function struct {
Name string
Instructions []Instruction
}
type Instruction interface {
String() string
instruction()
}
type Ret struct {
op Operand
}
func (r *Ret) String() {}
func (r *Ret) instruction() {}
type Operand interface {
String() string
operand()
}
type Constant struct {
Value int64
}
func (c *Constant) operand() {}