mirror of
https://github.com/Gallopsled/pwntools.git
synced 2026-10-12 02:02:27 +00:00
* Add typehints to timeout module Co-authored-by: Copilot <[email protected]> * Add typehints to device class * Add typehints to PwnlibException * Add general typehints for term.text module Since the available module attributes are handled dynamically like `text.green()` or `text.green_on_white()` or `text.underline_red()`, it's not feasible to type out all possible combinations. Just tell the type checker that all module attibutes have the same type and thus avoid the `error: Module has no attribute "bold_blue" [attr-defined]` errors. * Add typehints for config module * Add typehints for hashes module The guaranteed algorithms in hashlib are pretty stable and we can generate the list out proper type checking and auto complete. Still add a check in CI that notifies us if there are changes in the future. * Add atexception and atexit types atexception.unregister was not documented correctly since the function expects an identifier returned by `atexception.register` instead of the handler function. * Fix toplevel type hints in shellcraft.internal * Fix toplevel type hints in term.key --------- Co-authored-by: Copilot <[email protected]>
16 lines
423 B
Python
16 lines
423 B
Python
class Device:
|
|
arch: str | None = None
|
|
bits: int | None = None
|
|
endian: str | None = None
|
|
serial: str | None = None
|
|
os: str | None = None
|
|
|
|
def __init__(self, serial: str | None = None):
|
|
self.serial = serial
|
|
|
|
def __str__(self) -> str:
|
|
return self.serial or "<no serial>"
|
|
|
|
def __eq__(self, other: object) -> bool:
|
|
return self.serial == other or self.serial == str(other)
|