rtda

package
v1.9.0 Latest Latest
Warning

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

Go to latest
Published: Sep 20, 2020 License: Apache-2.0 Imports: 2 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Frame

type Frame struct {
	// contains filtered or unexported fields
}

func (Frame) LocalVars

func (self Frame) LocalVars() *LocalVars

func (Frame) Method added in v1.6.0

func (self Frame) Method() *heap.Method

func (Frame) NextPC added in v1.5.0

func (self Frame) NextPC() int

func (Frame) OperandStack

func (self Frame) OperandStack() *OperandStack

func (*Frame) RevertNextPC added in v1.8.0

func (self *Frame) RevertNextPC()

重置pc指针

func (*Frame) SetNextPC added in v1.5.0

func (self *Frame) SetNextPC(next int)

func (Frame) Thread added in v1.5.0

func (self Frame) Thread() *Thread

type LocalVars

type LocalVars struct {
	// contains filtered or unexported fields
}

func NewLocalVars added in v1.5.0

func NewLocalVars(maxLocals uint) *LocalVars

func (LocalVars) GetDouble

func (self LocalVars) GetDouble(index uint) float64

func (*LocalVars) GetFloat

func (self *LocalVars) GetFloat(index uint) float32

func (*LocalVars) GetInt

func (self *LocalVars) GetInt(index uint) int32

func (*LocalVars) GetLong

func (self *LocalVars) GetLong(index uint) int64

func (LocalVars) GetRef

func (self LocalVars) GetRef(index uint) *heap.Object

func (LocalVars) GetThis added in v1.9.0

func (self LocalVars) GetThis() *heap.Object

func (LocalVars) SetDouble

func (self LocalVars) SetDouble(index uint, val float64)

func (*LocalVars) SetFloat

func (self *LocalVars) SetFloat(index uint, val float32)

func (*LocalVars) SetInt

func (self *LocalVars) SetInt(index uint, val int32)

func (*LocalVars) SetLong

func (self *LocalVars) SetLong(index uint, val int64)

func (LocalVars) SetRef

func (self LocalVars) SetRef(index uint, ref *heap.Object)

func (LocalVars) SetSlot added in v1.7.0

func (self LocalVars) SetSlot(index uint, slot Slot)

type OperandStack

type OperandStack struct {
	// contains filtered or unexported fields
}

func NewOperandStack added in v1.5.0

func NewOperandStack(maxStack uint) *OperandStack

func (*OperandStack) GetRefFromTop added in v1.7.0

func (self *OperandStack) GetRefFromTop(n uint) *heap.Object

获取距离top n个距离的引用 比如GetRefFromTop(0)获取栈顶的引用 比如GetRefFromTop(1)获取距离栈顶1个单位长度的引用

func (*OperandStack) PopBoolean added in v1.9.0

func (self *OperandStack) PopBoolean() bool

func (*OperandStack) PopDouble

func (self *OperandStack) PopDouble() float64

func (*OperandStack) PopFloat

func (self *OperandStack) PopFloat() float32

func (*OperandStack) PopInt

func (self *OperandStack) PopInt() int32

func (*OperandStack) PopLong

func (self *OperandStack) PopLong() int64

func (*OperandStack) PopRef

func (self *OperandStack) PopRef() *heap.Object

func (*OperandStack) PopSlot added in v1.5.0

func (self *OperandStack) PopSlot() Slot

reduce the OperandStack size the operandStack size - 1

func (*OperandStack) PushBoolean added in v1.9.0

func (self *OperandStack) PushBoolean(val bool)

func (*OperandStack) PushDouble

func (self *OperandStack) PushDouble(val float64)

func (*OperandStack) PushFloat

func (self *OperandStack) PushFloat(val float32)

func (*OperandStack) PushInt

func (self *OperandStack) PushInt(val int32)

func (*OperandStack) PushLong

func (self *OperandStack) PushLong(val int64)

func (*OperandStack) PushRef

func (self *OperandStack) PushRef(ref *heap.Object)

func (*OperandStack) PushSlot added in v1.5.0

func (self *OperandStack) PushSlot(slot Slot)

extend OperandStack size the operandStack size + 1

type Slot

type Slot struct {
	// contains filtered or unexported fields
}

type Stack

type Stack struct {
	// contains filtered or unexported fields
}

虚拟机栈是JVM运行时数据区的一部分,线程私有 主要存储方法的栈桢 Frame

type Thread

type Thread struct {
	// contains filtered or unexported fields
}

线程

func NewThread

func NewThread() *Thread

创建新的线程 线程的栈大小为1024字节

func (*Thread) CurrentFrame

func (self *Thread) CurrentFrame() *Frame

获取当前虚拟机栈栈顶的栈桢

func (*Thread) IsStackEmpty added in v1.7.0

func (self *Thread) IsStackEmpty() bool

func (*Thread) NewFrame added in v1.5.0

func (self *Thread) NewFrame(method *heap.Method) *Frame

func (*Thread) PC added in v1.5.0

func (self *Thread) PC() int

func (*Thread) PopFrame

func (self *Thread) PopFrame() *Frame

虚拟机栈弹出栈桢

func (*Thread) PushFrame

func (self *Thread) PushFrame(frame *Frame)

线程的虚拟机栈压入栈桢

func (*Thread) SetPC added in v1.5.0

func (self *Thread) SetPC(pc int)

func (*Thread) TopFrame added in v1.7.0

func (self *Thread) TopFrame() *Frame

虚拟机顶的栈帧

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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