FLANG
Fortran::semantics::ImplicitRulesVisitor Class Reference
Inheritance diagram for Fortran::semantics::ImplicitRulesVisitor:
Fortran::semantics::DeclTypeSpecVisitor Fortran::semantics::AttrsVisitor Fortran::semantics::BaseVisitor Fortran::semantics::ScopeHandler Fortran::semantics::GenericHandler Fortran::semantics::InterfaceVisitor Fortran::semantics::ModuleVisitor Fortran::semantics::ResolveNamesVisitor Fortran::semantics::SubprogramVisitor Fortran::semantics::DeclarationVisitor Fortran::semantics::InterfaceVisitor Fortran::semantics::SubprogramVisitor Fortran::semantics::ResolveNamesVisitor Fortran::semantics::ResolveNamesVisitor Fortran::semantics::AccVisitor Fortran::semantics::ConstructVisitor Fortran::semantics::OmpVisitor Fortran::semantics::SubprogramVisitor Fortran::semantics::ResolveNamesVisitor Fortran::semantics::ResolveNamesVisitor Fortran::semantics::ResolveNamesVisitor Fortran::semantics::ResolveNamesVisitor Fortran::semantics::ResolveNamesVisitor

Public Types

using ImplicitNoneNameSpec = parser::ImplicitStmt::ImplicitNoneNameSpec

Public Member Functions

void Post (const parser::ParameterStmt &)
bool Pre (const parser::ImplicitStmt &)
bool Pre (const parser::LetterSpec &)
bool Pre (const parser::ImplicitSpec &)
void Post (const parser::ImplicitSpec &)
const DeclTypeSpecGetType (SourceName name, bool respectImplicitNoneType=true)
bool isImplicitNoneType () const
bool isImplicitNoneType (const Scope &scope) const
bool isImplicitNoneExternal () const
void set_inheritFromParent (bool x)
void Post (const parser::IntrinsicTypeSpec::DoublePrecision &)
void Post (const parser::IntrinsicTypeSpec::DoubleComplex &)
void Post (const parser::DeclarationTypeSpec::ClassStar &)
void Post (const parser::DeclarationTypeSpec::TypeStar &)
void Post (const parser::TypeGuardStmt &)
void Post (const parser::TypeSpec &)
void Post (const parser::LanguageBindingSpec &)
bool Pre (const parser::TypeGuardStmt &)
bool Pre (const parser::IntentSpec &)
bool Pre (const parser::Pass &)
bool Pre (const common::CUDADataAttr)
Public Member Functions inherited from Fortran::semantics::DeclTypeSpecVisitor
void Post (const parser::IntrinsicTypeSpec::DoublePrecision &)
void Post (const parser::IntrinsicTypeSpec::DoubleComplex &)
void Post (const parser::DeclarationTypeSpec::ClassStar &)
void Post (const parser::DeclarationTypeSpec::TypeStar &)
bool Pre (const parser::TypeGuardStmt &)
void Post (const parser::TypeGuardStmt &)
void Post (const parser::TypeSpec &)
template<typename T>
const DeclTypeSpecProcessTypeSpec (const T &x, bool allowForward=false)
void Post (const parser::LanguageBindingSpec &)
bool Pre (const parser::IntentSpec &)
bool Pre (const parser::Pass &)
bool Pre (const common::CUDADataAttr)
Public Member Functions inherited from Fortran::semantics::AttrsVisitor
bool BeginAttrs ()
Attrs GetAttrs ()
std::optional< common::CUDADataAttr > cudaDataAttr ()
Attrs EndAttrs ()
bool SetPassNameOn (Symbol &)
void SetBindNameOn (Symbol &)
void Post (const parser::LanguageBindingSpec &)
bool Pre (const parser::IntentSpec &)
bool Pre (const parser::Pass &)
bool CheckAndSet (Attr)
bool Pre (const common::CUDADataAttr)
Public Member Functions inherited from Fortran::semantics::BaseVisitor
 BaseVisitor (SemanticsContext &c, ResolveNamesVisitor &v, ImplicitRulesMap &rules)
template<typename T>
void Walk (const T &)
MessageHandlermessageHandler ()
const std::optional< SourceName > & currStmtSource ()
SemanticsContextcontext () const
evaluate::FoldingContextGetFoldingContext () const
bool IsIntrinsic (const SourceName &name, std::optional< Symbol::Flag > flag) const
bool InModuleFile () const
void MakePlaceholder (const parser::Name &, MiscDetails::Kind)
template<typename T>
common::IfNoLvalue< T, T > FoldExpr (T &&expr)
template<typename T>
MaybeExpr EvaluateExpr (const T &expr)
template<typename T>
MaybeExpr EvaluateNonPointerInitializer (const Symbol &symbol, const T &expr, parser::CharBlock source)
template<typename T>
MaybeIntExpr EvaluateIntExpr (const T &expr)
template<typename T>
MaybeSubscriptIntExpr EvaluateSubscriptIntExpr (const T &expr)
template<typename... A>
MessageSay (A &&...args)
template<typename... A>
MessageSay (const parser::Name &name, MessageFixedText &&text, const A &...args)

Protected Member Functions

void BeginScope (const Scope &)
void SetScope (const Scope &)
Protected Member Functions inherited from Fortran::semantics::DeclTypeSpecVisitor
bool allowForwardReferenceToDerivedType () const
void set_allowForwardReferenceToDerivedType (bool yes)
const DeclTypeSpecGetDeclTypeSpec ()
void BeginDeclTypeSpec ()
void EndDeclTypeSpec ()
void SetDeclTypeSpec (const DeclTypeSpec &)
void SetDeclTypeSpecCategory (DeclTypeSpec::Category)
DeclTypeSpec::Category GetDeclTypeSpecCategory () const
KindExpr GetKindParamExpr (TypeCategory, const std::optional< parser::KindSelector > &)
void CheckForAbstractType (const Symbol &typeSymbol)
Protected Member Functions inherited from Fortran::semantics::AttrsVisitor
Attr AccessSpecToAttr (const parser::AccessSpec &x)
Attr IntentSpecToAttr (const parser::IntentSpec &x)

Additional Inherited Members

Protected Attributes inherited from Fortran::semantics::AttrsVisitor
std::optional< Attrs > attrs_
std::optional< common::CUDADataAttr > cudaDataAttr_
Protected Attributes inherited from Fortran::semantics::BaseVisitor
ImplicitRulesMap * implicitRulesMap_ {nullptr}

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