FLANG
Fortran::evaluate::value::Logical< BITS, IS_LIKE_C > Class Template Reference

Public Types

using Word = Integer<bits>

Public Member Functions

template<int B, bool C>
constexpr Logical (Logical< B, C > x)
constexpr Logical (bool truth)
constexpr Logical (Word &&w)
template<int B, bool C>
constexpr Logicaloperator= (Logical< B, C > x)
Word word () const
bool IsCanonical () const
template<int B, bool C>
constexpr bool operator< (const Logical< B, C > &that) const
template<int B, bool C>
constexpr bool operator<= (const Logical< B, C > &) const
template<int B, bool C>
constexpr bool operator== (const Logical< B, C > &that) const
template<int B, bool C>
constexpr bool operator!= (const Logical< B, C > &that) const
template<int B, bool C>
constexpr bool operator>= (const Logical< B, C > &) const
template<int B, bool C>
constexpr bool operator> (const Logical< B, C > &that) const
constexpr bool IsTrue () const
constexpr Logical NOT () const
constexpr Logical AND (const Logical &that) const
constexpr Logical OR (const Logical &that) const
constexpr Logical EQV (const Logical &that) const
constexpr Logical NEQV (const Logical &that) const
void StoreRawBytes (void *dst, size_t expectedSize, bool *changed=nullptr) const

Static Public Member Functions

static constexpr std::size_t bytesStored ()
 Number of bytes that FromRawBytes/StoreRawBytes would accesses.
static Logical FromRawBytes (const void *raw, std::size_t expectedSize)

Static Public Attributes

static constexpr int bits {BITS}
static constexpr bool IsLikeC {BITS <= 8 || IS_LIKE_C}

Member Function Documentation

◆ FromRawBytes()

template<int BITS, bool IS_LIKE_C = true>
Logical Fortran::evaluate::value::Logical< BITS, IS_LIKE_C >::FromRawBytes ( const void * raw,
std::size_t expectedSize )
inlinestatic

De-serializes a logical from raw. expectedSize must match the the number of bytes to be read.

◆ StoreRawBytes()

template<int BITS, bool IS_LIKE_C = true>
void Fortran::evaluate::value::Logical< BITS, IS_LIKE_C >::StoreRawBytes ( void * dst,
size_t expectedSize,
bool * changed = nullptr ) const
inline

Serializes this logical to dst. expectedSize must match the the number of bytes to be written. If changed points to a boolean, it will be set to true if any bytes at dst have changed.


The documentation for this class was generated from the following file: