hobbes
a language, embedded compiler, and runtime for efficient dynamic expression evaluation, data storage and analysis
Public Types | Static Public Member Functions | Private Types | Private Member Functions | Static Private Member Functions | Private Attributes | List of all members
hobbes::digraphF< X, Y, Fp, A, R > Class Template Reference

#include <lalr.H>

Collaboration diagram for hobbes::digraphF< X, Y, Fp, A, R >:
Collaboration graph

Public Types

typedef std::set< X > Xs
 
typedef std::map< X, Y > F
 

Static Public Member Functions

static F map (const Xs &xs, const Fp &fp, const A &append, const R &r)
 

Private Types

typedef std::stack< X > Xstack
 
typedef std::map< X, natXidxs
 

Private Member Functions

 digraphF (const Xs &xs, const Fp &fp, const A &append, const R &r)
 
F map () const
 
void traverse (X x, Xstack *s, Xidxs *n, F *f) const
 

Static Private Member Functions

static Xidxs freshIdxs (const Xs &xs)
 
static nat inf ()
 

Private Attributes

const Xsxs
 
const Fp & fp
 
const A & append
 
const R & r
 

Member Typedef Documentation

◆ F

template<typename X , typename Y , typename Fp , typename A , typename R >
typedef std::map<X, Y> hobbes::digraphF< X, Y, Fp, A, R >::F

◆ Xidxs

template<typename X , typename Y , typename Fp , typename A , typename R >
typedef std::map<X, nat> hobbes::digraphF< X, Y, Fp, A, R >::Xidxs
private

◆ Xs

template<typename X , typename Y , typename Fp , typename A , typename R >
typedef std::set<X> hobbes::digraphF< X, Y, Fp, A, R >::Xs

◆ Xstack

template<typename X , typename Y , typename Fp , typename A , typename R >
typedef std::stack<X> hobbes::digraphF< X, Y, Fp, A, R >::Xstack
private

Constructor & Destructor Documentation

◆ digraphF()

template<typename X , typename Y , typename Fp , typename A , typename R >
hobbes::digraphF< X, Y, Fp, A, R >::digraphF ( const Xs xs,
const Fp &  fp,
const A &  append,
const R &  r 
)
inlineprivate

Member Function Documentation

◆ freshIdxs()

template<typename X , typename Y , typename Fp , typename A , typename R >
static Xidxs hobbes::digraphF< X, Y, Fp, A, R >::freshIdxs ( const Xs xs)
inlinestaticprivate

◆ inf()

template<typename X , typename Y , typename Fp , typename A , typename R >
static nat hobbes::digraphF< X, Y, Fp, A, R >::inf ( )
inlinestaticprivate

◆ map() [1/2]

template<typename X , typename Y , typename Fp , typename A , typename R >
static F hobbes::digraphF< X, Y, Fp, A, R >::map ( const Xs xs,
const Fp &  fp,
const A &  append,
const R &  r 
)
inlinestatic

◆ map() [2/2]

template<typename X , typename Y , typename Fp , typename A , typename R >
F hobbes::digraphF< X, Y, Fp, A, R >::map ( ) const
inlineprivate

◆ traverse()

template<typename X , typename Y , typename Fp , typename A , typename R >
void hobbes::digraphF< X, Y, Fp, A, R >::traverse ( x,
Xstack s,
Xidxs n,
F f 
) const
inlineprivate

Member Data Documentation

◆ append

template<typename X , typename Y , typename Fp , typename A , typename R >
const A& hobbes::digraphF< X, Y, Fp, A, R >::append
private

◆ fp

template<typename X , typename Y , typename Fp , typename A , typename R >
const Fp& hobbes::digraphF< X, Y, Fp, A, R >::fp
private

◆ r

template<typename X , typename Y , typename Fp , typename A , typename R >
const R& hobbes::digraphF< X, Y, Fp, A, R >::r
private

◆ xs

template<typename X , typename Y , typename Fp , typename A , typename R >
const Xs& hobbes::digraphF< X, Y, Fp, A, R >::xs
private

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