cprover
|
Value Set of Pointer Abstract Object. More...
#include "abstract_aggregate_object.h"
#include <analyses/variable-sensitivity/constant_pointer_abstract_object.h>
#include <analyses/variable-sensitivity/context_abstract_object.h>
#include <analyses/variable-sensitivity/value_set_pointer_abstract_object.h>
Go to the source code of this file.
Functions | |
static abstract_object_sett | unwrap_and_extract_values (const abstract_object_sett &values) |
static abstract_object_pointert | maybe_extract_single_value (const abstract_object_pointert &maybe_singleton) |
Helper for converting singleton value sets into its only value. More... | |
static abstract_object_pointert | maybe_unwrap_context (const abstract_object_pointert &maybe_wrapped) |
Helper for converting context objects into its abstract-value children maybe_wrapped: either an abstract value (or a set of those) or one wrapped in a context. More... | |
template<typename Con , typename F > | |
void | apply_comb (const std::vector< Con > &super_con, std::vector< typename Con::value_type > &sub_con, F f) |
Recursively construct a combination sub_con from super_con and once constructed call f . More... | |
template<typename Con , typename F > | |
void | for_each_comb (const std::vector< Con > &super_con, F f) |
Call the function f on every combination of elements in super_con . More... | |
Value Set of Pointer Abstract Object.
Definition in file value_set_pointer_abstract_object.cpp.
void apply_comb | ( | const std::vector< Con > & | super_con, |
std::vector< typename Con::value_type > & | sub_con, | ||
F | f | ||
) |
Recursively construct a combination sub_con
from super_con
and once constructed call f
.
super_con | vector of some containers storing the values |
sub_con | the one combination being currently constructed |
f | callable with side-effects |
Definition at line 39 of file value_set_pointer_abstract_object.cpp.
void for_each_comb | ( | const std::vector< Con > & | super_con, |
F | f | ||
) |
Call the function f
on every combination of elements in super_con
.
Hence the arity of f
is super_con.size()
. <{1,2},{1},{1,2,3}> -> f(1,1,1), f(1,1,2), f(1,1,3), f(2,1,1), f(2,1,2), f(2,1,3).
super_con | vector of some containers storing the values |
f | callable with side-effects |
Definition at line 64 of file value_set_pointer_abstract_object.cpp.
|
static |
Helper for converting singleton value sets into its only value.
maybe_singleton:
either a set of abstract values or a single value
Definition at line 233 of file value_set_pointer_abstract_object.cpp.
|
static |
Helper for converting context objects into its abstract-value children maybe_wrapped:
either an abstract value (or a set of those) or one wrapped in a context.
Definition at line 250 of file value_set_pointer_abstract_object.cpp.
|
static |
Definition at line 220 of file value_set_pointer_abstract_object.cpp.