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;
Dimension change object (ap_dimchange_t wrapper).
Definition apxx_dimension.hh:102
Dimension permutation object (ap_dimperm_t wrapper).
Definition apxx_dimension.hh:292
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
ap_environment_t * e
Definition apxx_environment.hh:55
friend int cmp(const environment &x, const environment &y)
Environment comparison.
Definition apxx_environment.hh:399
void print(FILE *stream=stdout) const
Prints to a C stream.
Definition apxx_environment.hh:417
size_t realdim() const
Returns the number of real dimensions in the environment.
Definition apxx_environment.hh:333
const environment & operator=(const environment &x)
Assignment (reference counter manipulation).
Definition apxx_environment.hh:80
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
environment remove(const std::vector< var > &dims) const
Returns a copy of the environment with some variable names removed.
Definition apxx_environment.hh:140
std::vector< var > get_vars() const
Returns (a copy of) the full map from dimensions to variable names.
Definition apxx_environment.hh:368
environment rename(const var *before, const var *after, size_t dims_size, dimperm &perm) const
Returns a copy of the environment with dims_size variable names substituted.
Definition apxx_environment.hh:198
friend std::ostream & operator<<(std::ostream &os, const environment &s)
Printing.
Definition apxx_environment.hh:407
friend class linexpr1
Definition apxx_environment.hh:60
friend class tcons1
Definition apxx_environment.hh:66
friend class generator1
Definition apxx_environment.hh:63
bool contains(const var &x) const
Whether the environment contains the variable name x.
Definition apxx_environment.hh:338
ap_dim_t get_dim(const var &x) const
Returns the dimension associated with a variable name.
Definition apxx_environment.hh:355
friend bool operator==(const environment &x, const environment &y)
Equality testing.
Definition apxx_environment.hh:379
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
size_t intdim() const
Returns the number of integer dimensions in the environment.
Definition apxx_environment.hh:328
const var & get_var(ap_dim_t d) const
Returns the variable name at a given dimension (bound-checked).
Definition apxx_environment.hh:362
friend bool operator!=(const environment &x, const environment &y)
Disequality testing.
Definition apxx_environment.hh:384
environment()
Creates a new empty environment.
Definition apxx_environment.hh:45
friend class lincons1
Definition apxx_environment.hh:61
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
friend bool operator>=(const environment &x, const environment &y)
Inclusion testing.
Definition apxx_environment.hh:394
friend bool operator<=(const environment &x, const environment &y)
Inclusion testing.
Definition apxx_environment.hh:389
friend class abstract1
Definition apxx_environment.hh:68
friend class tcons1_array
Definition apxx_environment.hh:67
friend class texpr1
Definition apxx_environment.hh:65
friend class lincons1_array
Definition apxx_environment.hh:62
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
~environment()
Decrements the reference counter and, if null, actually frees the environment.
Definition apxx_environment.hh:71
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
friend class generator1_array
Definition apxx_environment.hh:64
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
Variable name (ap_var_t wrapper).
Definition apxx_var.hh:39
Definition apxx_abstract0.hh:27
Inherited by most wrappers to map new and delete to malloc and free.
Definition apxx_scalar.hh:69