hobbes
a language, embedded compiler, and runtime for efficient dynamic expression evaluation, data storage and analysis
Public Types | Public Member Functions | Static Public Attributes | Private Attributes | List of all members
hobbes::SwitchVal Class Reference

#include <dfa.H>

Inheritance diagram for hobbes::SwitchVal:
Inheritance graph
Collaboration diagram for hobbes::SwitchVal:
Collaboration graph

Public Types

typedef std::pair< PrimitivePtr, stateidx_tJump
 
typedef std::vector< JumpJumps
 

Public Member Functions

 SwitchVal (const std::string &, const Jumps &, stateidx_t)
 
const std::string & switchVar () const
 
const Jumpsjumps () const
 
stateidx_t defaultState () const
 
std::string stamp ()
 
- Public Member Functions inherited from hobbes::MStateCase< SwitchVal >
 MStateCase ()
 
- Public Member Functions inherited from hobbes::MState
int case_id () const
 

Static Public Attributes

static const int type_case_id = 1
 

Private Attributes

std::string var
 
Jumps jmps
 
stateidx_t def
 

Additional Inherited Members

- Public Attributes inherited from hobbes::MState
size_t refs
 
bool isPrimMatchRoot
 
PrimFArgs primFArgs
 
- Protected Member Functions inherited from hobbes::MState
 MState (int cid)
 

Member Typedef Documentation

◆ Jump

◆ Jumps

typedef std::vector<Jump> hobbes::SwitchVal::Jumps

Constructor & Destructor Documentation

◆ SwitchVal()

hobbes::SwitchVal::SwitchVal ( const std::string &  var,
const Jumps jmps,
stateidx_t  def 
)

Member Function Documentation

◆ defaultState()

stateidx_t hobbes::SwitchVal::defaultState ( ) const

◆ jumps()

const SwitchVal::Jumps & hobbes::SwitchVal::jumps ( ) const

◆ stamp()

std::string hobbes::SwitchVal::stamp ( )
virtual

Implements hobbes::MState.

◆ switchVar()

const std::string & hobbes::SwitchVal::switchVar ( ) const

Member Data Documentation

◆ def

stateidx_t hobbes::SwitchVal::def
private

◆ jmps

Jumps hobbes::SwitchVal::jmps
private

◆ type_case_id

const int hobbes::SwitchVal::type_case_id = 1
static

◆ var

std::string hobbes::SwitchVal::var
private

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