Method TakeFactsRead
- Namespace
- MailFathom.Application.Rules.Facts
- Assembly
- MailFathom.Application.dll
TakeFactsRead()
Takes the facts read since this was last called, and begins recording afresh.
public IReadOnlyList<MailRuleFact> TakeFactsRead()
Returns
- IReadOnlyList<MailRuleFact>
The facts read, in the order they were first read.
Remarks
Read rather than resolved, so a cache hit counts: what this answers is which facts a condition needed, and a condition that compares the sender's domain needed it whether or not the rule above it had already computed it. ResolvedFacts answers the other question — what this email cost — and the two must not be conflated.
Taking clears the record, because the caller is a rule set walking its rules one at a time and each rule's reads belong to that rule. It is called between rules rather than around one, which is what keeps this type free of any notion of which rule is running.