Skip to content

Commit

Permalink
Rename MessageFilter.Filter(...) to MessageFilter.IsMatch(...)
Browse files Browse the repository at this point in the history
  • Loading branch information
Tyrrrz committed Sep 1, 2021
1 parent 6b8170a commit 301bca0
Show file tree
Hide file tree
Showing 9 changed files with 19 additions and 19 deletions.
2 changes: 1 addition & 1 deletion DiscordChatExporter.Core/Exporting/ChannelExporter.cs
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ public async ValueTask ExportChannelAsync(ExportRequest request, IProgress<doubl
await foreach (var message in _discord.GetMessagesAsync(request.Channel.Id, request.After, request.Before, progress))
{
// Skips any messages that fail to pass the supplied filter
if (!request.MessageFilter.Filter(message))
if (!request.MessageFilter.IsMatch(message))
continue;

// Resolve members for referenced users
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,10 +16,10 @@ public BinaryExpressionMessageFilter(MessageFilter first, MessageFilter second,
_kind = kind;
}

public override bool Filter(Message message) => _kind switch
public override bool IsMatch(Message message) => _kind switch
{
BinaryExpressionKind.Or => _first.Filter(message) || _second.Filter(message),
BinaryExpressionKind.And => _first.Filter(message) && _second.Filter(message),
BinaryExpressionKind.Or => _first.IsMatch(message) || _second.IsMatch(message),
BinaryExpressionKind.And => _first.IsMatch(message) && _second.IsMatch(message),
_ => throw new InvalidOperationException($"Unknown binary expression kind '{_kind}'.")
};
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,24 +10,24 @@ internal class ContainsMessageFilter : MessageFilter

public ContainsMessageFilter(string text) => _text = text;

private bool Filter(string? content) =>
private bool IsMatch(string? content) =>
!string.IsNullOrWhiteSpace(content) &&
Regex.IsMatch(
content,
"\\b" + Regex.Escape(_text) + "\\b",
RegexOptions.IgnoreCase | RegexOptions.CultureInvariant
);

public override bool Filter(Message message) =>
Filter(message.Content) ||
public override bool IsMatch(Message message) =>
IsMatch(message.Content) ||
message.Embeds.Any(e =>
Filter(e.Title) ||
Filter(e.Author?.Name) ||
Filter(e.Description) ||
Filter(e.Footer?.Text) ||
IsMatch(e.Title) ||
IsMatch(e.Author?.Name) ||
IsMatch(e.Description) ||
IsMatch(e.Footer?.Text) ||
e.Fields.Any(f =>
Filter(f.Name) ||
Filter(f.Value)
IsMatch(f.Name) ||
IsMatch(f.Value)
)
);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ internal class FromMessageFilter : MessageFilter

public FromMessageFilter(string value) => _value = value;

public override bool Filter(Message message) =>
public override bool IsMatch(Message message) =>
string.Equals(_value, message.Author.Name, StringComparison.OrdinalIgnoreCase) ||
string.Equals(_value, message.Author.FullName, StringComparison.OrdinalIgnoreCase) ||
string.Equals(_value, message.Author.Id.ToString(), StringComparison.OrdinalIgnoreCase);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ internal class HasMessageFilter : MessageFilter

public HasMessageFilter(MessageContentMatchKind kind) => _kind = kind;

public override bool Filter(Message message) => _kind switch
public override bool IsMatch(Message message) => _kind switch
{
MessageContentMatchKind.Link => Regex.IsMatch(message.Content, "https?://\\S*[^\\.,:;\"\'\\s]"),
MessageContentMatchKind.Embed => message.Embeds.Any(),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ internal class MentionsMessageFilter : MessageFilter

public MentionsMessageFilter(string value) => _value = value;

public override bool Filter(Message message) => message.MentionedUsers.Any(user =>
public override bool IsMatch(Message message) => message.MentionedUsers.Any(user =>
string.Equals(_value, user.Name, StringComparison.OrdinalIgnoreCase) ||
string.Equals(_value, user.FullName, StringComparison.OrdinalIgnoreCase) ||
string.Equals(_value, user.Id.ToString(), StringComparison.OrdinalIgnoreCase)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ namespace DiscordChatExporter.Core.Exporting.Filtering
{
public abstract partial class MessageFilter
{
public abstract bool Filter(Message message);
public abstract bool IsMatch(Message message);
}

public partial class MessageFilter
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,6 @@ internal class NegatedMessageFilter : MessageFilter

public NegatedMessageFilter(MessageFilter filter) => _filter = filter;

public override bool Filter(Message message) => !_filter.Filter(message);
public override bool IsMatch(Message message) => !_filter.IsMatch(message);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,6 @@ namespace DiscordChatExporter.Core.Exporting.Filtering
{
internal class NullMessageFilter : MessageFilter
{
public override bool Filter(Message message) => true;
public override bool IsMatch(Message message) => true;
}
}

0 comments on commit 301bca0

Please sign in to comment.