gecko-dev/mfbt
Kan-Ru Chen 43631b1c31 Bug 1264642 - Part 2. Add BufferList::Extract and Pickle::ExtractBuffers. r=billm
These methods allow us to move some buffers out of a pickle with minimum
copying. It's useful when the IPC deserialized type uses BufferList to
store data and we want to take the buffers from IPC directly.

Borrowing is not suitable to use for IPC to hand out data because we
often want to store the data somewhere for processing after IPC has
released the underlying buffers.

MozReview-Commit-ID: F1K2ZMkACqq

--HG--
extra : rebase_source : eb67256e78f16189a62f441300e0dd06fe6ed687
2016-07-21 17:04:12 +08:00
..
decimal Bug 1245414, part 10 - Apply the Mozilla patches via mfbt/decimal/update.sh. r=Waldo 2016-02-11 19:43:14 +00:00
double-conversion
staticruntime Bug 1286877 - do not set c-basic-offset for python-mode; r=gps 2016-07-14 10:16:42 -06:00
tests Bug 1264642 - Part 2. Add BufferList::Extract and Pickle::ExtractBuffers. r=billm 2016-07-21 17:04:12 +08:00
Alignment.h Bug 1269319 - Make AlignedStorage/AlignedStorage2 non-copyable to fix strict aliasing issues. r=Waldo 2016-05-19 20:57:36 +02:00
AllocPolicy.h Bug 1262671 - Introduce MFBT BufferList class (r=froydnj) 2016-05-27 09:57:40 -07:00
AlreadyAddRefed.h Bug 1267550 (part 2) - Rename MOZ_WARN_UNUSED_RESULT as MOZ_MUST_USE. r=froydnj. 2016-04-27 14:16:50 +10:00
Array.h
ArrayUtils.h Bug 1277775 - Replace MOZ_CONSTEXPR{_VAR,_TMPL} with constexpr. r=froydnj 2016-07-08 14:39:53 -07:00
Assertions.h Bug 1283395 - add markup functions for static analysis builds. r=froydnj 2016-07-25 16:57:30 +03:00
Atomics.h Bug 1277775 - Replace MOZ_CONSTEXPR{_VAR,_TMPL} with constexpr. r=froydnj 2016-07-08 14:39:53 -07:00
Attributes.h Bug 1277775 - Replace MOZ_CONSTEXPR{_VAR,_TMPL} with constexpr. r=froydnj 2016-07-08 14:39:53 -07:00
BinarySearch.h Bug 1247835 (part 0) - Minor comment and style tweaks in BinarySearch.h. r=luke. 2016-02-23 15:41:39 +11:00
BloomFilter.h
BufferList.h Bug 1264642 - Part 2. Add BufferList::Extract and Pickle::ExtractBuffers. r=billm 2016-07-21 17:04:12 +08:00
Casting.h Bug 1248555: Introduce variants of SpecificNaN / BitwiseCast that preserve the signaling NaN bit; r=froydnj 2016-08-01 20:02:05 +02:00
ChaosMode.cpp
ChaosMode.h Bug 1260247. In chaos mode randomly decide to start a new image load even if the image is in the image cache when allowed by spec. r=seth 2016-04-02 13:53:12 -05:00
Char16.h Bug 1277106 - Part 1: Use VS2015's real char16_t instead of aliasing wchar_t. r=Waldo 2016-07-20 22:01:43 -07:00
CheckedInt.h
Compiler.h Bug 1273048 - Add MOZ_GCC_VERSION_AT_MOST macro. r=froydnj 2016-06-03 20:08:41 -07:00
Compression.cpp
Compression.h Bug 1268754 - Tweak some MFBT return values. r=Ms2ger. 2016-04-29 13:14:34 +10:00
DebugOnly.h Bug 1253094, part 11 - Make DebugOnly a MOZ_STACK_CLASS. r=Waldo 2016-02-26 15:52:08 +00:00
EndianUtils.h Bug 1275016 - Rename Endian.h to EndianUtils.h to avoid #include confusion with Android's endian.h stdlib header. r=froydnj 2016-05-22 13:31:11 -07:00
EnumeratedArray.h Bug 1278391 - add move constructor to EnumeratedArray (r=njn) 2016-06-09 08:42:16 -05:00
EnumeratedRange.h Bug 1290035 - Remove the explicit Type parameter to MakeEnumeratedRange. r=Waldo 2016-07-28 17:48:50 +08:00
EnumSet.h Bug 1266404 - Allow construction of an EnumSet<T> using an initializer list r=Waldo 2016-04-28 14:25:05 +01:00
FastBernoulliTrial.h Bug 1231378 - part 3 - Fix uninitialized members of classes in modules/libjar and mfbt, r=smaug 2016-01-12 18:16:59 +00:00
FloatingPoint.cpp
FloatingPoint.h Bug 1248555: Introduce variants of SpecificNaN / BitwiseCast that preserve the signaling NaN bit; r=froydnj 2016-08-01 20:02:05 +02:00
Function.h Bug 1263342 - don't use REFCOUNTED_VIRTUAL_TYPENAME for mfbt FunctionImplBase. r=froydnj 2016-04-08 23:14:59 -04:00
GuardObjects.h
HashFunctions.cpp
HashFunctions.h Bug 1277106 - Part 1: Use VS2015's real char16_t instead of aliasing wchar_t. r=Waldo 2016-07-20 22:01:43 -07:00
IndexSequence.h Bug 1277775 - Replace MOZ_CONSTEXPR{_VAR,_TMPL} with constexpr. r=froydnj 2016-07-08 14:39:53 -07:00
InitializerList.h Bug 1277775 - Replace MOZ_CONSTEXPR{_VAR,_TMPL} with constexpr. r=froydnj 2016-07-08 14:39:53 -07:00
IntegerPrintfMacros.h
IntegerRange.h
IntegerTypeTraits.h
JSONWriter.cpp
JSONWriter.h Bug 1293384 - Part 1: Rename snprintf_literal to SprintfLiteral. r=froydnj 2016-08-14 23:44:00 -07:00
Likely.h
LinkedList.h Add an assertion message to the assert-is-empty in LinkedList::~LinkedList, to indicate to users who hit it that it's the fault of the caller, not the fault of MFBT code. No bug, rs=froydnj 2016-02-16 13:06:20 -08:00
LinuxSignal.h Bug 1238661 - fix mozilla::SignalTrampoline to work properly with clang; r=darchons 2016-07-25 18:16:06 -04:00
lz4.c
lz4.h
MacroArgs.h
MacroForEach.h
MathAlgorithms.h Bug 1271972: wasm: Implement i64.ctz, i64.clz, i64.popcount; r=sunfish 2016-05-11 19:00:53 +02:00
Maybe.h Bug 1291423: Explicitly qualify the destructor call that we invoke in Maybe::reset. r=Waldo 2016-08-02 21:19:08 -07:00
MaybeOneOf.h
MemoryChecking.h
MemoryReporting.h
Move.h
moz.build Bug 1293384 - Part 2: Rename Snprintf.h header to Sprintf.h. r=froydnj 2016-08-14 23:43:21 -07:00
NotNull.h Bug 1272203 (part 1) - Add mozilla::NotNull to MFBT. r=froydnj. 2016-05-12 14:21:16 +10:00
NullPtr.h
objs.mozbuild Bug 1286877 - do not set c-basic-offset for python-mode; r=gps 2016-07-14 10:16:42 -06:00
Opaque.h Bug 1246061. r=jandem, r=bz, r=luke, r=froydnj 2016-03-09 00:37:20 -08:00
OperatorNewExtensions.h Bug 1294537 - Don't tag |void* p| in the don't-nullcheck placement operator new overload as MOZ_NONNULL, because that makes a double-checking assertion of non-nullness into a compiler warning. r=froydnj 2016-08-12 18:02:03 -07:00
Pair.h
PodOperations.h
Poison.cpp Bug 1247535 - Fix -Wunreachable-code warning in mfbt/Poison.cpp. r=froydnj 2016-02-10 22:09:53 -08:00
Poison.h Bug 1268246 - Add a simple Poison class lifetime checker. r=froydnj 2016-04-29 13:54:54 -04:00
Range.h Bug 1276573 - Add a new constructor for Range<T>. r=Waldo 2016-05-30 13:58:13 +08:00
RangedArray.h
RangedPtr.h Bug 1276573 - Add a new constructor for Range<T>. r=Waldo 2016-05-30 13:58:13 +08:00
ReentrancyGuard.h
RefCounted.h Bug 1251769 - Remove remaining references to MOZILLA_XPCOMRT_API from mfbt. r=froydnj 2016-02-27 11:12:07 -08:00
RefCountType.h
RefPtr.h Bug 1287623, part 3 - Add more methods involving StaticRefPtr. r=froydnj 2016-07-21 09:54:17 -07:00
ReverseIterator.h
RollingMean.h
Saturate.h Bug 1288603 - Remove NumericLimits.h because all platforms have numeric_limits<char16_t>. r=froydnj 2016-07-22 22:05:45 -07:00
Scoped.h Bug 1252902 - remove ScopedFreePtr; r=Waldo 2016-03-02 11:44:27 -05:00
ScopeExit.h
SegmentedVector.h Bug 1267550 (part 2) - Rename MOZ_WARN_UNUSED_RESULT as MOZ_MUST_USE. r=froydnj. 2016-04-27 14:16:50 +10:00
SHA1.cpp Bug 1275016 - Rename Endian.h to EndianUtils.h to avoid #include confusion with Android's endian.h stdlib header. r=froydnj 2016-05-22 13:31:11 -07:00
SHA1.h
SizePrintfMacros.h
SplayTree.h Bug 1277775 - Replace MOZ_CONSTEXPR{_VAR,_TMPL} with constexpr. r=froydnj 2016-07-08 14:39:53 -07:00
Sprintf.h Bug 1293384 - Part 2: Rename Snprintf.h header to Sprintf.h. r=froydnj 2016-08-14 23:43:21 -07:00
StaticAnalysisFunctions.h Bug 1283395 - add markup functions for static analysis builds. r=froydnj 2016-07-25 16:57:30 +03:00
STYLE
TaggedAnonymousMemory.cpp
TaggedAnonymousMemory.h
TemplateLib.h
ThreadLocal.h Bug 1267550 (part 2) - Rename MOZ_WARN_UNUSED_RESULT as MOZ_MUST_USE. r=froydnj. 2016-04-27 14:16:50 +10:00
ToString.h
Tuple.h Bug 1232418 - Allow mozilla::Tuple to support equality comparison; r=Waldo 2015-12-14 12:01:17 -08:00
TypedEnumBits.h Bug 1277775 - Replace MOZ_CONSTEXPR{_VAR,_TMPL} with constexpr. r=froydnj 2016-07-08 14:39:53 -07:00
Types.h Bug 1251769 - Remove remaining references to MOZILLA_XPCOMRT_API from mfbt. r=froydnj 2016-02-27 11:12:07 -08:00
TypeTraits.h Bug 1277106 - Part 1: Use VS2015's real char16_t instead of aliasing wchar_t. r=Waldo 2016-07-20 22:01:43 -07:00
UniquePtr.h Bug 1277775 - Replace MOZ_CONSTEXPR{_VAR,_TMPL} with constexpr. r=froydnj 2016-07-08 14:39:53 -07:00
UniquePtrExtensions.h Bug 1252195 - part 1 - implement UniqueFreePtr; r=Waldo 2016-02-29 10:29:13 -05:00
unused.cpp
unused.h
Variant.h Bug 1287243 - Optimize the type used to store Variant's tag. r=fitzgen 2016-07-16 02:31:45 -07:00
Vector.h Bug 1294537 - introduce a non-null-checking placement operator new; r=sunfish,nbp 2016-08-12 22:43:49 -04:00
WeakPtr.h
WindowsVersion.h bug 1239166 - platform work to support Microsoft Family Safety functionality r=froydnj,mgoodwin,mhowell,rbarnes,vladan 2016-01-12 15:39:43 -08:00
XorShift128PlusRNG.h Bug 1277775 - Replace MOZ_CONSTEXPR{_VAR,_TMPL} with constexpr. r=froydnj 2016-07-08 14:39:53 -07:00