22 #ifndef NDN_DELEGATION_LIST_HPP    23 #define NDN_DELEGATION_LIST_HPP    27 #include <initializer_list>    69   template<encoding::Tag TAG>
    92     return m_dels.begin();
   104     return m_dels.empty();
   110     return m_dels.size();
   119     BOOST_ASSERT(i < 
size());
   187     return this->eraseImpl(preference, name);
   205     return this->eraseImpl(
nullopt, name);
   210   isValidTlvType(uint32_t type);
   213   insertImpl(uint64_t preference, 
const Name& name);
   216   eraseImpl(optional<uint64_t> preference, 
const Name& name);
   229     return lhs.m_dels == rhs.m_dels;
   235     return lhs.m_dels != rhs.m_dels;
   248   std::vector<Delegation> m_dels;
   252 extern template size_t   253 DelegationList::wireEncode<encoding::EncoderTag>(
EncodingBuffer&, uint32_t) 
const;
   255 extern template size_t   256 DelegationList::wireEncode<encoding::EstimatorTag>(
EncodingEstimator&, uint32_t) 
const;
   264 #endif // NDN_DELEGATION_LIST_HPP 
existing delegation(s) with the same name are replaced with the new delegation 
const Delegation & at(size_t i) const
get the i-th delegation 
new delegation is not inserted if an existing delegation has the same name 
DelegationList()
construct an empty DelegationList 
std::ostream & operator<<(std::ostream &os, const Data &data)
friend bool operator!=(const DelegationList &lhs, const DelegationList &rhs)
const Delegation & operator[](size_t i) const
get the i-th delegation 
Represents a TLV element of NDN packet format. 
std::vector< Delegation >::const_iterator const_iterator
size_t erase(uint64_t preference, const Name &name)
delete Delegation(s) with specified preference and name 
size_t erase(const Name &name)
erase Delegation(s) with specified name 
void wireDecode(const Block &block, bool wantSort=true)
decode a DelegationList 
const_iterator end() const noexcept
bool insert(const Delegation &del, InsertConflictResolution onConflict=INS_REPLACE)
insert Delegation 
bool isSorted() const noexcept
#define NDN_CXX_NODISCARD
size_t wireEncode(EncodingImpl< TAG > &encoder, uint32_t type=tlv::ForwardingHint) const
encode into wire format 
size_t size() const noexcept
Represents an absolute name. 
bool insert(uint64_t preference, const Name &name, InsertConflictResolution onConflict=INS_REPLACE)
insert Delegation 
InsertConflictResolution
what to do when inserting a duplicate name 
size_t erase(const Delegation &del)
delete Delegation(s) with matching preference and name 
friend bool operator==(const DelegationList &lhs, const DelegationList &rhs)
Compare whether two DelegationLists are equal. 
void sort()
sort the delegation list 
bool empty() const noexcept
represents a list of Delegations 
multiple delegations with the same name are kept in the DelegationList 
EncodingImpl< EncoderTag > EncodingBuffer
const nullopt_t nullopt((nullopt_t::init()))
Error(const char *expectedType, uint32_t actualType)
represents an error in TLV encoding or decoding 
EncodingImpl< EstimatorTag > EncodingEstimator
const_iterator begin() const noexcept