home
·
contact
·
privacy
projects
/
ircplom
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
177a56f
)
Refactor placement of .conn_idx attributes.
master
author
Christian Heller
<c.heller@plomlompom.de>
Thu, 10 Jul 2025 13:39:25 +0000
(15:39 +0200)
committer
Christian Heller
<c.heller@plomlompom.de>
Thu, 10 Jul 2025 13:39:25 +0000
(15:39 +0200)
ircplom/irc_conn.py
patch
|
blob
|
history
diff --git
a/ircplom/irc_conn.py
b/ircplom/irc_conn.py
index 30dcaa84b0a8f38943d86f28bbbba0cc984c24ac..87e608c6e26f42115ab9b0268998fe6f2e01922e 100644
(file)
--- a/
ircplom/irc_conn.py
+++ b/
ircplom/irc_conn.py
@@
-23,6
+23,14
@@
_IRCSPEC_TAG_ESCAPES = ((r'\:', ';'),
(r'\\', '\\'))
(r'\\', '\\'))
+class ConnIdxMixin:
+ 'Collects a Connection ID at .conn_idx.'
+
+ def __init__(self, conn_idx: int, **kwargs) -> None:
+ super().__init__(**kwargs)
+ self.conn_idx = conn_idx
+
+
@dataclass
class LoginNames:
'Collects the names needed on server connect for USER, NICK commands.'
@dataclass
class LoginNames:
'Collects the names needed on server connect for USER, NICK commands.'
@@
-37,12
+45,8
@@
class InitConnectEvent(Event, PayloadMixin):
payload: tuple[str, LoginNames]
payload: tuple[str, LoginNames]
-class ConnEvent(Event):
- 'Event with connection ID at .conn_idx'
-
- def __init__(self, conn_idx: int, **kwargs) -> None:
- super().__init__(**kwargs)
- self.conn_idx = conn_idx
+class ConnEvent(Event, ConnIdxMixin):
+ 'Event with .conn_idx.'
class InitConnWindowEvent(ConnEvent, PayloadMixin):
class InitConnWindowEvent(ConnEvent, PayloadMixin):
@@
-76,13
+80,9
@@
class SendEvent(ConnEvent, PayloadMixin):
payload: 'IrcMessage'
payload: 'IrcMessage'
-class BroadcastConnMixin(BroadcastMixin):
+class BroadcastConnMixin(BroadcastMixin
, ConnIdxMixin
):
'Provides .broadcast_conn on classes that have .conn_idx defined.'
'Provides .broadcast_conn on classes that have .conn_idx defined.'
- def __init__(self, conn_idx: int, **kwargs) -> None:
- super().__init__(**kwargs)
- self.conn_idx = conn_idx
-
def broadcast_conn[E: ConnEvent](self,
event_class: type[E],
*args, **kwargs
def broadcast_conn[E: ConnEvent](self,
event_class: type[E],
*args, **kwargs