Пример #1
0
def bipush(value):
    if value == -1:
        return u1(0x2)  # iconst_m1
    elif value == 0:
        return u1(0x3)  # iconst_0
    elif value == 1:
        return u1(0x4)  # iconst_1
    elif value == 2:
        return u1(0x5)  # iconst_2
    else:
        return u1(0x10) + s1(value)
Пример #2
0
def aload(idx):
    if idx == 0:
        return u1(0x2A)  # aload_0
    elif idx == 1:
        return u1(0x2B)  # aload_1
    elif idx == 2:
        return u1(0x2C)  # aload_2
    elif idx == 3:
        return u1(0x2D)  # aload_3
    else:
        return u1(0x19) + u1(idx)
Пример #3
0
def goto_w(offset):
    return u1(0xC8) + s4(offset)
Пример #4
0
def invokestatic(ref):
    return u1(0xB8) + u2(ref)
Пример #5
0
def invokevirtual(method):
    return u1(0xB6) + u2(method)
def name_and_type(name_index, descriptor_index):
    return u1(id_NameAndType) \
           + u2(name_index) \
           + u2(descriptor_index)
def field_ref(class_index, name_and_type_index):
    return u1(id_Fieldref) \
           + u2(class_index) \
           + u2(name_and_type_index)
def class_ref(name_index):
    return u1(id_Class) \
           + u2(name_index)
Пример #9
0
def i2l():
    return u1(0x85)
Пример #10
0
def putstatic(ref):
    return u1(0xB3) + u2(ref)
Пример #11
0
def putfield(ref):
    return u1(0xB5) + u2(ref)
Пример #12
0
def imul():
    return u1(0x68)
Пример #13
0
def iadd():
    return u1(0x60)
Пример #14
0
def swap():
    return u1(0x5F)
Пример #15
0
def voidreturn():
    return u1(0xB1)
Пример #16
0
def ifeq(offset):
    return u1(0x99) + s2(offset)
Пример #17
0
def nop():
    return u1(0)
Пример #18
0
def getfield(ref):
    return u1(0xB4) + u2(ref)
Пример #19
0
def lcmp():
    return u1(0x94)
Пример #20
0
def i2c():
    return u1(0x92)
def method_ref(class_index, name_and_type_index):
    return u1(id_Methodref) \
           + u2(class_index) \
           + u2(name_and_type_index)
Пример #22
0
def getstatic(field_index):
    return u1(0xB2) + u2(field_index)
def utf8(text):
    return u1(id_Utf8) \
           + u2(len(text)) \
           + str_to_byte(text)
Пример #24
0
def aaload():
    return u1(0x32)
def string(utf8str):
    return u1(id_String) \
           + u2(utf8str)
Пример #26
0
def ldc(const_index):
    return u1(0x12) + u1(const_index)