Current File : //kunden/usr/share/gdb/python/gdb/__pycache__/FrameDecorator.cpython-39.pyc |
a
ɱZh�- � @ s\ d dl Z G dd� de�ZG dd� de�ZG dd� de�ZG dd � d e�ZG d
d� de�ZdS )� Nc @ s\ e Zd ZdZdd� Zedd� �Zdd� Zdd � Zd
d� Z dd
� Z
dd� Zdd� Zdd� Z
dS )�_FrameDecoratorBasezBase class of frame decorators.c C s
|| _ d S �N)�_base)�self�base� r �+/usr/share/gdb/python/gdb/FrameDecorator.py�__init__ s z_FrameDecoratorBase.__init__c C s: | � � }|jr2|jjr2| �� tjks2| �� tjkr6dS dS )zIInternal utility to determine if the frame is special or
limited.TF)�find_sal�symtab�filename�type�gdb�DUMMY_FRAME�SIGTRAMP_FRAME)�frame�salr r r Z__is_limited_frame s ����z&_FrameDecoratorBase.__is_limited_framec C s t | jd�r| j�� S dS )zLReturn any elided frames that this class might be
wrapping, or None.�elidedN)�hasattrr r �r r r r r - s
z_FrameDecoratorBase.elidedc C sj t | jtj�s$t| jd�r$| j�� S | �� }|�� tjkr>dS |�� tj krPdS |�
� }t |t�sfd}|S )a� Return the name of the frame's function or an address of
the function of the frame. First determine if this is a
special frame. If not, try to determine filename from GDB's
frame internal function API. Finally, if a name cannot be
determined return the address. If this function returns an
address, GDB will attempt to determine the function name from
its internal minimal symbols store (for example, for inferiors
without debug-info).�functionz<function called from gdb>z<signal handler called>z???)�
isinstancer r ZFramer r �inferior_framer
r r �name�str)r r �funcr r r r 5 s
z_FrameDecoratorBase.functionc C s&