FLANG
Fortran::evaluate::ActualArgument::ConditionalArg Class Reference

Public Types

using Consequent
using ConditionalArgPartOrConsequent

Public Member Functions

 ConditionalArg (Expr< SomeLogical > &&condition, Consequent &&consequent, ConditionalArgPartOrConsequent &&tail)
Expr< SomeLogical > & condition ()
const Expr< SomeLogical > & condition () const
const Consequent & consequent () const
Consequent & consequent ()
ConditionalArgPartOrConsequent & tail ()
const ConditionalArgPartOrConsequent & tail () const
template<typename F, typename G>
auto VisitTail (F onConditionalArg, G onConsequent) const
template<typename F, typename G>
auto VisitTail (F onConditionalArg, G onConsequent)
template<typename F>
void ForEachConsequent (F f) const
template<typename F>
void ForEachConsequent (F f)
const Expr< SomeType > * FirstNonNilConsequent () const
bool HasNilConsequent () const
bool operator== (const ConditionalArg &) const
llvm::raw_ostream & AsFortran (llvm::raw_ostream &) const

Member Typedef Documentation

◆ ConditionalArgPartOrConsequent

using Fortran::evaluate::ActualArgument::ConditionalArg::ConditionalArgPartOrConsequent
Initial value:
std::variant<common::CopyableIndirection<ConditionalArg>, Consequent>

◆ Consequent

using Fortran::evaluate::ActualArgument::ConditionalArg::Consequent
Initial value:
std::optional<common::CopyableIndirection<Expr<SomeType>>>

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