34 return os <<
"Congestion";
36 return os <<
"Duplicate";
38 return os <<
"NoRoute";
67 template<encoding::Tag TAG>
73 length += encoder.prependVarNumber(length);
74 length += encoder.prependVarNumber(
tlv::Nack);
93 m_wire = buffer.block();
112 m_reason = readNonNegativeIntegerAs<NackReason>(*it);
Represents a TLV element of the NDN packet format.
element_const_iterator elements_begin() const noexcept
Equivalent to elements().begin().
size_t elements_size() const noexcept
Equivalent to elements().size().
bool hasWire() const noexcept
Check if the Block contains a fully encoded wire representation.
uint32_t type() const noexcept
Return the TLV-TYPE of the Block.
void reset() noexcept
Reset the Block to a default-constructed state.
void parse() const
Parse TLV-VALUE into sub-elements.
Represents an error in TLV encoding or decoding.
#define NDN_CXX_DEFINE_WIRE_ENCODE_INSTANTIATIONS(ClassName)
EncodingImpl< EstimatorTag > EncodingEstimator
size_t prependNonNegativeIntegerBlock(EncodingImpl< TAG > &encoder, uint32_t type, uint64_t value)
Prepend a TLV element containing a non-negative integer.
EncodingImpl< EncoderTag > EncodingBuffer
NackReason
Indicates the reason type of a Network Nack.
std::ostream & operator<<(std::ostream &os, CachePolicyType policy)
bool isLessSevere(lp::NackReason x, lp::NackReason y)
Compare NackReason according to severity.
constexpr std::underlying_type_t< T > to_underlying(T val) noexcept