FLANG
Fortran::evaluate::ConstantBase< RESULT, ELEMENT > Class Template Reference
Inheritance diagram for Fortran::evaluate::ConstantBase< RESULT, ELEMENT >:
Fortran::evaluate::ConstantBounds Fortran::evaluate::Constant< Type< TypeCategory::Character > > Fortran::evaluate::Constant< Type< TypeCategory::Derived > >

Public Types

using Result = RESULT
using Element = ELEMENT

Public Member Functions

constexpr int kind () const
template<typename A>
 ConstantBase (int kind, const A &x, Result res)
 ConstantBase (int kind, ELEMENT &&x)
template<typename A>
 ConstantBase (int kind, const A &x)
 ConstantBase (int kind, ELEMENT &&x, Result res)
 ConstantBase (int kind, std::vector< Element > &&x, ConstantSubscripts &&sh)
 ConstantBase (int kind, std::vector< Element > &&, ConstantSubscripts &&, Result)
template<typename A, typename B, typename C>
 ConstantBase (int kind, const std::map< A, B, C > &x, Result res)
bool operator== (const ConstantBase &) const
bool empty () const
std::size_t size () const
const std::vector< Element > & values () const
Result & result ()
const Result & result () const
constexpr DynamicType GetType () const
llvm::raw_ostream & AsFortran (llvm::raw_ostream &) const
std::string AsFortran () const
Public Member Functions inherited from Fortran::evaluate::ConstantBounds
 ConstantBounds (const ConstantSubscripts &shape)
 ConstantBounds (ConstantSubscripts &&shape)
const ConstantSubscripts & shape () const
int Rank () const
Constant< SubscriptInteger > SHAPE () const
const ConstantSubscripts & lbounds () const
ConstantSubscripts ComputeUbounds (std::optional< int > dim) const
void set_lbounds (ConstantSubscripts &&)
void SetLowerBoundsToOne ()
bool HasNonDefaultLowerBound () const
bool IncrementSubscripts (ConstantSubscripts &, const std::vector< int > *dimOrder=nullptr) const

Protected Member Functions

std::vector< Element > Reshape (const ConstantSubscripts &) const
std::size_t CopyFrom (const ConstantBase &source, std::size_t count, ConstantSubscripts &resultSubscripts, const std::vector< int > *dimOrder)
Protected Member Functions inherited from Fortran::evaluate::ConstantBounds
ConstantSubscript SubscriptsToOffset (const ConstantSubscripts &) const

Protected Attributes

int kind_
Result result_
std::vector< Element > values_

Additional Inherited Members

Static Public Member Functions inherited from Fortran::evaluate::ConstantBounds
static constexpr int Corank ()

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