Jlm
Public Member Functions | Private Attributes | List of all members
jlm::rvsdg::RvsdgModule Class Reference

#include <RvsdgModule.hpp>

Inheritance diagram for jlm::rvsdg::RvsdgModule:
Inheritance graph
[legend]

Public Member Functions

virtual ~RvsdgModule () noexcept
 
 RvsdgModule ()=default
 
 RvsdgModule (util::FilePath sourceFilePath)
 
 RvsdgModule (util::FilePath sourceFilePath, std::unique_ptr< Graph > rvsdg)
 
 RvsdgModule (const RvsdgModule &)=delete
 
 RvsdgModule (RvsdgModule &&)=delete
 
RvsdgModuleoperator= (const RvsdgModule &)=delete
 
RvsdgModuleoperator= (RvsdgModule &&)=delete
 
virtual std::unique_ptr< RvsdgModulecopy () const
 
GraphRvsdg () noexcept
 
const GraphRvsdg () const noexcept
 
const std::optional< util::FilePath > & SourceFilePath () const noexcept
 

Private Attributes

std::unique_ptr< Graphrvsdg_ {}
 
std::optional< util::FilePathSourceFilePath_ {}
 

Detailed Description

Top-level class for a module with an RVSDG.

Definition at line 19 of file RvsdgModule.hpp.

Constructor & Destructor Documentation

◆ ~RvsdgModule()

jlm::rvsdg::RvsdgModule::~RvsdgModule ( )
virtualdefaultnoexcept

◆ RvsdgModule() [1/5]

jlm::rvsdg::RvsdgModule::RvsdgModule ( )
default

◆ RvsdgModule() [2/5]

jlm::rvsdg::RvsdgModule::RvsdgModule ( util::FilePath  sourceFilePath)
inlineexplicit

Definition at line 26 of file RvsdgModule.hpp.

◆ RvsdgModule() [3/5]

jlm::rvsdg::RvsdgModule::RvsdgModule ( util::FilePath  sourceFilePath,
std::unique_ptr< Graph rvsdg 
)
inline

Definition at line 31 of file RvsdgModule.hpp.

◆ RvsdgModule() [4/5]

jlm::rvsdg::RvsdgModule::RvsdgModule ( const RvsdgModule )
delete

◆ RvsdgModule() [5/5]

jlm::rvsdg::RvsdgModule::RvsdgModule ( RvsdgModule &&  )
delete

Member Function Documentation

◆ copy()

std::unique_ptr< RvsdgModule > jlm::rvsdg::RvsdgModule::copy ( ) const
virtual
Returns
A copy of the instance.

Reimplemented in jlm::llvm::LlvmRvsdgModule.

Definition at line 15 of file RvsdgModule.cpp.

◆ operator=() [1/2]

RvsdgModule& jlm::rvsdg::RvsdgModule::operator= ( const RvsdgModule )
delete

◆ operator=() [2/2]

RvsdgModule& jlm::rvsdg::RvsdgModule::operator= ( RvsdgModule &&  )
delete

◆ Rvsdg() [1/2]

const Graph& jlm::rvsdg::RvsdgModule::Rvsdg ( ) const
inlinenoexcept
Returns
The RVSDG of the module.

Definition at line 67 of file RvsdgModule.hpp.

◆ Rvsdg() [2/2]

Graph& jlm::rvsdg::RvsdgModule::Rvsdg ( )
inlinenoexcept
Returns
The RVSDG of the module.

Definition at line 57 of file RvsdgModule.hpp.

◆ SourceFilePath()

const std::optional<util::FilePath>& jlm::rvsdg::RvsdgModule::SourceFilePath ( ) const
inlinenoexcept

Definition at line 73 of file RvsdgModule.hpp.

Member Data Documentation

◆ rvsdg_

std::unique_ptr<Graph> jlm::rvsdg::RvsdgModule::rvsdg_ {}
private

Definition at line 79 of file RvsdgModule.hpp.

◆ SourceFilePath_

std::optional<util::FilePath> jlm::rvsdg::RvsdgModule::SourceFilePath_ {}
private

Definition at line 80 of file RvsdgModule.hpp.


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