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

#include <graph.hpp>

Inheritance diagram for jlm::rvsdg::GraphExport:
Inheritance graph
[legend]
Collaboration diagram for jlm::rvsdg::GraphExport:
Collaboration graph
[legend]

Public Member Functions

const std::string & Name () const noexcept
 
std::string debug_string () const override
 
GraphExportCopy (Output &origin, StructuralOutput *output) const override
 
- Public Member Functions inherited from jlm::rvsdg::RegionResult
 ~RegionResult () noexcept override
 
 RegionResult (rvsdg::Region *region, rvsdg::Output *origin, StructuralOutput *output, std::shared_ptr< const rvsdg::Type > type)
 
 RegionResult (const RegionResult &)=delete
 
 RegionResult (RegionResult &&)=delete
 
RegionResultoperator= (const RegionResult &)=delete
 
RegionResultoperator= (RegionResult &&)=delete
 
std::string debug_string () const override
 
StructuralOutputoutput () const noexcept
 
- Public Member Functions inherited from jlm::rvsdg::Input
virtual ~Input () noexcept
 
 Input (const Input &)=delete
 
 Input (Input &&)=delete
 
Inputoperator= (const Input &)=delete
 
Inputoperator= (Input &&)=delete
 
size_t index () const noexcept
 
Outputorigin () const noexcept
 
void divert_to (Output *new_origin)
 
const std::shared_ptr< const rvsdg::Type > & Type () const noexcept
 
Regionregion () const noexcept
 
std::variant< Node *, Region * > GetOwner () const noexcept
 

Static Public Member Functions

static GraphExportCreate (Output &origin, std::string name)
 
- Static Public Member Functions inherited from jlm::rvsdg::RegionResult
static RegionResultCreate (rvsdg::Region &region, rvsdg::Output &origin, StructuralOutput *output, std::shared_ptr< const rvsdg::Type > type)
 Create region exit result. More...
 

Protected Member Functions

 GraphExport (Output &origin, std::string name)
 
- Protected Member Functions inherited from jlm::rvsdg::Input
 Input (Node &owner, Output &origin, std::shared_ptr< const rvsdg::Type > type)
 
 Input (Region &owner, Output &origin, std::shared_ptr< const rvsdg::Type > type)
 

Private Attributes

std::string Name_
 

Additional Inherited Members

- Public Types inherited from jlm::rvsdg::RegionResult
typedef util::IntrusiveListAccessor< RegionResult, &RegionResult::structural_output_anchor_structural_output_accessor
 

Detailed Description

Represents an export from the RVSDG of an internal entity.

Definition at line 46 of file graph.hpp.

Constructor & Destructor Documentation

◆ GraphExport()

jlm::rvsdg::GraphExport::GraphExport ( rvsdg::Output origin,
std::string  name 
)
protected

Definition at line 43 of file graph.cpp.

Member Function Documentation

◆ Copy()

GraphExport & jlm::rvsdg::GraphExport::Copy ( Output origin,
StructuralOutput output 
) const
overridevirtual

Creates a copy of the result with origin and structural_output output. The result is created with the same type as origin and in the same region as origin.

Parameters
originThe origin for the result.
outputThe structural_output to the result, if any.
Returns
A reference to the copied result.

Reimplemented from jlm::rvsdg::RegionResult.

Definition at line 55 of file graph.cpp.

◆ Create()

GraphExport & jlm::rvsdg::GraphExport::Create ( Output origin,
std::string  name 
)
static

Definition at line 62 of file graph.cpp.

◆ debug_string()

std::string jlm::rvsdg::GraphExport::debug_string ( ) const
overridevirtual

Reimplemented from jlm::rvsdg::Input.

Definition at line 49 of file graph.cpp.

◆ Name()

const std::string& jlm::rvsdg::GraphExport::Name ( ) const
inlinenoexcept

Definition at line 53 of file graph.hpp.

Member Data Documentation

◆ Name_

std::string jlm::rvsdg::GraphExport::Name_
private

Definition at line 68 of file graph.hpp.


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