Heray-Was-Here
Server : LiteSpeed
System : Linux br-asc-web1845.main-hosting.eu 5.14.0-611.42.1.el9_7.x86_64 #1 SMP PREEMPT_DYNAMIC Tue Mar 24 05:30:20 EDT 2026 x86_64
User : u602970434 ( 602970434)
PHP Version : 8.3.30
Disable Function : system, exec, shell_exec, passthru, mysql_list_dbs, ini_alter, dl, symlink, link, chgrp, leak, popen, apache_child_terminate, virtual, mb_send_mail
Directory :  /lib/python3.9/site-packages/elftools/ehabi/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //lib/python3.9/site-packages/elftools/ehabi/structs.py
# -------------------------------------------------------------------------------
# elftools: ehabi/structs.py
#
# Encapsulation of Construct structs for parsing an EHABI, adjusted for
# correct endianness and word-size.
#
# LeadroyaL (leadroyal@qq.com)
# This code is in the public domain
# -------------------------------------------------------------------------------

from ..construct import UBInt32, ULInt32, Struct


class EHABIStructs(object):
    """ Accessible attributes:

            EH_index_struct:
                Struct of item in section .ARM.exidx.

            EH_table_struct:
                Struct of item in section .ARM.extab.
    """

    def __init__(self, little_endian):
        self._little_endian = little_endian
        self._create_structs()

    def _create_structs(self):
        if self._little_endian:
            self.EHABI_uint32 = ULInt32
        else:
            self.EHABI_uint32 = UBInt32
        self._create_exception_handler_index()
        self._create_exception_handler_table()

    def _create_exception_handler_index(self):
        self.EH_index_struct = Struct(
            'EH_index',
            self.EHABI_uint32('word0'),
            self.EHABI_uint32('word1')
        )

    def _create_exception_handler_table(self):
        self.EH_table_struct = Struct(
            'EH_table',
            self.EHABI_uint32('word0'),
        )

Hry