class IrcMessage:
'Properly structured representation of IRC message as per IRCv3 spec.'
+ _raw: Optional[str] = None
def __init__(self,
verb: str,
parameters: Optional[list[str]] = None,
source: str = '',
- tags: Optional[dict[str, str]] = None,
- raw: Optional[str] = None
+ tags: Optional[dict[str, str]] = None
) -> None:
- self._raw = raw
self.verb: str = verb
self.parameters: list[str] = parameters or []
self.source: str = source
if stage.prefix_char:
continue
harvest[stage.name] += char
- return cls(**{s.name: s.processor(harvest[s.name]) for s in stages},
- raw=raw_msg)
+ msg = cls(**{s.name: s.processor(harvest[s.name]) for s in stages})
+ msg._raw = raw_msg
+ return msg
@property
def raw(self) -> str: