| Index: third_party/protobuf/src/google/protobuf/io/zero_copy_stream.h
|
| diff --git a/third_party/protobuf/src/google/protobuf/io/zero_copy_stream.h b/third_party/protobuf/src/google/protobuf/io/zero_copy_stream.h
|
| index db5326f703dbe2239488d8a1495da25971892d8d..52650fc6686d50bbaa70b038b2bef8f04de7c435 100644
|
| --- a/third_party/protobuf/src/google/protobuf/io/zero_copy_stream.h
|
| +++ b/third_party/protobuf/src/google/protobuf/io/zero_copy_stream.h
|
| @@ -1,6 +1,6 @@
|
| // Protocol Buffers - Google's data interchange format
|
| // Copyright 2008 Google Inc. All rights reserved.
|
| -// http://code.google.com/p/protobuf/
|
| +// https://developers.google.com/protocol-buffers/
|
| //
|
| // Redistribution and use in source and binary forms, with or without
|
| // modification, are permitted provided that the following conditions are
|
| @@ -226,6 +226,16 @@ class LIBPROTOBUF_EXPORT ZeroCopyOutputStream {
|
| // Returns the total number of bytes written since this object was created.
|
| virtual int64 ByteCount() const = 0;
|
|
|
| + // Write a given chunk of data to the output. Some output streams may
|
| + // implement this in a way that avoids copying. Check AllowsAliasing() before
|
| + // calling WriteAliasedRaw(). It will GOOGLE_CHECK fail if WriteAliasedRaw() is
|
| + // called on a stream that does not allow aliasing.
|
| + //
|
| + // NOTE: It is caller's responsibility to ensure that the chunk of memory
|
| + // remains live until all of the data has been consumed from the stream.
|
| + virtual bool WriteAliasedRaw(const void* data, int size);
|
| + virtual bool AllowsAliasing() const { return false; }
|
| +
|
|
|
| private:
|
| GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(ZeroCopyOutputStream);
|
|
|