* If any of the underlying FieldMatchers are unable to produce a result, absl::nullopt is returned.
* A FieldMatcher that attempts to match multiple FieldMatchers, evaluating to true iff any of the
* If any of the underlying FieldMatchers are unable to produce a result before we see a successful
* Implementation of a FieldMatcher that extracts an input value from the provided data and attempts
* to match using an InputMatcher. InsufficientData is returned whenever the data is not available
class SingleFieldMatcher : public FieldMatcher<DataType>, Logger::Loggable<Logger::Id::matcher> {