ppap4lmp  0.7.2
fil_set.h
Go to the documentation of this file.
1 
9 #ifndef FIL_SET_H
10 #define FIL_SET_H
11 
12 #include <filters/filter.h>
13 
28 class FilSet : public Filter {
44  const bool check_if_pass_data_elem(
45  const Json &elem_in_data);
46  protected:
48  virtual void compute_impl(
49  Json &data,
50  JsonToVoidFunc check_required_keys,
51  JsonToBoolFunc check_optional_keys) override;
52  public:
65  FilSet(
66  const Map<Str,Set<Json>> &acceptable_value_sets_);
67  virtual ~FilSet() = default;
68 };
69 
70 #endif
This file has a definition of Filter class, which is a subclass of Updater class. ...
FilSet applies a filter defined by sets of acceptable values.
Definition: fil_set.h:28
Filter removes elements from array Element::data if the elements fail user-defined criteria...
Definition: filter.h:25
std::function< bool(const Json &)> JsonToBoolFunc
An alias for a function accepts a Json object and returns a bool.
Definition: updater.h:20
FilSet(const Map< Str, Set< Json >> &acceptable_value_sets_)
Constructor of FilSet class.
Definition: fil_set.cpp:13
std::string Str
Str is an alias for string.
Definition: std.h:21
nlohmann::json Json
Json is an alias for nlohmann::json.
Definition: json.h:22
std::unordered_set< T > Set
Set is an alias for unordered set (same as set in Python).
Definition: std.h:49
const bool check_if_pass_data_elem(const Json &elem_in_data)
Check if an element in data array can pass this filter.
Definition: fil_set.cpp:21
virtual void compute_impl(Json &data, JsonToVoidFunc check_required_keys, JsonToBoolFunc check_optional_keys) override
This method overrides Updater::compute_impl.
Definition: fil_set.cpp:36
Map< Str, Set< Json > > acceptable_value_sets
Definition: fil_set.h:34
std::function< void(const Json &)> JsonToVoidFunc
An alias for a function accepts a Json object.
Definition: updater.h:18
std::unordered_map< T, U > Map
Map is an alias for unordered map (same as dict in Python).
Definition: std.h:38