dwarfcore.plugins.under_constrained_symex.dwarf_helper module

dwarfcore.plugins.under_constrained_symex.dwarf_helper.dwarf_get_base_type(dwarf_type: mate_query.cpg.models.node.dwarf.DWARFType) mate_query.cpg.models.node.dwarf.DWARFType

Resolve derived types until we reach the real type information or a pointer.

Parameters

dwarf_type (mate_query.cpg.models.node.dwarf.DWARFType) –

Return type

mate_query.cpg.models.node.dwarf.DWARFType

dwarfcore.plugins.under_constrained_symex.dwarf_helper.dwarf_get_real_type_by_name(type_name: str) mate_query.cpg.models.node.dwarf.DWARFType
Parameters

type_name (str) –

Return type

mate_query.cpg.models.node.dwarf.DWARFType

dwarfcore.plugins.under_constrained_symex.dwarf_helper.dwarf_get_template_type_argument(obj_type: mate_query.cpg.models.node.dwarf.DWARFType, arg_num: int) mate_query.cpg.models.node.dwarf.DWARFType

Return the template type argument number ‘arg_num’ of type ‘obj_type’. For example, calling this method on (map<int, string>, 1) returns the string type.

If arg_num is invalid (negative or bigger than the number of template arguments of obj_type) this method raises an exception

Parameters
Return type

mate_query.cpg.models.node.dwarf.DWARFType

dwarfcore.plugins.under_constrained_symex.dwarf_helper.dwarf_is_pointer_or_reference_type(dwarf_type: mate_query.cpg.models.node.dwarf.DWARFType) bool
Parameters

dwarf_type (mate_query.cpg.models.node.dwarf.DWARFType) –

Return type

bool

dwarfcore.plugins.under_constrained_symex.dwarf_helper.init_db_session(db_session: mate_query.db.Session, db_graph: mate_query.db.Graph)
Parameters