Lattice Land Core Library
Loading...
Searching...
No Matches
lala::HashMapVarIndex< Allocator > Struct Template Reference

#include <env.hpp>

Public Types

using allocator_type = Allocator
 
using this_type = ListVarIndex<Allocator>
 
using variable_type = Variable<Allocator>
 
template<class T >
using bvector = battery::vector<T, Allocator>
 
using bstring = battery::string<Allocator>
 

Public Member Functions

 HashMapVarIndex (bvector< variable_type > *lvars)
 
 HashMapVarIndex (this_type &&other, bvector< variable_type > *lvars)
 
 HashMapVarIndex (const this_type &other, bvector< variable_type > *lvars)
 
template<class Alloc2 >
 HashMapVarIndex (const HashMapVarIndex< Alloc2 > &other, bvector< variable_type > *lvars)
 
this_typeoperator= (this_type &&other)
 
this_typeoperator= (const this_type &other)
 
std::optional< size_t > lvar_index_of (const char *lv) const
 
void push_back (variable_type &&var)
 
void erase (const char *lv)
 
void set_lvars (bvector< variable_type > *lvars)
 

Public Attributes

bvector< variable_type > * lvars
 
std::unordered_map< std::string, size_t > lvar_index
 

Member Typedef Documentation

◆ allocator_type

template<class Allocator >
using lala::HashMapVarIndex< Allocator >::allocator_type = Allocator

◆ this_type

template<class Allocator >
using lala::HashMapVarIndex< Allocator >::this_type = ListVarIndex<Allocator>

◆ variable_type

template<class Allocator >
using lala::HashMapVarIndex< Allocator >::variable_type = Variable<Allocator>

◆ bvector

template<class Allocator >
template<class T >
using lala::HashMapVarIndex< Allocator >::bvector = battery::vector<T, Allocator>

◆ bstring

template<class Allocator >
using lala::HashMapVarIndex< Allocator >::bstring = battery::string<Allocator>

Constructor & Destructor Documentation

◆ HashMapVarIndex() [1/4]

template<class Allocator >
lala::HashMapVarIndex< Allocator >::HashMapVarIndex ( bvector< variable_type > * lvars)
inline

◆ HashMapVarIndex() [2/4]

template<class Allocator >
lala::HashMapVarIndex< Allocator >::HashMapVarIndex ( this_type && other,
bvector< variable_type > * lvars )
inline

◆ HashMapVarIndex() [3/4]

template<class Allocator >
lala::HashMapVarIndex< Allocator >::HashMapVarIndex ( const this_type & other,
bvector< variable_type > * lvars )
inline

◆ HashMapVarIndex() [4/4]

template<class Allocator >
template<class Alloc2 >
lala::HashMapVarIndex< Allocator >::HashMapVarIndex ( const HashMapVarIndex< Alloc2 > & other,
bvector< variable_type > * lvars )
inline

Member Function Documentation

◆ operator=() [1/2]

template<class Allocator >
this_type & lala::HashMapVarIndex< Allocator >::operator= ( this_type && other)
inline

◆ operator=() [2/2]

template<class Allocator >
this_type & lala::HashMapVarIndex< Allocator >::operator= ( const this_type & other)
inline

◆ lvar_index_of()

template<class Allocator >
std::optional< size_t > lala::HashMapVarIndex< Allocator >::lvar_index_of ( const char * lv) const
inline

◆ push_back()

template<class Allocator >
void lala::HashMapVarIndex< Allocator >::push_back ( variable_type && var)
inline

◆ erase()

template<class Allocator >
void lala::HashMapVarIndex< Allocator >::erase ( const char * lv)
inline

◆ set_lvars()

template<class Allocator >
void lala::HashMapVarIndex< Allocator >::set_lvars ( bvector< variable_type > * lvars)
inline

Member Data Documentation

◆ lvars

template<class Allocator >
bvector<variable_type>* lala::HashMapVarIndex< Allocator >::lvars

◆ lvar_index

template<class Allocator >
std::unordered_map<std::string, size_t> lala::HashMapVarIndex< Allocator >::lvar_index

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