|
Server : LiteSpeed System : Linux barito.iixcp.rumahweb.net 5.14.0-611.49.1.el9_7.x86_64 #1 SMP PREEMPT_DYNAMIC Tue Apr 21 16:39:08 EDT 2026 x86_64 User : elvh3918 ( 1528) PHP Version : 8.2.31 Disable Function : mail Directory : /usr/local/lib/python3.9/site-packages/prompt_toolkit/eventloop/__pycache__/ |
a
��Sh� � @ s� d dl mZ d dlZejdks"J �d dlmZ ddlmZ esJd dlmZ d dl m
Z
mZmZ d d l
mZ d
dgZdZd
Zefdddd�dd
�Zdd�dd�ZdS )� )�annotationsN�win32)�pointer� )�SPHINX_AUTODOC_RUNNING)�windll)�BOOL�DWORD�HANDLE)�SECURITY_ATTRIBUTES�wait_for_handles�create_win32_eventi ���zlist[HANDLE]�intz
HANDLE | None)�handles�timeout�returnc C sJ t t| � }|| � }tj�t|�|td�t|��}|tkr>dS | | S dS )a�
Waits for multiple handles. (Similar to 'select') Returns the handle which is ready.
Returns `None` on timeout.
http://msdn.microsoft.com/en-us/library/windows/desktop/ms687025(v=vs.85).aspx
Note that handles should be a list of `HANDLE` objects, not integers. See
this comment in the patch by @quark-zju for the reason why:
''' Make sure HANDLE on Windows has a correct size
Previously, the type of various HANDLEs are native Python integer
types. The ctypes library will treat them as 4-byte integer when used
in function arguments. On 64-bit Windows, HANDLE is 8-byte and usually
a small integer. Depending on whether the extra 4 bytes are zero-ed out
or not, things can happen to work, or break. '''
This function returns either `None` or one of the given `HANDLE` objects.
(The return value can be tested with the `is` operator.)
FN)r
�lenr �kernel32ZWaitForMultipleObjectsr r �WAIT_TIMEOUT)r r ZarrtypeZhandle_array�ret� r �H/usr/local/lib/python3.9/site-packages/prompt_toolkit/eventloop/win32.pyr s �r
)r c C s$ t tj�tt� �td�td�d��S )z|
Creates a Win32 unnamed Event .
http://msdn.microsoft.com/en-us/library/windows/desktop/ms682396(v=vs.85).aspx
TFN)r
r r ZCreateEventAr r r r r r r r
<