19#include "absl/container/flat_hash_set.h"
20#include "absl/status/statusor.h"
32 absl::flat_hash_set<Variable> filtered;
36 <<
"cannot create MapFilter<Variable> from proto, variable id: "
37 <<
id <<
" not in model";
51 absl::flat_hash_set<LinearConstraint> filtered;
55 <<
"cannot create MapFilter<LinearConstraint> from proto, "
56 "linear constraint id: "
57 <<
id <<
" not in model";
66absl::StatusOr<MapFilter<QuadraticConstraint>>
72 absl::flat_hash_set<QuadraticConstraint> filtered;
76 <<
"cannot create MapFilter<QuadraticConstraint> from proto, "
77 "quadratic constraint id: "
78 <<
id <<
" not in model";
bool has_variable(int64_t id) const
Returns true if this id has been created and not yet deleted.
bool has_quadratic_constraint(int64_t id) const
Returns true if this id has been created and not yet deleted.
Variable variable(int64_t id) const
Will CHECK if has_variable(id) is false.
bool has_linear_constraint(int64_t id) const
Returns true if this id has been created and not yet deleted.
LinearConstraint linear_constraint(int64_t id) const
Will CHECK if has_linear_constraint(id) is false.
QuadraticConstraint quadratic_constraint(int64_t id) const
Will CHECK if has_quadratic_constraint(id) is false.
::int64_t filtered_ids(int index) const
bool filter_by_ids() const
bool skip_zero_values() const
An object oriented wrapper for quadratic constraints in ModelStorage.
absl::StatusOr< MapFilter< LinearConstraint > > LinearConstraintFilterFromProto(const Model &model, const SparseVectorFilterProto &proto)
absl::StatusOr< MapFilter< QuadraticConstraint > > QuadraticConstraintFilterFromProto(const Model &model, const SparseVectorFilterProto &proto)
absl::StatusOr< MapFilter< Variable > > VariableFilterFromProto(const Model &model, const SparseVectorFilterProto &proto)
StatusBuilder InvalidArgumentErrorBuilder()
std::optional< absl::flat_hash_set< KeyType > > filtered_keys