| 22 | namespace LIEF::OAT::py { |
| 23 | |
| 24 | void init_enums(nb::module_& m) { |
| 25 | |
| 26 | nb::enum_<OAT_CLASS_TYPES>(m, "OAT_CLASS_TYPES") |
| 27 | .value(PY_ENUM(OAT_CLASS_TYPES::OAT_CLASS_ALL_COMPILED)) |
| 28 | .value(PY_ENUM(OAT_CLASS_TYPES::OAT_CLASS_SOME_COMPILED)) |
| 29 | .value(PY_ENUM(OAT_CLASS_TYPES::OAT_CLASS_NONE_COMPILED)); |
| 30 | |
| 31 | nb::enum_<OAT_CLASS_STATUS>(m, "OAT_CLASS_STATUS") |
| 32 | .value(PY_ENUM(OAT_CLASS_STATUS::STATUS_RETIRED)) |
| 33 | .value(PY_ENUM(OAT_CLASS_STATUS::STATUS_ERROR)) |
| 34 | .value(PY_ENUM(OAT_CLASS_STATUS::STATUS_NOTREADY)) |
| 35 | .value(PY_ENUM(OAT_CLASS_STATUS::STATUS_IDX)) |
| 36 | .value(PY_ENUM(OAT_CLASS_STATUS::STATUS_LOADED)) |
| 37 | .value(PY_ENUM(OAT_CLASS_STATUS::STATUS_RESOLVING)) |
| 38 | .value(PY_ENUM(OAT_CLASS_STATUS::STATUS_RESOLVED)) |
| 39 | .value(PY_ENUM(OAT_CLASS_STATUS::STATUS_VERIFYING)) |
| 40 | .value(PY_ENUM(OAT_CLASS_STATUS::STATUS_RETRY_VERIFICATION_AT_RUNTIME)) |
| 41 | .value(PY_ENUM(OAT_CLASS_STATUS::STATUS_VERIFYING_AT_RUNTIME)) |
| 42 | .value(PY_ENUM(OAT_CLASS_STATUS::STATUS_VERIFIED)) |
| 43 | .value(PY_ENUM(OAT_CLASS_STATUS::STATUS_INITIALIZING)) |
| 44 | .value(PY_ENUM(OAT_CLASS_STATUS::STATUS_INITIALIZED)); |
| 45 | |
| 46 | nb::enum_<HEADER_KEYS>(m, "HEADER_KEYS") |
| 47 | .value(PY_ENUM(HEADER_KEYS::KEY_IMAGE_LOCATION)) |
| 48 | .value(PY_ENUM(HEADER_KEYS::KEY_DEX2OAT_CMD_LINE)) |
| 49 | .value(PY_ENUM(HEADER_KEYS::KEY_DEX2OAT_HOST)) |
| 50 | .value(PY_ENUM(HEADER_KEYS::KEY_PIC)) |
| 51 | .value(PY_ENUM(HEADER_KEYS::KEY_HAS_PATCH_INFO)) |
| 52 | .value(PY_ENUM(HEADER_KEYS::KEY_DEBUGGABLE)) |
| 53 | .value(PY_ENUM(HEADER_KEYS::KEY_NATIVE_DEBUGGABLE)) |
| 54 | .value(PY_ENUM(HEADER_KEYS::KEY_COMPILER_FILTER)) |
| 55 | .value(PY_ENUM(HEADER_KEYS::KEY_CLASS_PATH)) |
| 56 | .value(PY_ENUM(HEADER_KEYS::KEY_BOOT_CLASS_PATH)) |
| 57 | .value(PY_ENUM(HEADER_KEYS::KEY_CONCURRENT_COPYING)); |
| 58 | |
| 59 | |
| 60 | nb::enum_<INSTRUCTION_SETS>(m, "INSTRUCTION_SETS") |
| 61 | .value(PY_ENUM(INSTRUCTION_SETS::INST_SET_NONE)) |
| 62 | .value(PY_ENUM(INSTRUCTION_SETS::INST_SET_ARM)) |
| 63 | .value(PY_ENUM(INSTRUCTION_SETS::INST_SET_ARM_64)) |
| 64 | .value(PY_ENUM(INSTRUCTION_SETS::INST_SET_THUMB2)) |
| 65 | .value(PY_ENUM(INSTRUCTION_SETS::INST_SET_X86)) |
| 66 | .value(PY_ENUM(INSTRUCTION_SETS::INST_SET_X86_64)) |
| 67 | .value(PY_ENUM(INSTRUCTION_SETS::INST_SET_MIPS)) |
| 68 | .value(PY_ENUM(INSTRUCTION_SETS::INST_SET_MIPS_64)); |
| 69 | } |
| 70 | } |