public bool Match(SearchFilterNode value, LogDataModel model) { if (value is TokenNode node && node.Token.GetText().TryToDateTime(out var left) && model.Timestamp.TryToDateTime(out var right)) { return(left <= right); }
static SearchFilterNode?CreateNode(SearchFilterNode left, SearchFilterNode?right) { if (right is null) { return(left); } else if (right is SearchFilterNodeList nodeList) { nodeList.Nodes.Add(left); return(nodeList); } else { var result = new SearchFilterNodeList(); result.Nodes.Add(left); result.Nodes.Add(right); return(result); } }
public NegationNode(SearchFilterNode node) { this.Node = node ?? throw new ArgumentNullException(nameof(node)); }
public RequirementNode(SearchFilterNode key, SearchFilterNode value) { this.Key = key ?? throw new ArgumentNullException(nameof(key)); this.Value = value ?? throw new ArgumentNullException(nameof(value)); }