mirror of
https://github.com/Cian-H/I-Form_Server_Node_Deployer.git
synced 2025-12-23 06:32:08 +00:00
68 lines
1.5 KiB
Python
68 lines
1.5 KiB
Python
from ipaddress import IPv4Address, IPv6Address, ip_address
|
|
|
|
|
|
class IPAddress:
|
|
def __init__(self, *args, **kwargs) -> None:
|
|
self.obj: IPv4Address | IPv6Address = ip_address(*args, **kwargs)
|
|
|
|
@property
|
|
def compressed(self) -> str:
|
|
return self.obj.compressed
|
|
|
|
@property
|
|
def exploded(self) -> str:
|
|
return self.obj.exploded
|
|
|
|
@property
|
|
def is_global(self) -> bool:
|
|
return self.obj.is_global
|
|
|
|
@property
|
|
def is_link_local(self) -> bool:
|
|
return self.obj.is_link_local
|
|
|
|
@property
|
|
def is_loopback(self) -> bool:
|
|
return self.obj.is_loopback
|
|
|
|
@property
|
|
def is_multicast(self) -> bool:
|
|
return self.obj.is_multicast
|
|
|
|
@property
|
|
def is_private(self) -> bool:
|
|
return self.obj.is_private
|
|
|
|
@property
|
|
def is_reserved(self) -> bool:
|
|
return self.obj.is_reserved
|
|
|
|
@property
|
|
def is_unspecified(self) -> bool:
|
|
return self.obj.is_unspecified
|
|
|
|
@property
|
|
def max_prefixlen(self) -> int:
|
|
return self.obj.max_prefixlen
|
|
|
|
@property
|
|
def packed(self) -> bytes:
|
|
return self.obj.packed
|
|
|
|
@property
|
|
def reverse_pointer(self) -> str:
|
|
return self.obj.reverse_pointer
|
|
|
|
@property
|
|
def version(self) -> int:
|
|
return self.obj.version
|
|
|
|
def __str__(self) -> str:
|
|
return str(self.obj)
|
|
|
|
def __repr__(self) -> str:
|
|
return repr(self.obj)
|
|
|
|
def __bool__(self) -> bool:
|
|
return not self.obj.is_unspecified
|