D7net
Home
Console
Upload
information
Create File
Create Folder
About
Tools
:
/
proc
/
self
/
root
/
opt
/
imunify360
/
venv
/
lib
/
python3.11
/
site-packages
/
pip
/
_vendor
/
rich
/
Filename :
_fileno.py
back
Copy
from __future__ import annotations from typing import IO, Callable def get_fileno(file_like: IO[str]) -> int | None: """Get fileno() from a file, accounting for poorly implemented file-like objects. Args: file_like (IO): A file-like object. Returns: int | None: The result of fileno if available, or None if operation failed. """ fileno: Callable[[], int] | None = getattr(file_like, "fileno", None) if fileno is not None: try: return fileno() except Exception: # `fileno` is documented as potentially raising a OSError # Alas, from the issues, there are so many poorly implemented file-like objects, # that `fileno()` can raise just about anything. return None return None