16 #ifndef __APXX_ENVIRONMENT_HH 17 #define __APXX_ENVIRONMENT_HH 22 #include "ap_environment.h" 241 friend environment lce(
const std::vector<environment>& x, std::vector<dimchange>& chg);
347 void print(FILE* stream=stdout)
const;
environment()
Creates a new empty environment.
Definition: apxx_environment.hh:45
Dimension permutation object (ap_dimperm_t wrapper).
Definition: apxx_dimension.hh:292
void print(FILE *stream=stdout) const
Prints to a C stream.
Definition: apxx_environment.hh:417
Dimension change object (ap_dimchange_t wrapper).
Definition: apxx_dimension.hh:102
Definition: apxx_abstract0.hh:27
Array of linear constraints (ap_lincons1_array_t wrapper).
Definition: apxx_lincons1.hh:331
ap_dim_t get_dim(const var &x) const
Returns the dimension associated with a variable name.
Definition: apxx_environment.hh:355
Array of arbitrary constraints (ap_tcons1_array_t wrapper).
Definition: apxx_tcons1.hh:337
environment add(const var *intdim, size_t intdim_size, const var *realdim, size_t realdim_size) const
Returns a copy of the environment with intdim_size integer and realdim_size real variable names added...
Definition: apxx_environment.hh:103
Variable name (ap_var_t wrapper).
Definition: apxx_var.hh:39
const ap_environment_t * get_ap_environment_t() const
Returns a pointer to the internal APRON object pointed by *this.
Definition: apxx_environment.hh:426
environment add(const std::vector< var > &intdim, const std::vector< var > &realdim) const
Returns a copy of the environment with some integer and/or real variable names added.
Definition: apxx_environment.hh:93
friend int cmp(const environment &x, const environment &y)
Environment comparison.
Definition: apxx_environment.hh:399
const var & get_var(ap_dim_t d) const
Returns the variable name at a given dimension (bound-checked).
Definition: apxx_environment.hh:362
const environment & operator=(const environment &x)
Assignment (reference counter manipulation).
Definition: apxx_environment.hh:80
Level 1 generator (ap_generator1_t wrapper).
Definition: apxx_generator1.hh:40
friend bool operator>=(const environment &x, const environment &y)
Inclusion testing.
Definition: apxx_environment.hh:394
environment rename(const std::vector< std::pair< var, var > > &dims) const
Returns a copy of the environment with some variable names substituted.
Definition: apxx_environment.hh:159
friend std::ostream & operator<<(std::ostream &os, const environment &s)
Printing.
Definition: apxx_environment.hh:407
friend bool operator==(const environment &x, const environment &y)
Equality testing.
Definition: apxx_environment.hh:379
std::vector< var > get_vars() const
Returns (a copy of) the full map from dimensions to variable names.
Definition: apxx_environment.hh:368
friend environment lce(const environment &x, const environment &y)
Returns the least common environment of two environments.
Definition: apxx_environment.hh:213
ap_dim_t operator[](const var &x) const
Returns the dimension associated with the variable name.
Definition: apxx_environment.hh:343
Level 1 environment (ap_environment_t wrapper).
Definition: apxx_environment.hh:51
friend dimchange get_dimchange(const environment &x, const environment &y)
Returns the dimension change to transform an environment x into a super-environment y.
Definition: apxx_environment.hh:314
~environment()
Decrements the reference counter and, if null, actually frees the environment.
Definition: apxx_environment.hh:71
environment(ap_environment_t *x)
Used internally only. Wraps the APRON object in an environment object (no copy, no change in referenc...
Definition: apxx_environment.hh:58
Level 1 linear constraint (ap_lincons1_t wrapper).
Definition: apxx_lincons1.hh:40
friend bool operator<=(const environment &x, const environment &y)
Inclusion testing.
Definition: apxx_environment.hh:389
Level 1 linear expression (ap_linexpr1_t wrapper).
Definition: apxx_linexpr1.hh:39
Level 1 abstract value (ap_abstract1_t wrapper).
Definition: apxx_abstract1.hh:42
bool contains(const var &x) const
Whether the environment contains the variable name x.
Definition: apxx_environment.hh:338
Inherited by most wrappers to map new and delete to malloc and free.
Definition: apxx_scalar.hh:69
environment remove(const std::vector< var > &dims) const
Returns a copy of the environment with some variable names removed.
Definition: apxx_environment.hh:140
ap_environment_t * e
Definition: apxx_environment.hh:55
environment rename(const std::vector< std::pair< var, var > > &dims, dimperm &perm) const
Returns a copy of the environment with some variable names substituted.
Definition: apxx_environment.hh:184
Level 1 arbitrary expression tree (ap_texpr1_t wrapper).
Definition: apxx_texpr1.hh:42
friend bool operator!=(const environment &x, const environment &y)
Disequality testing.
Definition: apxx_environment.hh:384
size_t intdim() const
Returns the number of integer dimensions in the environment.
Definition: apxx_environment.hh:328
Level 1 arbitrary constraint (ap_tcons1_t wrapper).
Definition: apxx_tcons1.hh:39
Array of generators (ap_generator1_array_t wrapper).
Definition: apxx_generator1.hh:272
size_t realdim() const
Returns the number of real dimensions in the environment.
Definition: apxx_environment.hh:333