def serialize(self): code = "" code += s_u32(self._cinit_index) code += s_u32(len(self.traits)) for trait in self.traits: code += trait.serialize() return code
def serialize(self): code = "" code += s_u32(self.from_) code += s_u32(self.to_) code += s_u32(self.target) code += s_u32(self._exc_type_index) code += s_u32(self._var_name_index) return code
def serialize_inner(self): code = "" code += s_u32(self.slot_id) code += s_u32(self._type_name_index) code += s_u32(self._default_index) if self._default_index: code += s_u32(self._default_kind) return code
def serialize(self): code = "" code += s_u32(self._name_index) code += s_u32(len(self.items)) for key_i in self._keys_indices: code += s_u32(key_i) for val_i in self._values_indices: code += s_u32(val_i) return code
def serialize(self): self.code.emit('returnvoid') # if self.optimize: # self.code.optimize() self.code.pass1() code = "" code += s_u32(self._method_info_index) code += s_u32(self.code.max_stack_depth) code += s_u32(self.code.max_local_count) code += s_u32(0) code += s_u32(self.code.max_scope_depth) body = self.code.serialize() code += s_u32(len(body)) code += body code += s_u32(len(self.exceptions)) for exc in self.exceptions or []: code += exc.serialize() code += s_u32(len(self.traits)) for trait in self.traits or []: code += trait.serialize() return code
def serialize(self): self.code.emit("returnvoid") # if self.optimize: # self.code.optimize() self.code.pass1() code = "" code += s_u32(self._method_info_index) code += s_u32(self.code.max_stack_depth) code += s_u32(self.code.max_local_count) code += s_u32(0) code += s_u32(self.code.max_scope_depth) body = self.code.serialize() code += s_u32(len(body)) code += body code += s_u32(len(self.exceptions)) for exc in self.exceptions or []: code += exc.serialize() code += s_u32(len(self.traits)) for trait in self.traits or []: code += trait.serialize() return code
def write_pool(pool, prefix_count=True): code = "" if prefix_count: code += s_u32(len(pool)) for item in pool: code += item.serialize() return code
def serialize(self): code = "" code += s_u32(len(self.param_types)) code += s_u32(self._return_type_index) code += ''.join(s_u32(index) for index in self._param_types_indices) code += s_u32(self._namestr_index) if self.options: self.flags |= MethodFlag.HasOptional if self.param_names: self.flags |= MethodFlag.HasParamNames if self.varargs: self.flags |= MethodFlag.NeedRest code += chr(self.flags & 0xFF) if self.options: code += s_u32(len(self.options)) for ctype, index in self._options_indices: code += s_u32(index) code += chr(ctype) if self.param_names: code += ''.join(s_u32(index) for index in self._param_names_indices) return code
def serialize(self): code = "" code += s_u32(self._name_index) code += s_u32(self._super_name_index) # Flags flags = BitStream() flags.write(Zero[4]) # first four bits = not defined flags.write(self.protectedNs != None) # 1000 = 0x08 = CLASSFLAG_ClassProtectedNs flags.write(self.is_interface) # 0100 = 0x04 = CLASSFLAG_ClassInterface flags.write(self.is_final) # 0010 = 0x02 = CLASSFLAG_ClassFinal flags.write(self.is_sealed) # 0001 = 0x01 = CLASSFLAG_ClassSealed code += flags.serialize() if self.protectedNs: code += s_u32(self._protectedNs_index) code += s_u32(len(self.interfaces)) for index in self._interface_indices: code += s_u32(index) code += s_u32(self._iinit_index) code += s_u32(len(self.traits)) for trait in self.traits: code += trait.serialize() return code
def serialize(self): code = "" code += s_u32(len(self.param_types)) code += s_u32(self._return_type_index) code += "".join(s_u32(index) for index in self._param_types_indices) code += s_u32(self._namestr_index) if self.options: self.flags |= MethodFlag.HasOptional if self.param_names: self.flags |= MethodFlag.HasParamNames if self.varargs: self.flags |= MethodFlag.NeedRest code += chr(self.flags & 0xFF) if self.options: code += s_u32(len(self.options)) for ctype, index in self._options_indices: code += s_u32(index) code += chr(ctype) if self.param_names: code += "".join(s_u32(index) for index in self._param_names_indices) return code
def serialize(self): code = "" code += s_u32(self._name_index) flags = BitStream() flags.write(False) flags.write(bool(self.metadata)) # Has Metadata flags.write(self.is_override) # Is Override flags.write(self.is_final) # Is Final flags.write(self.kind, UB[4]) # kind code += flags.serialize() code += self.serialize_inner() if self.metadata: code += s_u32(len(self.metadata)) for m in self._metadata_indices: code += s_u32(m) return code
def serialize_inner(self): return s_u32(self.slot_id) + s_u32(self._cls_index)
def serialize_inner(self): return s_u32(self.disp_id) + s_u32(self._method_index)
def serialize_inner(self): return s_u32(self.slot_id) + s_u32(self._function_index)