references

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: 4 Imported by: 0

Documentation

Index

Constants

View Source
const (
	//Array Type  atype
	AT_BOOLEAN = 4
	AT_CHAR    = 5
	AT_FLOAT   = 6
	AT_DOUBLE  = 7
	AT_BYTE    = 8
	AT_SHORT   = 9
	AT_INT     = 10
	AT_LONG    = 11
)

Variables

This section is empty.

Functions

This section is empty.

Types

type ANEW_ARRAY added in v1.8.0

type ANEW_ARRAY struct{ base.Index16Instruction }

Create new array of reference 引用类型数组需要两个操作数 第一个16位操作数用来表示从当前类的运行时常量池中找到类符号引用 第二个操作数是数组长度

func (*ANEW_ARRAY) Execute added in v1.8.0

func (self *ANEW_ARRAY) Execute(frame *rtda.Frame)

type ARRAY_LENGTH added in v1.8.0

type ARRAY_LENGTH struct{ base.NoOperandsInstruction }

Get length of array

func (*ARRAY_LENGTH) Execute added in v1.8.0

func (self *ARRAY_LENGTH) Execute(frame *rtda.Frame)

type CHECK_CAST

type CHECK_CAST struct{ base.Index16Instruction }

func (*CHECK_CAST) Execute

func (self *CHECK_CAST) Execute(frame *rtda.Frame)

type GET_FIELD

type GET_FIELD struct{ base.Index16Instruction }

func (*GET_FIELD) Execute

func (self *GET_FIELD) Execute(frame *rtda.Frame)

type GET_STATIC

type GET_STATIC struct{ base.Index16Instruction }

func (*GET_STATIC) Execute

func (self *GET_STATIC) Execute(frame *rtda.Frame)

type INSTANCE_OF

type INSTANCE_OF struct{ base.Index16Instruction }

func (*INSTANCE_OF) Execute

func (self *INSTANCE_OF) Execute(frame *rtda.Frame)

type INVOKE_INTERFACE added in v1.7.0

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

用于调用接口方法

func (*INVOKE_INTERFACE) Execute added in v1.7.0

func (self *INVOKE_INTERFACE) Execute(frame *rtda.Frame)

func (*INVOKE_INTERFACE) FetchOperands added in v1.7.0

func (self *INVOKE_INTERFACE) FetchOperands(reader *base.BytecodeReader)

invoke_interface指令需要读取32位的操作码 前2字节和其他指令一样,作为运行池索引 后两个字节中,第一个字节表示方法参数数量,第二个字节留给oracle的某些虚拟机实现使用的

type INVOKE_SPECIAL

type INVOKE_SPECIAL struct{ base.Index16Instruction }

用于调用构造函数

func (*INVOKE_SPECIAL) Execute

func (self *INVOKE_SPECIAL) Execute(frame *rtda.Frame)

type INVOKE_STATIC added in v1.7.0

type INVOKE_STATIC struct{ base.Index16Instruction }

调用静态方法

func (*INVOKE_STATIC) Execute added in v1.7.0

func (self *INVOKE_STATIC) Execute(frame *rtda.Frame)

type INVOKE_VIRTUAL

type INVOKE_VIRTUAL struct{ base.Index16Instruction }

invoke_virtual用来调用实例方法

func (*INVOKE_VIRTUAL) Execute

func (self *INVOKE_VIRTUAL) Execute(frame *rtda.Frame)

type MULTI_ANEW_ARRAY added in v1.8.0

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

Create new multidimensional array

func (*MULTI_ANEW_ARRAY) Execute added in v1.8.0

func (self *MULTI_ANEW_ARRAY) Execute(frame *rtda.Frame)

func (*MULTI_ANEW_ARRAY) FetchOperands added in v1.8.0

func (self *MULTI_ANEW_ARRAY) FetchOperands(reader *base.BytecodeReader)

type NEW

type NEW struct {
	base.Index16Instruction
}

func (*NEW) Execute

func (self *NEW) Execute(frame *rtda.Frame)

NEW指令执行

type NEW_ARRAY added in v1.8.0

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

Create new array newarray需要两个操作数 第一个操作数表示数组的类型 type 第二个操作数表示数组的长度 count

func (*NEW_ARRAY) Execute added in v1.8.0

func (self *NEW_ARRAY) Execute(frame *rtda.Frame)

func (*NEW_ARRAY) FetchOperands added in v1.8.0

func (self *NEW_ARRAY) FetchOperands(reader *base.BytecodeReader)

获取type

type PUT_FIELD

type PUT_FIELD struct{ base.Index16Instruction }

func (*PUT_FIELD) Execute

func (self *PUT_FIELD) Execute(frame *rtda.Frame)

type PUT_STATIC

type PUT_STATIC struct {
	base.Index16Instruction
}

* putstatic要给静态变量赋值

func (PUT_STATIC) Execute

func (self PUT_STATIC) Execute(frame *rtda.Frame)

Jump to

Keyboard shortcuts

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