FLANG
Fortran::evaluate::operation::ArgumentExtractor< IgnoreResizingConverts > Struct Template Reference
Inheritance diagram for Fortran::evaluate::operation::ArgumentExtractor< IgnoreResizingConverts >:
Fortran::evaluate::Traverse< ArgumentExtractor< IgnoreResizingConverts >, std::pair< operation::Operator, std::vector< Expr< SomeType > > >, false >

Public Types

using Arguments = std::vector<Expr<SomeType>>
using Result = std::pair<operation::Operator, Arguments>
using Base

Public Member Functions

Result Default () const
template<int Kind>
Result operator() (const Constant< Type< Logical, Kind > > &x) const
template<typename R>
Result operator() (const FunctionRef< R > &x) const
template<typename D, typename R, typename... Os>
Result operator() (const Operation< D, R, Os... > &x) const
template<typename T>
Result operator() (const Designator< T > &x) const
template<typename T>
Result operator() (const Constant< T > &x) const
template<typename... Rs>
Result Combine (Result &&result, Rs &&...results) const
Result operator() (const common::Indirection< A, C > &x) const
Result operator() (const common::ForwardOwningPointer< A > &p) const
Result operator() (const SymbolRef x) const
Result operator() (const std::unique_ptr< A > &x) const
Result operator() (const std::shared_ptr< A > &x) const
Result operator() (const A *x) const
Result operator() (const std::optional< A > &x) const
Result operator() (const std::variant< As... > &u) const
Result operator() (const std::vector< A > &x) const
Result operator() (const std::pair< A, B > &x) const
Result operator() (const BOZLiteralConstant &) const
Result operator() (const NullPointer &) const
Result operator() (const Symbol &symbol) const
Result operator() (const StaticDataObject &) const
Result operator() (const ImpliedDoIndex &) const
Result operator() (const BaseObject &x) const
Result operator() (const Component &x) const
Result operator() (const NamedEntity &x) const
Result operator() (const TypeParamInquiry &x) const
Result operator() (const Triplet &x) const
Result operator() (const Subscript &x) const
Result operator() (const ArrayRef &x) const
Result operator() (const CoarrayRef &x) const
Result operator() (const DataRef &x) const
Result operator() (const Substring &x) const
Result operator() (const ComplexPart &x) const
Result operator() (const DescriptorInquiry &x) const
Result operator() (const SpecificIntrinsic &) const
Result operator() (const ProcedureDesignator &x) const
Result operator() (const ActualArgument &x) const
Result operator() (const ProcedureRef &x) const
Result operator() (const FunctionRef< T > &x) const
Result operator() (const ArrayConstructorValue< T > &x) const
Result operator() (const ArrayConstructorValues< T > &x) const
Result operator() (const ImpliedDo< T > &x) const
Result operator() (const semantics::ParamValue &x) const
Result operator() (const semantics::DerivedTypeSpec::ParameterMapType::value_type &x) const
Result operator() (const semantics::DerivedTypeSpec::ParameterMapType &x) const
Result operator() (const semantics::DerivedTypeSpec &x) const
Result operator() (const StructureConstructorValues::value_type &x) const
Result operator() (const StructureConstructorValues &x) const
Result operator() (const StructureConstructor &x) const
Result operator() (const Relational< SomeType > &x) const
Result operator() (const Expr< T > &x) const
Result operator() (const Assignment &x) const
Result operator() (const Assignment::Intrinsic &) const
Result operator() (const GenericExprWrapper &x) const
Result operator() (const GenericAssignmentWrapper &x) const
Public Member Functions inherited from Fortran::evaluate::Traverse< ArgumentExtractor< IgnoreResizingConverts >, std::pair< operation::Operator, std::vector< Expr< SomeType > > >, false >
 Traverse (ArgumentExtractor< IgnoreResizingConverts > &v)
std::pair< operation::Operator, std::vector< Expr< SomeType > > > operator() (const common::Indirection< A, C > &x) const

Static Public Attributes

static constexpr auto IgnoreResizes {IgnoreResizingConverts}
static constexpr auto Logical {common::TypeCategory::Logical}

Member Typedef Documentation

◆ Base

template<bool IgnoreResizingConverts>
using Fortran::evaluate::operation::ArgumentExtractor< IgnoreResizingConverts >::Base
Initial value:
Traverse<ArgumentExtractor<IgnoreResizingConverts>, Result, false>

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