SearchResultsIterator
-
class HPS::SearchResultsIterator : public HPS::Object
An iterator used for traversing results from a search on an associated SearchResults object.
Public Functions
-
Key GetItem() const
Returns the item that this iterator is currently pointing at. Throws exception if iterator is not valid. This method is functionally equivalent to the overloaded operator*.
- Returns
The current item.
-
SearchTypeArray GetResultTypes() const
Retrieves the search criteria that were met for the current search item pointed to by this iterator.
- Returns
An array of search types for the current item.
-
bool IsValid() const
Queries the validity of this iterator location. Invalid locations would include uninitialized iterators and iterators that had walked past the last element.
- Returns
true if this iterator is pointing to a valid item, false otherwise.
-
void Next()
Advances the iterator to the next search result item
-
inline virtual HPS::Type ObjectType() const
This function returns the type the object, as declared (if the object is derived, this does not give the true type of the derived object).
- Returns
The declared type of the object in question, which may differ from the true, underlying type.
-
bool operator!=(SearchResultsIterator const &in_search_results_iterator)
Comparison operator between iterators to compare inequality
- Parameters
in_search_results_iterator – The iterator to compare to
-
Key operator*() const
Returns the item that this iterator is currently pointing at. Throws exception if iterator is not valid.
- Returns
The current item.
-
SearchResultsIterator &operator++()
Advances the iterator to the next search result item
- Returns
A reference to this object.
-
SearchResultsIterator operator++(int in_val)
Advances the iterator to the next search result item
- Returns
A reference to this object.
-
SearchResultsIterator &operator=(SearchResultsIterator &&in_that)
The move assignment operator transfers the underlying impl of the rvalue reference to this SearchResultsIterator thereby avoiding a copy.
- Parameters
in_that – An rvalue reference to an SearchResultsIterator to take the impl from.
- Returns
A reference to this SearchResultsIterator.
-
SearchResultsIterator &operator=(SearchResultsIterator const &in_search_results_iterator)
Copies a SearchResultsIterator object, associating this object with the same SearchResults object as the source and at the same location in the results. Subsequent changes to either iterator will not affect the other.
- Parameters
in_search_results_iterator – The source of the copy.
- Returns
a reference to this object.
-
bool operator==(SearchResultsIterator const &in_search_results_iterator)
Comparison operator between iterators to compare equality
- Parameters
in_search_results_iterator – The iterator to compare to
-
virtual void Reset()
Resets iterator to the beginning of the associated search results.
-
SearchResultsIterator()
The default constructor creates a new SearchResultsIterator object that is not associated with any SearchResults object.
-
SearchResultsIterator(SearchResultsIterator &&in_that)
The move constructor creates SearchResultsIterator by transferring the underlying impl of the rvalue reference to this Key thereby avoiding a copy and allocation.
- Parameters
in_that – An rvalue reference to SearchResultsIterator to take the impl from.
-
SearchResultsIterator(SearchResultsIterator const &in_search_results_iterator)
The copy constructor initializes a new SearchResultsIterator object that is associated with the same SearchResults object as the source and at the same location in the results. Subsequent changes to either iterator will not affect the other.
- Parameters
in_search_results_iterator – The source of the copy.
-
void Set(SearchResultsIterator const &in_search_results_iterator)
Copies a SearchResultsIterator object, associating this object with the same SearchResults object as the source and at the same location in the results. Subsequent changes to either iterator will not affect the other. This method is functionally equivalent to the overloaded assignment operator except for the return value.
- Parameters
in_search_results_iterator – The source of the copy.
-
~SearchResultsIterator()
Public Static Attributes
-
static const HPS::Type staticType = HPS::Type::SearchResultsIterator
-
Key GetItem() const