carl  24.04
Computer ARithmetic Library
carl::carlVariables Class Reference

#include <Variables.h>

Collaboration diagram for carl::carlVariables:

Public Types

using iterator = std::vector< Variable >::iterator
 
using const_iterator = std::vector< Variable >::const_iterator
 

Public Member Functions

 carlVariables (variable_type_filter filter=variable_type_filter::all())
 
 carlVariables (std::initializer_list< Variable > i, variable_type_filter filter=variable_type_filter::all())
 
template<typename Iterator >
 carlVariables (const Iterator &b, const Iterator &e, variable_type_filter filter=variable_type_filter::all())
 
auto begin () const
 
auto end () const
 
auto begin ()
 
auto end ()
 
bool empty () const
 
std::size_t size () const
 
void clear ()
 
bool has (Variable var) const
 
void add (Variable v)
 
template<typename Iterator >
void add (const Iterator &b, const Iterator &e)
 
void add (std::initializer_list< Variable > i)
 
void erase (Variable v)
 
const std::vector< Variable > & as_vector () const
 
std::set< Variableas_set () const
 
carlVariables filter (variable_type_filter &&f) const
 
auto boolean () const
 
auto integer () const
 
auto real () const
 
auto arithmetic () const
 
auto bitvector () const
 
auto uninterpreted () const
 

Private Member Functions

void compact (bool force=false) const
 

Private Attributes

std::vector< VariablemVariables
 
std::size_t mAddedSinceCompact = 0
 
variable_type_filter mFilter
 

Friends

bool operator== (const carlVariables &lhs, const carlVariables &rhs)
 
std::ostream & operator<< (std::ostream &os, const carlVariables &vars)
 

Detailed Description

Definition at line 83 of file Variables.h.

Member Typedef Documentation

◆ const_iterator

Definition at line 88 of file Variables.h.

◆ iterator

Definition at line 87 of file Variables.h.

Constructor & Destructor Documentation

◆ carlVariables() [1/3]

carl::carlVariables::carlVariables ( variable_type_filter  filter = variable_type_filter::all())
inline

Definition at line 102 of file Variables.h.

Here is the caller graph for this function:

◆ carlVariables() [2/3]

carl::carlVariables::carlVariables ( std::initializer_list< Variable i,
variable_type_filter  filter = variable_type_filter::all() 
)
inlineexplicit

Definition at line 103 of file Variables.h.

Here is the call graph for this function:

◆ carlVariables() [3/3]

template<typename Iterator >
carl::carlVariables::carlVariables ( const Iterator &  b,
const Iterator &  e,
variable_type_filter  filter = variable_type_filter::all() 
)
inlineexplicit

Definition at line 107 of file Variables.h.

Here is the call graph for this function:

Member Function Documentation

◆ add() [1/3]

template<typename Iterator >
void carl::carlVariables::add ( const Iterator &  b,
const Iterator &  e 
)
inline

Definition at line 149 of file Variables.h.

Here is the call graph for this function:

◆ add() [2/3]

void carl::carlVariables::add ( std::initializer_list< Variable i)
inline

Definition at line 160 of file Variables.h.

Here is the call graph for this function:

◆ add() [3/3]

void carl::carlVariables::add ( Variable  v)
inline

Definition at line 141 of file Variables.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ arithmetic()

auto carl::carlVariables::arithmetic ( ) const
inline

Definition at line 191 of file Variables.h.

Here is the call graph for this function:

◆ as_set()

std::set<Variable> carl::carlVariables::as_set ( ) const
inline

Definition at line 173 of file Variables.h.

Here is the call graph for this function:

◆ as_vector()

const std::vector<Variable>& carl::carlVariables::as_vector ( ) const
inline

Definition at line 168 of file Variables.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ begin() [1/2]

auto carl::carlVariables::begin ( )
inline

Definition at line 118 of file Variables.h.

Here is the call graph for this function:

◆ begin() [2/2]

auto carl::carlVariables::begin ( ) const
inline

Definition at line 111 of file Variables.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ bitvector()

auto carl::carlVariables::bitvector ( ) const
inline

Definition at line 194 of file Variables.h.

Here is the call graph for this function:

◆ boolean()

auto carl::carlVariables::boolean ( ) const
inline

Definition at line 182 of file Variables.h.

Here is the call graph for this function:

◆ clear()

void carl::carlVariables::clear ( )
inline

Definition at line 133 of file Variables.h.

◆ compact()

void carl::carlVariables::compact ( bool  force = false) const
inlineprivate

Definition at line 94 of file Variables.h.

Here is the caller graph for this function:

◆ empty()

bool carl::carlVariables::empty ( ) const
inline

Definition at line 126 of file Variables.h.

◆ end() [1/2]

auto carl::carlVariables::end ( )
inline

Definition at line 122 of file Variables.h.

◆ end() [2/2]

auto carl::carlVariables::end ( ) const
inline

Definition at line 115 of file Variables.h.

Here is the caller graph for this function:

◆ erase()

void carl::carlVariables::erase ( Variable  v)
inline

Definition at line 164 of file Variables.h.

Here is the caller graph for this function:

◆ filter()

carlVariables carl::carlVariables::filter ( variable_type_filter &&  f) const
inline

Definition at line 178 of file Variables.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ has()

bool carl::carlVariables::has ( Variable  var) const
inline

Definition at line 137 of file Variables.h.

Here is the caller graph for this function:

◆ integer()

auto carl::carlVariables::integer ( ) const
inline

Definition at line 185 of file Variables.h.

Here is the call graph for this function:

◆ real()

auto carl::carlVariables::real ( ) const
inline

Definition at line 188 of file Variables.h.

Here is the call graph for this function:

◆ size()

std::size_t carl::carlVariables::size ( ) const
inline

Definition at line 129 of file Variables.h.

Here is the call graph for this function:

◆ uninterpreted()

auto carl::carlVariables::uninterpreted ( ) const
inline

Definition at line 197 of file Variables.h.

Here is the call graph for this function:

Friends And Related Function Documentation

◆ operator<<

std::ostream& operator<< ( std::ostream &  os,
const carlVariables vars 
)
friend

Definition at line 213 of file Variables.h.

◆ operator==

bool operator== ( const carlVariables lhs,
const carlVariables rhs 
)
friend

Definition at line 208 of file Variables.h.

Field Documentation

◆ mAddedSinceCompact

std::size_t carl::carlVariables::mAddedSinceCompact = 0
mutableprivate

Definition at line 91 of file Variables.h.

◆ mFilter

variable_type_filter carl::carlVariables::mFilter
private

Definition at line 92 of file Variables.h.

◆ mVariables

std::vector<Variable> carl::carlVariables::mVariables
mutableprivate

Definition at line 90 of file Variables.h.


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