Lines Matching defs:const

59     void Disassemble(const std::string &filename_in, const bool quiet = false, const bool skip_strings = false);
61 void Serialize(std::ostream &os, bool add_separators = false, bool print_information = false) const;
63 static inline bool IsPandasmFriendly(const char c);
64 static inline bool IsSystemType(const std::string &type_name);
66 void GetRecord(pandasm::Record *record, const panda_file::File::EntityId &record_id);
67 void AddMethodToTables(const panda_file::File::EntityId &method_id);
68 void GetMethod(pandasm::Function *method, const panda_file::File::EntityId &method_id);
69 void GetLiteralArray(pandasm::LiteralArray *lit_array, size_t index) const;
70 std::optional<std::vector<std::string>> GetAnnotationByMethodName(const std::string &method_name) const;
71 std::optional<std::string> GetSerializedRecord(const std::string &record_name) const;
72 std::optional<std::string> GetSerializedMethodAnnotation(const std::string &method_name,
73 const std::string &anno_name) const;
74 std::vector<std::string> GetStrings() const;
75 std::vector<std::string> GetModuleLiterals() const;
77 void FillLiteralArrayData(pandasm::LiteralArray *lit_array, const panda_file::LiteralTag &tag,
78 const panda_file::LiteralDataAccessor::LiteralValue &value) const;
80 panda_file::File::EntityId method_id) const;
82 const ProgInfo &GetProgInfo() const
93 void FillLiteralData(pandasm::LiteralArray *lit_array, const panda_file::LiteralDataAccessor::LiteralValue &value,
94 const panda_file::LiteralTag &tag) const;
96 void GetFields(pandasm::Record *record, const panda_file::File::EntityId &record_id);
98 void GetMethods(const panda_file::File::EntityId &record_id);
99 void GetAnnotationElements(pandasm::Function &method, const panda_file::AnnotationDataAccessor &ada,
100 const std::string &annotation_name);
101 void GetMethodAnnotations(pandasm::Function &method, const panda_file::File::EntityId &method_id);
103 const std::string &ann_name, const std::string &ann_elem_name,
104 const std::string &ann_elem_index);
106 void AddAnnotationElement(pandasm::Function &method, const std::string &annotation_name, const std::string &key,
107 const U &value);
108 void GetParams(pandasm::Function *method, const panda_file::File::EntityId &code_id) const;
110 panda_file::File::EntityId code_id) const;
112 panda_file::File::EntityId code_id) const;
113 bool LocateTryBlock(const BytecodeInstruction &bc_ins, const BytecodeInstruction &bc_ins_last,
114 const panda_file::CodeDataAccessor::TryBlock &try_block,
115 pandasm::Function::CatchBlock *catch_block_pa, LabelTable *label_table, size_t try_idx) const;
116 bool LocateCatchBlock(const BytecodeInstruction &bc_ins, const BytecodeInstruction &bc_ins_last,
117 const panda_file::CodeDataAccessor::CatchBlock &catch_block,
119 size_t catch_idx) const;
121 void GetMetaData(pandasm::Record *record, const panda_file::File::EntityId &record_id) const;
122 void GetMetaData(pandasm::Function *method, const panda_file::File::EntityId &method_id) const;
123 void GetMetaData(pandasm::Field *field, const panda_file::File::EntityId &field_id, bool is_scope_names_record);
129 std::string AnnotationTagToString(const char tag) const;
131 std::string ScalarValueToString(const panda_file::ScalarValue &value, const std::string &type);
132 std::string ArrayValueToString(const panda_file::ArrayValue &value, const std::string &type, const size_t idx);
134 std::string GetFullMethodName(const panda_file::File::EntityId &method_id) const;
135 std::string GetMethodSignature(const panda_file::File::EntityId &method_id) const;
136 std::string GetFullRecordName(const panda_file::File::EntityId &class_id) const;
138 void GetRecordInfo(const panda_file::File::EntityId &record_id, RecordInfo *record_info) const;
139 void GetMethodInfo(const panda_file::File::EntityId &method_id, MethodInfo *method_info) const;
140 void GetInsInfo(const panda_file::File::EntityId &code_id, MethodInfo *method_info) const;
143 void SerializeValues(const pandasm::LiteralArray &lit_array, T &os) const;
144 std::string SerializeLiteralArray(const pandasm::LiteralArray &lit_array) const;
145 void Serialize(const std::string &key, const pandasm::LiteralArray &lit_array, std::ostream &os) const;
146 void Serialize(const std::string &module_offset, const std::vector<std::string> &module_array,
147 std::ostream &os) const;
149 void SerializeLiterals(const pandasm::LiteralArray &lit_array, T &os) const;
150 std::string LiteralTagToString(const panda_file::LiteralTag &tag) const;
151 void Serialize(const pandasm::Record &record, std::ostream &os, bool print_information = false) const;
152 void SerializeFields(const pandasm::Record &record, std::ostream &os, bool print_information) const;
153 void Serialize(const pandasm::Function &method, std::ostream &os, bool print_information = false) const;
154 void SerializeInstructions(const pandasm::Function &method, std::ostream &os,
155 const std::map<std::string, MethodInfo>::const_iterator &method_info_it,
156 bool print_method_info = false) const;
157 void SerializeMethodAnnotations(const pandasm::Function &method, std::ostream &os) const;
158 void SerializeMethodAnnotation(const pandasm::AnnotationData &anno, std::ostream &os) const;
159 void SerializeAnnotationElement(const std::vector<pandasm::AnnotationElement> &elements, std::stringstream &ss,
160 uint32_t idx) const;
161 void SerializeStrings(const panda_file::File::EntityId &offset, const std::string &name_value,
162 std::ostream &os) const;
163 void Serialize(const pandasm::Function::CatchBlock &catch_block, std::ostream &os) const;
164 void Serialize(const pandasm::ItemMetadata &meta, const AnnotationList &ann_list, std::ostream &os) const;
165 void SerializeLineNumberTable(const panda_file::LineNumberTable &line_number_table, std::ostream &os) const;
166 void SerializeColumnNumberTable(const panda_file::ColumnNumberTable &column_number_table, std::ostream &os) const;
167 void SerializeLocalVariableTable(const panda_file::LocalVariableTable &local_variable_table,
168 const pandasm::Function &method, std::ostream &os) const;
169 bool IsModuleLiteralOffset(const panda_file::File::EntityId &id) const;
170 inline void SerializeLanguage(std::ostream &os) const
175 pandasm::Type PFTypeToPandasmType(const panda_file::Type &type, panda_file::ProtoDataAccessor &pda,
176 size_t &ref_idx) const;
178 pandasm::Type FieldTypeToPandasmType(const uint32_t &type) const;
185 pandasm::Opcode BytecodeOpcodeToPandasmOpcode(BytecodeInstruction::Opcode o) const;
186 pandasm::Opcode BytecodeOpcodeToPandasmOpcode(uint8_t o) const;
188 std::string IDToString(BytecodeInstruction bc_ins, panda_file::File::EntityId method_id, size_t idx) const;
190 panda::panda_file::SourceLang GetRecordLanguage(panda_file::File::EntityId class_id) const;
191 void GetLiteralArrayByOffset(pandasm::LiteralArray *lit_array, panda_file::File::EntityId offset) const;
193 std::vector<std::string> GetModuleLiteralArray(panda_file::File::EntityId &module_id) const;
194 std::string SerializeModuleLiteralArray(const std::vector<std::string> &module_array) const;
195 std::string ModuleTagToString(panda_file::ModuleTag &tag) const;
197 std::string getLiteralArrayTypeFromValue(const pandasm::LiteralArray &literal_array) const;
198 void DumpLiteralArray(const pandasm::LiteralArray &literal_array, std::stringstream &ss) const;
199 void SerializeFieldValue(const pandasm::Field &f, std::stringstream &ss) const;
201 std::unique_ptr<const panda_file::File> file_;
204 inline std::string GetStringByOffset(uint32_t offset) const
206 const auto sd = file_->GetStringData(panda_file::File::EntityId(offset));
210 inline bool IsValidOffset(uint32_t offset) const
215 inline std::string GetFileNameByPath(const std::string &file_path) const