FLANG

Classes | Public Types | Public Member Functions | Protected Member Functions | Friends | List of all members
Fortran::evaluate::ExpressionAnalyzer Class Reference

## Public Types
using | MaybeExpr = std::optional< Expr< SomeType > >

## Public Member Functions
| ExpressionAnalyzer (semantics::SemanticsContext &sc)
| ExpressionAnalyzer (semantics::SemanticsContext &sc, FoldingContext &fc)
| ExpressionAnalyzer (ExpressionAnalyzer &)=default
semantics::SemanticsContext & | context () const
FoldingContext & | GetFoldingContext () const
parser::ContextualMessages & | GetContextualMessages ()
template<typename... A>
parser::Message * | Say (A &&... args)
template<typename T , typename... A>
parser::Message * | SayAt (const T &parsed, A &&... args)
int | GetDefaultKind (common::TypeCategory)
DynamicType | GetDefaultKindOfType (common::TypeCategory)
bool | CheckIntrinsicKind (TypeCategory, std::int64_t kind)
bool | CheckIntrinsicSize (TypeCategory, std::int64_t size)
bool | AddImpliedDo (parser::CharBlock, int kind)
void | RemoveImpliedDo (parser::CharBlock)
std::optional< int > | IsImpliedDo (parser::CharBlock) const
Expr< SubscriptInteger > | AnalyzeKindSelector (common::TypeCategory category, const std::optional< parser::KindSelector > &)
MaybeExpr | Analyze (const parser::Expr &)
MaybeExpr | Analyze (const parser::Variable &)
MaybeExpr | Analyze (const parser::Designator &)
MaybeExpr | Analyze (const parser::DataStmtValue &)
template<typename A >
MaybeExpr | Analyze (const common::Indirection< A > &x)
template<typename A >
MaybeExpr | Analyze (const std::optional< A > &x)
template<typename A >
MaybeExpr | Analyze (const parser::Scalar< A > &x)
template<typename A >
MaybeExpr | Analyze (const parser::Constant< A > &x)
template<typename A >
MaybeExpr | Analyze (const parser::Integer< A > &x)
template<typename A >
MaybeExpr | Analyze (const parser::Logical< A > &x)
template<typename A >
MaybeExpr | Analyze (const parser::DefaultChar< A > &x)
MaybeExpr | Analyze (const parser::Name &)
MaybeExpr | Analyze (const parser::DataRef &dr)
MaybeExpr | Analyze (const parser::StructureComponent &)
MaybeExpr | Analyze (const parser::SignedIntLiteralConstant &)
MaybeExpr | Analyze (const parser::SignedRealLiteralConstant &)
MaybeExpr | Analyze (const parser::SignedComplexLiteralConstant &)
MaybeExpr | Analyze (const parser::StructureConstructor &)
MaybeExpr | Analyze (const parser::InitialDataTarget &)
void | Analyze (const parser::CallStmt &)
const Assignment * | Analyze (const parser::AssignmentStmt &)
const Assignment * | Analyze (const parser::PointerAssignmentStmt &)

## Protected Member Functions
int | IntegerTypeSpecKind (const parser::IntegerTypeSpec &)

## Friends
class | ArgumentAnalyzer

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

- include/flang/Semantics/expression.h
- lib/Semantics/expression.cpp