21 #include <unity/scopes/QueryMetadata.h> 22 #include <unity/scopes/Location.h> 23 #include <unity/scopes/Variant.h> 24 #include <unity/util/DefinesPtrs.h> 37 class SearchMetadataImpl;
57 SearchMetadata(std::string
const& locale, std::string
const& form_factor);
65 SearchMetadata(
int cardinality, std::string
const& locale, std::string
const& form_factor);
86 void set_cardinality(
int cardinality);
92 int cardinality()
const;
98 void set_location(
Location const& location);
111 bool has_location()
const;
118 void remove_location();
124 void set_aggregated_keywords(std::set<std::string>
const& aggregated_keywords);
130 std::set<std::string> aggregated_keywords()
const;
136 bool is_aggregated()
const;
144 void set_hint(std::string
const& key,
Variant const& value);
159 bool contains_hint(std::string
const& key)
const;
170 Variant& operator[](std::string
const& key);
181 Variant const& operator[](std::string
const& key)
const;
185 friend class internal::SearchMetadataImpl;
Simple variant class that can hold an integer, boolean, string, double, dictionary, array or null value.
Definition: Variant.h:57
Top-level namespace for all things Unity-related.
Definition: Version.h:49
std::map< std::string, Variant > VariantMap
A dictionary of (string, Variant) pairs.
Definition: Variant.h:38
Definition: ActionMetadata.h:31
Holds location attributes such as latitude, longitude, etc.
Definition: Location.h:39