Jlm
Public Member Functions | Static Public Member Functions | List of all members
jlm::rvsdg::UnitType Class Referencefinal

Unit type (type carrying no information) More...

#include <UnitType.hpp>

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

Public Member Functions

 ~UnitType () noexcept override
 
std::string debug_string () const override
 
bool operator== (const Type &other) const noexcept override
 
std::size_t ComputeHash () const noexcept override
 
TypeKind Kind () const noexcept override
 Return the kind of this type. More...
 
- Public Member Functions inherited from jlm::rvsdg::Type
virtual ~Type () noexcept
 
bool operator!= (const jlm::rvsdg::Type &other) const noexcept
 

Static Public Member Functions

static std::shared_ptr< const UnitTypeCreate ()
 

Additional Inherited Members

- Protected Member Functions inherited from jlm::rvsdg::Type
constexpr Type () noexcept
 

Detailed Description

Unit type (type carrying no information)

Represents the "unit" type: A type which has only a single inhabitant without content and carries no information. This is used in places where a formal argument or result is needed, but no information is carried.

This roughly corresponds to the "void" type in C/C++.

Definition at line 23 of file UnitType.hpp.

Constructor & Destructor Documentation

◆ ~UnitType()

jlm::rvsdg::UnitType::~UnitType ( )
overridedefaultnoexcept

Member Function Documentation

◆ ComputeHash()

std::size_t jlm::rvsdg::UnitType::ComputeHash ( ) const
overridevirtualnoexcept

Computes a hash value for the instance of the type.

Returns
A hash value.

Implements jlm::rvsdg::Type.

Definition at line 21 of file UnitType.cpp.

◆ Create()

std::shared_ptr< const UnitType > jlm::rvsdg::UnitType::Create ( )
static

Definition at line 33 of file UnitType.cpp.

◆ debug_string()

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

Implements jlm::rvsdg::Type.

Definition at line 9 of file UnitType.cpp.

◆ Kind()

TypeKind jlm::rvsdg::UnitType::Kind ( ) const
overridevirtualnoexcept

Return the kind of this type.

Implements jlm::rvsdg::Type.

Definition at line 27 of file UnitType.cpp.

◆ operator==()

bool jlm::rvsdg::UnitType::operator== ( const Type other) const
overridevirtualnoexcept

Implements jlm::rvsdg::Type.

Definition at line 15 of file UnitType.cpp.


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