#include <boost/operators.hpp>
#include <boost/type_traits.hpp>
-#include <folly/Assume.h>
#include <folly/ConstexprMath.h>
#include <folly/FormatTraits.h>
-#include <folly/Malloc.h>
#include <folly/Portability.h>
#include <folly/SmallLocks.h>
#include <folly/Traits.h>
+#include <folly/lang/Assume.h>
+#include <folly/memory/Malloc.h>
#include <folly/portability/BitsFunctexcept.h>
#include <folly/portability/Malloc.h>
#include <folly/portability/TypeTraits.h>
inline void* shiftPointer(void* p, size_t sizeBytes) {
return static_cast<char*>(p) + sizeBytes;
}
-}
+} // namespace detail
//////////////////////////////////////////////////////////////////////
FOLLY_PACK_PUSH
typedef value_type& reference;
typedef value_type const& const_reference;
typedef value_type* iterator;
+ typedef value_type* pointer;
typedef value_type const* const_iterator;
typedef std::ptrdiff_t difference_type;
typedef std::reverse_iterator<const_iterator> const_reverse_iterator;
small_vector() = default;
+ // Allocator is unused here. It is taken in for compatibility with std::vector
+ // interface, but it will be ignored.
+ small_vector(const std::allocator<Value>&) {}
small_vector(small_vector const& o) {
auto n = o.size();
union Data {
explicit Data() {
- pdata_.heap_ = 0;
+ pdata_.heap_ = nullptr;
}
PointerType pdata_;