Class to represent Exclude component in NDN interests. More...
#include <exclude.h>
Public Types | |
typedef std::map < name::Component, bool, std::greater< name::Component > > | exclude_type |
typedef exclude_type::iterator | iterator |
typedef exclude_type::const_iterator | const_iterator |
typedef exclude_type::reverse_iterator | reverse_iterator |
typedef exclude_type::const_reverse_iterator | const_reverse_iterator |
Public Member Functions | |
Exclude () | |
Default constructor an empty exclude. | |
bool | isExcluded (const name::Component &comp) const |
Check if name component is excluded. More... | |
Exclude & | excludeOne (const name::Component &comp) |
Exclude specific name component. More... | |
Exclude & | excludeRange (const name::Component &from, const name::Component &to) |
Exclude components from range [from, to]. More... | |
Exclude & | excludeBefore (const name::Component &to) |
Exclude all components from range [/, to]. More... | |
Exclude & | excludeAfter (const name::Component &from) |
Exclude all components from range [from, +Inf]. More... | |
void | appendExclude (const name::Component &name, bool any) |
Method to directly append exclude element. More... | |
size_t | size () const |
Get number of exclude terms. | |
const_iterator | begin () const |
Get begin iterator of the exclude terms. | |
const_iterator | end () const |
Get end iterator of the exclude terms. | |
const_reverse_iterator | rbegin () const |
Get begin iterator of the exclude terms. | |
const_reverse_iterator | rend () const |
Get end iterator of the exclude terms. | |
void ns3::ndn::Exclude::appendExclude | ( | const name::Component & | name, |
bool | any | ||
) |
Method to directly append exclude element.
name | excluded name component |
any | flag indicating if there is a postfix ANY component after the name |
This method is used during conversion from wire format of exclude filter
If there is an error with ranges (e.g., order of components is wrong) an exception is thrown
Definition at line 154 of file exclude.cc.
Exclude & ns3::ndn::Exclude::excludeAfter | ( | const name::Component & | from | ) |
Exclude all components from range [from, +Inf].
to | last element of the range |
Definition at line 129 of file exclude.cc.
|
inline |
Exclude & ns3::ndn::Exclude::excludeOne | ( | const name::Component & | comp | ) |
Exclude specific name component.
comp | component to exclude |
Definition at line 49 of file exclude.cc.
Exclude & ns3::ndn::Exclude::excludeRange | ( | const name::Component & | from, |
const name::Component & | to | ||
) |
Exclude components from range [from, to].
from | first element of the range |
to | last element of the range |
Definition at line 87 of file exclude.cc.
References ns3::ndn::name::Component::toUri().
bool ns3::ndn::Exclude::isExcluded | ( | const name::Component & | comp | ) | const |
Check if name component is excluded.
comp | Name component to check against exclude filter |
Definition at line 34 of file exclude.cc.