FLANG

Public Member Functions | Static Public Member Functions | List of all members
Fortran::semantics::ProgramTree Class Reference

## Public Member Functions
| ENUM_CLASS (Kind, Program, Function, Subroutine, MpSubprogram, Module, Submodule, BlockData) using Stmt
| ProgramTree (const parser::Name &name, const parser::SpecificationPart &spec, const parser::ExecutionPart *exec=nullptr)
const parser::Name & | name () const
Kind | GetKind () const
const Stmt & | stmt () const
bool | isSpecificationPartResolved () const
void | set_isSpecificationPartResolved (bool yes=true)
const parser::ParentIdentifier & | GetParentId () const
const parser::SpecificationPart & | spec () const
const parser::ExecutionPart * | exec () const
std::list< ProgramTree > & | children ()
const std::list< ProgramTree > & | children () const
Symbol::Flag | GetSubpFlag () const
bool | IsModule () const
bool | HasModulePrefix () const
Scope * | scope () const
void | set_scope (Scope &)
void | AddChild (ProgramTree &&)
template<typename T >
ProgramTree & | set_stmt (const parser::Statement< T > &stmt)
template<typename T >
ProgramTree & | set_endStmt (const parser::Statement< T > &stmt)

## Static Public Member Functions
static ProgramTree | Build (const parser::ProgramUnit &)
static ProgramTree | Build (const parser::MainProgram &)
static ProgramTree | Build (const parser::FunctionSubprogram &)
static ProgramTree | Build (const parser::SubroutineSubprogram &)
static ProgramTree | Build (const parser::SeparateModuleSubprogram &)
static ProgramTree | Build (const parser::Module &)
static ProgramTree | Build (const parser::Submodule &)
static ProgramTree | Build (const parser::BlockData &)

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

- lib/Semantics/program-tree.h
- lib/Semantics/program-tree.cpp