65 template<encoding::Tag TAG>
188 const_reverse_iterator
194 const_reverse_iterator
199 excludeRange(iterator fromLowerBound, iterator toLowerBound);
202 exclude_type m_exclude;
204 mutable Block m_wire;
219 m_exclude[name] = any;
225 return m_exclude.empty();
238 return m_exclude.size();
244 return m_exclude.begin();
250 return m_exclude.end();
256 return m_exclude.rbegin();
262 return m_exclude.rend();
268 return !(*
this == other);
273 #endif // NDN_EXCLUDE_H std::string toUri() const
Get escaped string representation (e.g., for use in URI) of the exclude filter.
void appendExclude(const name::Component &name, bool any)
Method to directly append exclude element.
Copyright (c) 2011-2015 Regents of the University of California.
Exclude & excludeBefore(const name::Component &to)
Exclude all components from range [/, to].
bool empty() const
Check if exclude filter is empty.
const_reverse_iterator rend() const
Get end iterator of the exclude terms.
std::ostream & operator<<(std::ostream &os, const Data &data)
exclude_type::reverse_iterator reverse_iterator
exclude_type::const_iterator const_iterator
const_iterator end() const
Get end iterator of the exclude terms.
const_reverse_iterator rbegin() const
Get begin iterator of the exclude terms.
Class representing a wire element of NDN-TLV packet format.
void clear()
Clear the exclude filter.
Exclude()
Default constructor an empty exclude.
Table::const_iterator iterator
void wireDecode(const Block &wire)
Decode from the wire format.
Exclude & excludeOne(const name::Component &comp)
Exclude specific name component.
const Block & wireEncode() const
Encode to a wire format.
size_t size() const
Get number of exclude terms.
Component holds a read-only name component value.
exclude_type::iterator iterator
exclude_type::const_reverse_iterator const_reverse_iterator
Exclude & excludeAfter(const name::Component &from)
Exclude all components from range [from, +Inf].
Error(const std::string &what)
bool isExcluded(const name::Component &comp) const
Check if name component is excluded.
Exclude & excludeRange(const name::Component &from, const name::Component &to)
Exclude components from range [from, to].
bool operator==(const Exclude &other) const
std::map< name::Component, bool, std::greater< name::Component > > exclude_type
const_iterator begin() const
Get begin iterator of the exclude terms.
represents an error in TLV encoding or decoding
Class to represent Exclude component in NDN interests.
bool operator!=(const Exclude &other) const