Skip to main content

chronon::sender::detail::SelectiveFlushPredicate

More...

#include <Port.hpp>

Public Types

Name
using uint64_t(*)(const T &)KeyExtractor

Public Attributes

Name
KeyExtractorkey_extractor
FlushRangekeep_range
uint64_tflush_cycle

Detailed Description

template <typename T >
struct chronon::sender::detail::SelectiveFlushPredicate;

A single live "keep only range among messages enqueued before flush_cycle" rule. The extractor is part of the predicate, allowing independent flushes over different message fields to compose without mutable global extractor state or a reset sequence.

Public Types Documentation

using KeyExtractor

using chronon::sender::detail::SelectiveFlushPredicate< T >::KeyExtractor = uint64_t (*)(const T&);

Public Attributes Documentation

variable key_extractor

KeyExtractor key_extractor = nullptr;

variable keep_range

FlushRange keep_range =
FlushRange::outsideInclusive(uint64_t{0}, std::numeric_limits<uint64_t>::max());

variable flush_cycle

uint64_t flush_cycle = 0;

Updated on 2026-07-18 at 10:20:16 +0000