28 #ifndef NDN_UTIL_CONCEPTS_HPP
29 #define NDN_UTIL_CONCEPTS_HPP
31 #include <boost/concept/usage.hpp>
32 #include "../encoding/block.hpp"
33 #include "../encoding/encoding-buffer.hpp"
45 Block block = j.wireEncode();
62 size_t estimatedSize = j.wireEncode(estimator);
65 j.wireEncode(encoder);
97 size_t size = hash.DigestSize();
99 hash.Update(buf, size);
115 ,
public boost::DefaultConstructible<T>
124 #define NDN_CXX_ASSERT_DEFAULT_CONSTRUCTIBLE(T) \
125 static_assert(std::is_default_constructible<T>::value, \
126 #T " must be default-constructible"); \
127 BOOST_CONCEPT_ASSERT((boost::DefaultConstructible<T>))
134 #define NDN_CXX_ASSERT_FORWARD_ITERATOR(T) \
135 BOOST_CONCEPT_ASSERT((::ndn::detail::StlForwardIteratorConcept<T>)); \
136 static_assert(std::is_default_constructible<T>::value, \
137 #T " must be default-constructible")
142 #endif // NDN_UTIL_CONCEPTS_HPP
Copyright (c) 2013-2016 Regents of the University of California.
EncodingImpl< EstimatorTag > EncodingEstimator
BOOST_CONCEPT_USAGE(Hashable)
BOOST_CONCEPT_USAGE(WireDecodable)
Class representing a wire element of NDN-TLV packet format.
a concept check for TLV abstraction with .wireEncode method
EncodingImpl< EncoderTag > EncodingBuffer
BOOST_CONCEPT_USAGE(WireEncodable)
BOOST_CONCEPT_USAGE(WireEncodableWithEncodingBuffer)
a concept check for TLV abstraction with .wireEncode method
a concept check for TLV abstraction with .wireDecode method and constructible from Block ...
a concept check for CryptoPP hash algorithm