using System; namespace PKHeX.Core; /// public sealed class ComplexSuggestion : ISuggestModification { public readonly string Keyword; public readonly Func Criteria = _ => true; public readonly Func Action; public ComplexSuggestion( string keyword, Func criteria, Func action) : this(keyword, action) { Criteria = criteria; } public ComplexSuggestion( string keyword, Func action) { Keyword = keyword; Action = action; } public bool IsMatch(string name, string value, BatchInfo info) { return name == Keyword && Criteria(info.Entity); } public ModifyResult Modify(string name, string value, BatchInfo info) { return Action(name, value, info); } }