grpc
third_party
protobuf
src
google
protobuf
compiler
protobuf/src/google/protobuf/compiler/zip_writer.h
Go to the documentation of this file.
1
// Protocol Buffers - Google's data interchange format
2
// Copyright 2008 Google Inc. All rights reserved.
3
// https://developers.google.com/protocol-buffers/
4
//
5
// Redistribution and use in source and binary forms, with or without
6
// modification, are permitted provided that the following conditions are
7
// met:
8
//
9
// * Redistributions of source code must retain the above copyright
10
// notice, this list of conditions and the following disclaimer.
11
// * Redistributions in binary form must reproduce the above
12
// copyright notice, this list of conditions and the following disclaimer
13
// in the documentation and/or other materials provided with the
14
// distribution.
15
// * Neither the name of Google Inc. nor the names of its
16
// contributors may be used to endorse or promote products derived from
17
// this software without specific prior written permission.
18
//
19
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
20
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
21
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
22
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
23
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
24
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
25
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
26
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
27
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
28
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
29
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30
31
// Author: kenton@google.com (Kenton Varda)
32
33
#include <cstdint>
34
#include <vector>
35
36
#include <google/protobuf/stubs/common.h>
37
#include <google/protobuf/io/zero_copy_stream.h>
38
39
namespace
google
{
40
namespace
protobuf
{
41
namespace
compiler
{
42
43
class
ZipWriter {
44
public
:
45
ZipWriter
(
io::ZeroCopyOutputStream
* raw_output);
46
~ZipWriter
();
47
48
bool
Write
(
const
std::string
&
filename
,
const
std::string
&
contents
);
49
bool
WriteDirectory
();
50
51
private
:
52
struct
FileInfo {
53
std::string
name
;
54
uint32_t
offset
;
55
uint32_t
size
;
56
uint32_t
crc32
;
57
};
58
59
io::ZeroCopyOutputStream
*
raw_output_
;
60
std::vector<FileInfo>
files_
;
61
};
62
63
}
// namespace compiler
64
}
// namespace protobuf
65
}
// namespace google
filename
const char * filename
Definition:
bloaty/third_party/zlib/contrib/minizip/ioapi.h:135
google::protobuf::compiler::ZipWriter::WriteDirectory
bool WriteDirectory()
Definition:
bloaty/third_party/protobuf/src/google/protobuf/compiler/zip_writer.cc:173
testing::internal::string
::std::string string
Definition:
bloaty/third_party/protobuf/third_party/googletest/googletest/include/gtest/internal/gtest-port.h:881
google::protobuf
Definition:
bloaty/third_party/protobuf/benchmarks/util/data_proto2_to_proto3_util.h:12
grpc::protobuf::io::ZeroCopyOutputStream
GRPC_CUSTOM_ZEROCOPYOUTPUTSTREAM ZeroCopyOutputStream
Definition:
include/grpcpp/impl/codegen/config_protobuf.h:100
google::protobuf::compiler::ZipWriter::~ZipWriter
~ZipWriter()
Definition:
bloaty/third_party/protobuf/src/google/protobuf/compiler/zip_writer.cc:140
google::protobuf::compiler::ZipWriter::FileInfo::crc32
uint32_t crc32
Definition:
protobuf/src/google/protobuf/compiler/zip_writer.h:56
uint32_t
unsigned int uint32_t
Definition:
stdint-msvc2008.h:80
google::protobuf::compiler::ZipWriter::FileInfo::size
uint32_t size
Definition:
protobuf/src/google/protobuf/compiler/zip_writer.h:55
google::protobuf::compiler::ZipWriter::FileInfo::offset
uint32_t offset
Definition:
protobuf/src/google/protobuf/compiler/zip_writer.h:54
google::protobuf::compiler::ZipWriter::ZipWriter
ZipWriter(io::ZeroCopyOutputStream *raw_output)
Definition:
bloaty/third_party/protobuf/src/google/protobuf/compiler/zip_writer.cc:138
google::protobuf::compiler::ZipWriter::files_
std::vector< FileInfo > files_
Definition:
bloaty/third_party/protobuf/src/google/protobuf/compiler/zip_writer.h:88
google::protobuf::compiler::ZipWriter::Write
bool Write(const std::string &filename, const std::string &contents)
Definition:
bloaty/third_party/protobuf/src/google/protobuf/compiler/zip_writer.cc:142
contents
string_view contents
Definition:
elf.cc:597
google::protobuf::compiler::ZipWriter::FileInfo::name
std::string name
Definition:
bloaty/third_party/protobuf/src/google/protobuf/compiler/zip_writer.h:81
google::protobuf::compiler::ZipWriter::raw_output_
io::ZeroCopyOutputStream * raw_output_
Definition:
bloaty/third_party/protobuf/src/google/protobuf/compiler/zip_writer.h:87
google::protobuf::io::ZeroCopyOutputStream
Definition:
bloaty/third_party/protobuf/src/google/protobuf/io/zero_copy_stream.h:183
compiler
Definition:
bloaty/third_party/protobuf/src/google/protobuf/compiler/plugin.pb.cc:21
google
Definition:
bloaty/third_party/protobuf/benchmarks/util/data_proto2_to_proto3_util.h:11
grpc
Author(s):
autogenerated on Fri May 16 2025 03:01:01