aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorGravatar jesopo2019-09-26 13:44:21 +0100
committerGravatar jesopo2019-09-26 13:44:21 +0100
commitaccd127ce5b5e860aed11eb1101e9f94341c7afd (patch)
tree195839fa2a09023c1f5c85fd2f67314d4bd17591 /src
parentadd !action to echo.py (diff)
signature
add IRCBuffer.find_many_from()
Diffstat (limited to 'src')
-rw-r--r--src/IRCBuffer.py10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/IRCBuffer.py b/src/IRCBuffer.py
index 9977a6ae..a809fdc4 100644
--- a/src/IRCBuffer.py
+++ b/src/IRCBuffer.py
@@ -67,12 +67,18 @@ class Buffer(object):
return None
def find_from(self, nickname: str) -> typing.Optional[BufferLine]:
+ return (self.find_many_from(nickname, 1) or [None])[0]
+ def find_many_from(self, nickname: str, max: int
+ ) -> typing.List[BufferLine]:
nickname_lower = self.server.irc_lower(nickname)
+ found_lines = []
for line in self._lines:
if (not line.from_self
and self.server.irc_lower(line.sender) == nickname_lower):
- return line
- return None
+ found_lines.append(line)
+ if len(found_lines) == max:
+ break
+ return found_lines
def skip_next(self):
self._skip_next = True