std::contracts::assertion_kind
From cppreference.com
 
 
 
 
 
 C++ 
 Feature test macros (C++20)
 Concepts library (C++20)
 Metaprogramming library (C++11)
 Ranges library (C++20)
 Filesystem library (C++17)
 Concurrency support library (C++11)
 Execution control library (C++26)
Utilities library 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
  
  
 
 
 Type support (basic types, RTTI)
 Library feature-test macros (C++20)
(C++11)
(C++20)
(C++26)
(C++20)
 Coroutine support (C++20)
 Contract support (C++26)
(C++20)(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
  (C++20)(C++20)(C++20)
  (C++20)(C++20)(C++20)
 General utilities
 Relational operators (deprecated in C++20)
(C++20)(C++20)(C++20)
  (C++20)(C++20)(C++20)
(C++20)
 Swap and type operations 
 Common vocabulary types
Contract support 
 
 
 
 
 Contract-violation information
(C++26)
assertion_kind
(C++26)
(C++26)
(C++26)
 Helper functions
Defined in header 
 
 
<contracts> 
 enum class assertion_kind : /* unspecified */ {
 
 (since C++26) 
    pre = 1,
    post = 2,
    assert = 3
The enumerators of std::contracts::assertion_kind correspond to the syntactic forms of a contract assertion, with meanings listed below:
 Enumerator
 Meaning
pre
 the contract assertion is a precondition assertion
post
 the contract assertion is a postcondition assertion
assert
 the contract assertion is a contract_assert statement