File: //usr/lib/python3/dist-packages/twisted/python/__pycache__/reflect.cpython-312.pyc
�
�b P � �@ � d Z ddlZddlZddlZddlZddlZddlZddlZddlm Z ddl
mZmZ ddl
mZmZ ddlmZ ddlmZ e ej, d� � Zd � Zd2d
�Zd3d�Zd4d�Zd
� Zd� ZeZd2d�Z G d� de � Z! G d� de"� Z# G d� de#� Z$ G d� de#� Z%d� Z&d� Z'd� Z(d� Z)d� Z*d� Z+deejX ee- f de.d e-fd!�Z/d"� Z0de.d e-fd#�Z1 G d$� d%� Z2d&� Z3d'� Z4d2d(�Z5d2d)�Z6d*� Z7d+� Z8d,� Z9d-� Z:d.� Z;e8dddddfd/�Z<g d0�Z=e=j} d1� y)5zt
Standardized versions of various cool and/or strange things that you can do
with Python's reflection capabilities.
� N)�deque)�IOBase�StringIO)�Type�Union)�nativeString)�_fullyQualifiedName� c �R � i }t | ||� t |j � � S )a�
Given a class object C{classObj}, returns a list of method names that match
the string C{prefix}.
@param classObj: A class object from which to collect method names.
@param prefix: A native string giving a prefix. Each method with a name
which begins with this prefix will be returned.
@type prefix: L{str}
@return: A list of the names of matching methods of C{classObj} (and base
classes of C{classObj}).
@rtype: L{list} of L{str}
)�addMethodNamesToDict�list�keys)�classObj�prefix�dcts �8/usr/lib/python3/dist-packages/twisted/python/reflect.py�prefixedMethodNamesr s&