Documentation ¶
Index ¶
Constants ¶
View Source
const ( 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 ¶
type ANEW_ARRAY struct{ base.Index16Instruction }
Create new array of reference
func (*ANEW_ARRAY) Execute ¶
func (self *ANEW_ARRAY) Execute(frame *rtda.Frame)
type ARRAY_LENGTH ¶
type ARRAY_LENGTH struct{ base.NoOperandsInstruction }
ARRAY_LENGTH Get length of array
func (*ARRAY_LENGTH) Execute ¶
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 }
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 ¶
type INVOKE_INTERFACE struct {
// contains filtered or unexported fields
}
Invoke interface method
func (*INVOKE_INTERFACE) Execute ¶
func (self *INVOKE_INTERFACE) Execute(frame *rtda.Frame)
func (*INVOKE_INTERFACE) FetchOperands ¶
func (self *INVOKE_INTERFACE) FetchOperands(reader *base.BytecodeReader)
type INVOKE_SPECIAL ¶
type INVOKE_SPECIAL struct{ base.Index16Instruction }
INVOKE_SPECIAL Invoke instance method; special handling for superclass, private, and instance initialization method invocations
func (*INVOKE_SPECIAL) Execute ¶
func (self *INVOKE_SPECIAL) Execute(frame *rtda.Frame)
type INVOKE_STATIC ¶
type INVOKE_STATIC struct{ base.Index16Instruction }
INVOKE_STATIC Invoke a class (static) method
func (*INVOKE_STATIC) Execute ¶
func (self *INVOKE_STATIC) Execute(frame *rtda.Frame)
type INVOKE_VIRTUAL ¶
type INVOKE_VIRTUAL struct{ base.Index16Instruction }
INVOKE_VIRTUAL Invoke instance method; dispatch based on class
func (*INVOKE_VIRTUAL) Execute ¶
func (self *INVOKE_VIRTUAL) Execute(frame *rtda.Frame)
type MULTI_ANEW_ARRAY ¶
type MULTI_ANEW_ARRAY struct {
// contains filtered or unexported fields
}
MULTI_ANEW_ARRAY Create new multidimensional array
func (*MULTI_ANEW_ARRAY) Execute ¶
func (self *MULTI_ANEW_ARRAY) Execute(frame *rtda.Frame)
func (*MULTI_ANEW_ARRAY) FetchOperands ¶
func (self *MULTI_ANEW_ARRAY) FetchOperands(reader *base.BytecodeReader)
type NEW ¶
type NEW struct {
base.Index16Instruction
}
NEW * new指令的操作数是一个uint16索引,来自字节码。通过这个索 引,可以从当前类的运行时常量池中找到一个类符号引用。解析这 个类符号引用,拿到类数据,然后创建对象,并把对象引用推入栈 顶,new指令的工作就完成了.
type NEW_ARRAY ¶
type NEW_ARRAY struct {
// contains filtered or unexported fields
}
Create new array
func (*NEW_ARRAY) FetchOperands ¶
func (self *NEW_ARRAY) FetchOperands(reader *base.BytecodeReader)
type PUT_STATIC ¶
type PUT_STATIC struct{ base.Index16Instruction }
PUT_STATIC Set static field in class
func (*PUT_STATIC) Execute ¶
func (self *PUT_STATIC) Execute(frame *rtda.Frame)
Click to show internal directories.
Click to hide internal directories.