MimIR
MimIR is my Intermediate Representation
Loading...
Searching...
No Matches
mim::Branch Class Reference

Matches (ff, tt)#cond arg where cond is not a Literal. More...

#include <mim/tuple.h>

Inheritance diagram for mim::Branch:
[legend]

Public Member Functions

 Branch (const Def *)
 operator bool () const noexcept
const App * app () const
const Def * callee () const
const Def * arg () const
Public Member Functions inherited from mim::Select
 Select (const Def *)
const Def * pair () const
const Def * cond () const
const Def * tt () const
const Def * ff () const
Public Member Functions inherited from mim::Switch
 Switch (const Def *)
 operator bool () const noexcept
const Extract * extract () const
const Def * tuple () const
const Def * index () const
size_t num_targets () const
const Def * target (size_t i) const

Additional Inherited Members

Protected Attributes inherited from mim::Switch
const Extract * extract_ = nullptr

Detailed Description

Matches (ff, tt)#cond arg where cond is not a Literal.

(ff, tt)#cond is matched as a Select.

Definition at line 441 of file tuple.h.

Constructor & Destructor Documentation

◆ Branch()

mim::Branch::Branch ( const Def * def)

Definition at line 97 of file tuple.cpp.

References mim::Switch::extract(), and mim::Select::Select().

Member Function Documentation

◆ app()

const App * mim::Branch::app ( ) const
inline

Definition at line 447 of file tuple.h.

Referenced by arg(), and callee().

◆ arg()

const Def * mim::Branch::arg ( ) const

Definition at line 103 of file tuple.cpp.

References app(), and mim::App::arg().

◆ callee()

const Def * mim::Branch::callee ( ) const

Definition at line 102 of file tuple.cpp.

References app(), and mim::App::callee().

◆ operator bool()

mim::Branch::operator bool ( ) const
inlineexplicitnoexcept

Definition at line 445 of file tuple.h.


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