1
Fork 0
mirror of https://github.com/RGBCube/GitHubWrapper synced 2025-05-16 14:15:00 +00:00

Rewrote the library

- Only HTTPClient, File and Object exists currently
This commit is contained in:
RGBCube 2022-06-25 14:11:17 +03:00
parent 7bd3d48eab
commit b23d5b78eb
16 changed files with 1048 additions and 1534 deletions

26
github/objects/file.py Normal file
View file

@ -0,0 +1,26 @@
__all__ = ("File",)
import os
from io import BytesIO, StringIO
from pathlib import Path
from typing import Union
class File:
def __init__(self, file: Union[str, StringIO, BytesIO], /, *, filename: str) -> None:
self._file = file
self.name = filename
def read(self) -> str:
f = self._file
if isinstance(f, BytesIO):
return f.read().decode("utf-8")
if isinstance(f, StringIO):
return f.getvalue()
if os.path.exists(f):
return Path(f).read_text()
return f