FLANG
|
Module-like units contain a list of function-like units. More...
#include <flang/Lower/PFTBuilder.h>
Public Types | |
using | ModuleStatement = ReferenceVariant< parser::Statement< parser::ModuleStmt >, parser::Statement< parser::EndModuleStmt >, parser::Statement< parser::SubmoduleStmt >, parser::Statement< parser::EndSubmoduleStmt > > |
![]() | |
template<typename B > | |
using | BaseType = std::conditional_t< isConst, const B, B > |
template<typename B > | |
using | Ref = common::Reference< BaseType< B > > |
Public Member Functions | |
ModuleLikeUnit (const parser::Module &m, const PftNode &parent) | |
ModuleLikeUnit (const parser::Submodule &m, const PftNode &parent) | |
ModuleLikeUnit (ModuleLikeUnit &&)=default | |
ModuleLikeUnit (const ModuleLikeUnit &)=delete | |
LLVM_DUMP_METHOD void | dump () const |
parser::CharBlock | getStartingSourceLoc () const |
Get the starting source location for this module like unit. | |
const Fortran::semantics::Scope & | getScope () const |
Get the module scope. | |
![]() | |
template<typename A > | |
ProgramUnit (const A &p, const PftNode &parent) | |
ProgramUnit (ProgramUnit &&)=default | |
ProgramUnit (const ProgramUnit &)=delete | |
![]() | |
ReferenceVariantBase (std::variant< Ref< A >... > b) | |
template<typename T > | |
ReferenceVariantBase (Ref< T > b) | |
template<typename B > | |
constexpr BaseType< B > & | get () const |
template<typename B > | |
constexpr BaseType< B > & | getStatement () const |
template<typename B > | |
constexpr BaseType< B > * | getIf () const |
template<typename B > | |
constexpr bool | isA () const |
template<typename VISITOR > | |
constexpr auto | visit (VISITOR &&visitor) const |
Public Attributes | |
ModuleStatement | beginStmt |
ModuleStatement | endStmt |
ContainedUnitList | containedUnitList |
EvaluationList | evaluationList |
![]() | |
PftNode | parent |
Module-like units contain a list of function-like units.