in fatal/debug/assume.h [553:577]
void assume_if_else(
TCondition &&condition,
TWhenTrue &&when_true,
TWhenFalse &&when_false
) {
if (condition.eval()) {
if (!when_true.eval()) {
print_assumptions(
FATAL_LOG(FATAL) << "expected second assumption to be true since first"
" is",
std::forward<TCondition>(condition),
std::forward<TWhenTrue>(when_true)
);
std::abort();
}
} else if (!when_false.eval()) {
print_assumptions(
FATAL_LOG(FATAL) << "expected third assumption to be true since first"
" isn't",
std::forward<TCondition>(condition),
std::forward<TWhenFalse>(when_false)
);
std::abort();
}
}