Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in / Register
Toggle navigation
P
protobuf
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Packages
Packages
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
submodule
protobuf
Commits
b1c55030
Unverified
Commit
b1c55030
authored
Jul 20, 2018
by
Feng Xiao
Committed by
GitHub
Jul 20, 2018
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Delete unused files. (#4942)
* Delete unused files.
parent
88795f64
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
0 additions
and
2089 deletions
+0
-2089
BUILD
BUILD
+0
-2
libprotoc.cmake
cmake/libprotoc.cmake
+0
-4
Makefile.am
src/Makefile.am
+0
-4
java_lazy_message_field.cc
src/google/protobuf/compiler/java/java_lazy_message_field.cc
+0
-811
java_lazy_message_field.h
src/google/protobuf/compiler/java/java_lazy_message_field.h
+0
-121
java_lazy_message_field_lite.cc
...le/protobuf/compiler/java/java_lazy_message_field_lite.cc
+0
-725
java_lazy_message_field_lite.h
...gle/protobuf/compiler/java/java_lazy_message_field_lite.h
+0
-121
any.js
src/google/protobuf/compiler/js/well_known_types/any.js
+0
-80
struct.js
src/google/protobuf/compiler/js/well_known_types/struct.js
+0
-168
timestamp.js
...google/protobuf/compiler/js/well_known_types/timestamp.js
+0
-53
No files found.
BUILD
View file @
b1c55030
...
...
@@ -322,8 +322,6 @@ cc_library(
"src/google/protobuf/compiler/java/java_generator.cc",
"src/google/protobuf/compiler/java/java_generator_factory.cc",
"src/google/protobuf/compiler/java/java_helpers.cc",
"src/google/protobuf/compiler/java/java_lazy_message_field.cc",
"src/google/protobuf/compiler/java/java_lazy_message_field_lite.cc",
"src/google/protobuf/compiler/java/java_map_field.cc",
"src/google/protobuf/compiler/java/java_map_field_lite.cc",
"src/google/protobuf/compiler/java/java_message.cc",
...
...
cmake/libprotoc.cmake
View file @
b1c55030
...
...
@@ -44,8 +44,6 @@ set(libprotoc_files
${
protobuf_source_dir
}
/src/google/protobuf/compiler/java/java_generator.cc
${
protobuf_source_dir
}
/src/google/protobuf/compiler/java/java_generator_factory.cc
${
protobuf_source_dir
}
/src/google/protobuf/compiler/java/java_helpers.cc
${
protobuf_source_dir
}
/src/google/protobuf/compiler/java/java_lazy_message_field.cc
${
protobuf_source_dir
}
/src/google/protobuf/compiler/java/java_lazy_message_field_lite.cc
${
protobuf_source_dir
}
/src/google/protobuf/compiler/java/java_map_field.cc
${
protobuf_source_dir
}
/src/google/protobuf/compiler/java/java_map_field_lite.cc
${
protobuf_source_dir
}
/src/google/protobuf/compiler/java/java_message.cc
...
...
@@ -128,8 +126,6 @@ set(libprotoc_headers
${
protobuf_source_dir
}
/src/google/protobuf/compiler/java/java_file.h
${
protobuf_source_dir
}
/src/google/protobuf/compiler/java/java_generator_factory.h
${
protobuf_source_dir
}
/src/google/protobuf/compiler/java/java_helpers.h
${
protobuf_source_dir
}
/src/google/protobuf/compiler/java/java_lazy_message_field.h
${
protobuf_source_dir
}
/src/google/protobuf/compiler/java/java_lazy_message_field_lite.h
${
protobuf_source_dir
}
/src/google/protobuf/compiler/java/java_map_field.h
${
protobuf_source_dir
}
/src/google/protobuf/compiler/java/java_map_field_lite.h
${
protobuf_source_dir
}
/src/google/protobuf/compiler/java/java_message.h
...
...
src/Makefile.am
View file @
b1c55030
...
...
@@ -367,10 +367,6 @@ libprotoc_la_SOURCES = \
google/protobuf/compiler/java/java_generator_factory.h
\
google/protobuf/compiler/java/java_helpers.cc
\
google/protobuf/compiler/java/java_helpers.h
\
google/protobuf/compiler/java/java_lazy_message_field.cc
\
google/protobuf/compiler/java/java_lazy_message_field.h
\
google/protobuf/compiler/java/java_lazy_message_field_lite.cc
\
google/protobuf/compiler/java/java_lazy_message_field_lite.h
\
google/protobuf/compiler/java/java_map_field.cc
\
google/protobuf/compiler/java/java_map_field.h
\
google/protobuf/compiler/java/java_map_field_lite.cc
\
...
...
src/google/protobuf/compiler/java/java_lazy_message_field.cc
deleted
100644 → 0
View file @
88795f64
// Protocol Buffers - Google's data interchange format
// Copyright 2008 Google Inc. All rights reserved.
// 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
// met:
//
// * Redistributions of source code must retain the above copyright
// notice, this list of conditions and the following disclaimer.
// * Redistributions in binary form must reproduce the above
// copyright notice, this list of conditions and the following disclaimer
// in the documentation and/or other materials provided with the
// distribution.
// * Neither the name of Google Inc. nor the names of its
// contributors may be used to endorse or promote products derived from
// this software without specific prior written permission.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
// Author: niwasaki@google.com (Naoki Iwasaki)
// Based on original Protocol Buffers design by
// Sanjay Ghemawat, Jeff Dean, and others.
#include <google/protobuf/compiler/java/java_context.h>
#include <google/protobuf/compiler/java/java_lazy_message_field.h>
#include <google/protobuf/compiler/java/java_doc_comment.h>
#include <google/protobuf/compiler/java/java_helpers.h>
#include <google/protobuf/io/printer.h>
namespace
google
{
namespace
protobuf
{
namespace
compiler
{
namespace
java
{
ImmutableLazyMessageFieldGenerator
::
ImmutableLazyMessageFieldGenerator
(
const
FieldDescriptor
*
descriptor
,
int
messageBitIndex
,
int
builderBitIndex
,
Context
*
context
)
:
ImmutableMessageFieldGenerator
(
descriptor
,
messageBitIndex
,
builderBitIndex
,
context
)
{
}
ImmutableLazyMessageFieldGenerator
::~
ImmutableLazyMessageFieldGenerator
()
{}
void
ImmutableLazyMessageFieldGenerator
::
GenerateMembers
(
io
::
Printer
*
printer
)
const
{
printer
->
Print
(
variables_
,
"private com.google.protobuf.LazyFieldLite $name$_ =
\n
"
" new com.google.protobuf.LazyFieldLite();
\n
"
);
PrintExtraFieldInfo
(
variables_
,
printer
);
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"$deprecation$public boolean has$capitalized_name$() {
\n
"
" return $get_has_field_bit_message$;
\n
"
"}
\n
"
);
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"$deprecation$public $type$ get$capitalized_name$() {
\n
"
" return ($type$) $name$_.getValue($type$.getDefaultInstance());
\n
"
"}
\n
"
);
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"$deprecation$public $type$OrBuilder get$capitalized_name$OrBuilder() {
\n
"
" return $name$_;
\n
"
"}
\n
"
);
}
void
ImmutableLazyMessageFieldGenerator
::
GenerateBuilderMembers
(
io
::
Printer
*
printer
)
const
{
// When using nested-builders, the code initially works just like the
// non-nested builder case. It only creates a nested builder lazily on
// demand and then forever delegates to it after creation.
printer
->
Print
(
variables_
,
"private com.google.protobuf.LazyFieldLite $name$_ =
\n
"
" new com.google.protobuf.LazyFieldLite();
\n
"
);
printer
->
Print
(
variables_
,
// If this builder is non-null, it is used and the other fields are
// ignored.
"private com.google.protobuf.SingleFieldBuilder$ver$<
\n
"
" $type$, $type$.Builder, $type$OrBuilder> $name$Builder_;"
"
\n
"
);
// The comments above the methods below are based on a hypothetical
// field of type "Field" called "Field".
// boolean hasField()
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"$deprecation$public boolean has$capitalized_name$() {
\n
"
" return $get_has_field_bit_builder$;
\n
"
"}
\n
"
);
printer
->
Print
(
variables_
,
"$deprecation$public $type$ get$capitalized_name$() {
\n
"
" return ($type$) $name$_.getValue($type$.getDefaultInstance());
\n
"
"}
\n
"
);
// Field.Builder setField(Field value)
WriteFieldDocComment
(
printer
,
descriptor_
);
PrintNestedBuilderFunction
(
printer
,
"$deprecation$public Builder set$capitalized_name$($type$ value)"
,
"if (value == null) {
\n
"
" throw new NullPointerException();
\n
"
"}
\n
"
"$name$_.setValue(value);
\n
"
"$on_changed$
\n
"
,
NULL
,
// Lazy fields are supported only for lite-runtime.
"$set_has_field_bit_builder$;
\n
"
"return this;
\n
"
);
// Field.Builder setField(Field.Builder builderForValue)
WriteFieldDocComment
(
printer
,
descriptor_
);
PrintNestedBuilderFunction
(
printer
,
"$deprecation$public Builder set$capitalized_name$(
\n
"
" $type$.Builder builderForValue)"
,
"$name$_.setValue(builderForValue.build());
\n
"
"$on_changed$
\n
"
,
NULL
,
"$set_has_field_bit_builder$;
\n
"
"return this;
\n
"
);
// Field.Builder mergeField(Field value)
WriteFieldDocComment
(
printer
,
descriptor_
);
PrintNestedBuilderFunction
(
printer
,
"$deprecation$public Builder merge$capitalized_name$($type$ value)"
,
"if ($get_has_field_bit_builder$ &&
\n
"
" !$name$_.containsDefaultInstance()) {
\n
"
" $name$_.setValue(
\n
"
" $type$.newBuilder(
\n
"
" get$capitalized_name$()).mergeFrom(value).buildPartial());
\n
"
"} else {
\n
"
" $name$_.setValue(value);
\n
"
"}
\n
"
"$on_changed$
\n
"
,
NULL
,
"$set_has_field_bit_builder$;
\n
"
"return this;
\n
"
);
// Field.Builder clearField()
WriteFieldDocComment
(
printer
,
descriptor_
);
PrintNestedBuilderFunction
(
printer
,
"$deprecation$public Builder clear$capitalized_name$()"
,
"$name$_.clear();
\n
"
"$on_changed$
\n
"
,
NULL
,
"$clear_has_field_bit_builder$;
\n
"
"return this;
\n
"
);
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"$deprecation$public $type$.Builder get$capitalized_name$Builder() {
\n
"
" $set_has_field_bit_builder$;
\n
"
" $on_changed$
\n
"
" return get$capitalized_name$FieldBuilder().getBuilder();
\n
"
"}
\n
"
);
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"$deprecation$public $type$OrBuilder get$capitalized_name$OrBuilder() {
\n
"
" if ($name$Builder_ != null) {
\n
"
" return $name$Builder_.getMessageOrBuilder();
\n
"
" } else {
\n
"
" return $name$_;
\n
"
" }
\n
"
"}
\n
"
);
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"private com.google.protobuf.SingleFieldBuilder$ver$<
\n
"
" $type$, $type$.Builder, $type$OrBuilder>
\n
"
" get$capitalized_name$FieldBuilder() {
\n
"
" if ($name$Builder_ == null) {
\n
"
" $name$Builder_ = new com.google.protobuf.SingleFieldBuilder$ver$<
\n
"
" $type$, $type$.Builder, $type$OrBuilder>(
\n
"
" $name$_,
\n
"
" getParentForChildren(),
\n
"
" isClean());
\n
"
" $name$_ = null;
\n
"
" }
\n
"
" return $name$Builder_;
\n
"
"}
\n
"
);
}
void
ImmutableLazyMessageFieldGenerator
::
GenerateInitializationCode
(
io
::
Printer
*
printer
)
const
{
printer
->
Print
(
variables_
,
"$name$_.clear();
\n
"
);
}
void
ImmutableLazyMessageFieldGenerator
::
GenerateBuilderClearCode
(
io
::
Printer
*
printer
)
const
{
printer
->
Print
(
variables_
,
"$name$_.clear();
\n
"
);
printer
->
Print
(
variables_
,
"$clear_has_field_bit_builder$;
\n
"
);
}
void
ImmutableLazyMessageFieldGenerator
::
GenerateMergingCode
(
io
::
Printer
*
printer
)
const
{
printer
->
Print
(
variables_
,
"if (other.has$capitalized_name$()) {
\n
"
" $name$_.merge(other.$name$_);
\n
"
" $set_has_field_bit_builder$;
\n
"
"}
\n
"
);
}
void
ImmutableLazyMessageFieldGenerator
::
GenerateBuildingCode
(
io
::
Printer
*
printer
)
const
{
printer
->
Print
(
variables_
,
"if ($get_has_field_bit_from_local$) {
\n
"
" result.$name$_.set($name$_);
\n
"
" $set_has_field_bit_to_local$;
\n
"
"}
\n
"
);
}
void
ImmutableLazyMessageFieldGenerator
::
GenerateParsingCode
(
io
::
Printer
*
printer
)
const
{
printer
->
Print
(
variables_
,
"$name$_.setByteString(input.readBytes(), extensionRegistry);
\n
"
);
printer
->
Print
(
variables_
,
"$set_has_field_bit_message$;
\n
"
);
}
void
ImmutableLazyMessageFieldGenerator
::
GenerateSerializationCode
(
io
::
Printer
*
printer
)
const
{
// Do not de-serialize lazy fields.
printer
->
Print
(
variables_
,
"if ($get_has_field_bit_message$) {
\n
"
" output.writeBytes($number$, $name$_.toByteString());
\n
"
"}
\n
"
);
}
void
ImmutableLazyMessageFieldGenerator
::
GenerateSerializedSizeCode
(
io
::
Printer
*
printer
)
const
{
printer
->
Print
(
variables_
,
"if ($get_has_field_bit_message$) {
\n
"
" size += com.google.protobuf.CodedOutputStream
\n
"
" .computeLazyFieldSize($number$, $name$_);
\n
"
"}
\n
"
);
}
// ===================================================================
ImmutableLazyMessageOneofFieldGenerator
::
ImmutableLazyMessageOneofFieldGenerator
(
const
FieldDescriptor
*
descriptor
,
int
messageBitIndex
,
int
builderBitIndex
,
Context
*
context
)
:
ImmutableLazyMessageFieldGenerator
(
descriptor
,
messageBitIndex
,
builderBitIndex
,
context
)
{
const
OneofGeneratorInfo
*
info
=
context
->
GetOneofGeneratorInfo
(
descriptor
->
containing_oneof
());
SetCommonOneofVariables
(
descriptor
,
info
,
&
variables_
);
variables_
[
"lazy_type"
]
=
"com.google.protobuf.LazyFieldLite"
;
}
ImmutableLazyMessageOneofFieldGenerator
::
~
ImmutableLazyMessageOneofFieldGenerator
()
{}
void
ImmutableLazyMessageOneofFieldGenerator
::
GenerateMembers
(
io
::
Printer
*
printer
)
const
{
PrintExtraFieldInfo
(
variables_
,
printer
);
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"$deprecation$public boolean has$capitalized_name$() {
\n
"
" return $has_oneof_case_message$;
\n
"
"}
\n
"
);
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"$deprecation$public $type$ get$capitalized_name$() {
\n
"
" if ($has_oneof_case_message$) {
\n
"
" return ($type$) (($lazy_type$) $oneof_name$_).getValue(
\n
"
" $type$.getDefaultInstance());
\n
"
" }
\n
"
" return $type$.getDefaultInstance();
\n
"
"}
\n
"
);
}
void
ImmutableLazyMessageOneofFieldGenerator
::
GenerateBuilderMembers
(
io
::
Printer
*
printer
)
const
{
// boolean hasField()
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"$deprecation$public boolean has$capitalized_name$() {
\n
"
" return $has_oneof_case_message$;
\n
"
"}
\n
"
);
printer
->
Print
(
variables_
,
"$deprecation$public $type$ get$capitalized_name$() {
\n
"
" if ($has_oneof_case_message$) {
\n
"
" return ($type$) (($lazy_type$) $oneof_name$_).getValue(
\n
"
" $type$.getDefaultInstance());
\n
"
" }
\n
"
" return $type$.getDefaultInstance();
\n
"
"}
\n
"
);
// Field.Builder setField(Field value)
WriteFieldDocComment
(
printer
,
descriptor_
);
PrintNestedBuilderFunction
(
printer
,
"$deprecation$public Builder set$capitalized_name$($type$ value)"
,
"if (value == null) {
\n
"
" throw new NullPointerException();
\n
"
"}
\n
"
"if (!($has_oneof_case_message$)) {
\n
"
" $oneof_name$_ = new $lazy_type$();
\n
"
" $set_oneof_case_message$;
\n
"
"}
\n
"
"(($lazy_type$) $oneof_name$_).setValue(value);
\n
"
"$on_changed$
\n
"
,
NULL
,
// Lazy fields are supported only for lite-runtime.
"return this;
\n
"
);
// Field.Builder setField(Field.Builder builderForValue)
WriteFieldDocComment
(
printer
,
descriptor_
);
PrintNestedBuilderFunction
(
printer
,
"$deprecation$public Builder set$capitalized_name$(
\n
"
" $type$.Builder builderForValue)"
,
"if (!($has_oneof_case_message$)) {
\n
"
" $oneof_name$_ = new $lazy_type$();
\n
"
" $set_oneof_case_message$;
\n
"
"}
\n
"
"(($lazy_type$) $oneof_name$_).setValue(builderForValue.build());
\n
"
"$on_changed$
\n
"
,
NULL
,
"return this;
\n
"
);
// Field.Builder mergeField(Field value)
WriteFieldDocComment
(
printer
,
descriptor_
);
PrintNestedBuilderFunction
(
printer
,
"$deprecation$public Builder merge$capitalized_name$($type$ value)"
,
"if ($has_oneof_case_message$ &&
\n
"
" !(($lazy_type$) $oneof_name$_).containsDefaultInstance()) {
\n
"
" (($lazy_type$) $oneof_name$_).setValue(
\n
"
" $type$.newBuilder(
\n
"
" get$capitalized_name$()).mergeFrom(value).buildPartial());
\n
"
"} else {
\n
"
" if (!($has_oneof_case_message$)) {
\n
"
" $oneof_name$_ = new $lazy_type$();
\n
"
" $set_oneof_case_message$;
\n
"
" }
\n
"
" (($lazy_type$) $oneof_name$_).setValue(value);
\n
"
"}
\n
"
"$on_changed$
\n
"
,
NULL
,
"return this;
\n
"
);
// Field.Builder clearField()
WriteFieldDocComment
(
printer
,
descriptor_
);
PrintNestedBuilderFunction
(
printer
,
"$deprecation$public Builder clear$capitalized_name$()"
,
"if ($has_oneof_case_message$) {
\n
"
" $clear_oneof_case_message$;
\n
"
" $oneof_name$_ = null;
\n
"
" $on_changed$
\n
"
"}
\n
"
,
NULL
,
"return this;
\n
"
);
}
void
ImmutableLazyMessageOneofFieldGenerator
::
GenerateMergingCode
(
io
::
Printer
*
printer
)
const
{
printer
->
Print
(
variables_
,
"if (!($has_oneof_case_message$)) {
\n
"
" $oneof_name$_ = new $lazy_type$();
\n
"
"}
\n
"
"(($lazy_type$) $oneof_name$_).merge(
\n
"
" ($lazy_type$) other.$oneof_name$_);
\n
"
"$set_oneof_case_message$;
\n
"
);
}
void
ImmutableLazyMessageOneofFieldGenerator
::
GenerateBuildingCode
(
io
::
Printer
*
printer
)
const
{
printer
->
Print
(
variables_
,
"if ($has_oneof_case_message$) {
\n
"
);
printer
->
Indent
();
printer
->
Print
(
variables_
,
"result.$oneof_name$_ = new $lazy_type$();
\n
"
"(($lazy_type$) result.$oneof_name$_).set(
\n
"
" (($lazy_type$) $oneof_name$_));
\n
"
);
printer
->
Outdent
();
printer
->
Print
(
"}
\n
"
);
}
void
ImmutableLazyMessageOneofFieldGenerator
::
GenerateParsingCode
(
io
::
Printer
*
printer
)
const
{
printer
->
Print
(
variables_
,
"if (!($has_oneof_case_message$)) {
\n
"
" $oneof_name$_ = new $lazy_type$();
\n
"
"}
\n
"
"(($lazy_type$) $oneof_name$_).setByteString(
\n
"
" input.readBytes(), extensionRegistry);
\n
"
"$set_oneof_case_message$;
\n
"
);
}
void
ImmutableLazyMessageOneofFieldGenerator
::
GenerateSerializationCode
(
io
::
Printer
*
printer
)
const
{
// Do not de-serialize lazy fields.
printer
->
Print
(
variables_
,
"if ($has_oneof_case_message$) {
\n
"
" output.writeBytes(
\n
"
" $number$, (($lazy_type$) $oneof_name$_).toByteString());
\n
"
"}
\n
"
);
}
void
ImmutableLazyMessageOneofFieldGenerator
::
GenerateSerializedSizeCode
(
io
::
Printer
*
printer
)
const
{
printer
->
Print
(
variables_
,
"if ($has_oneof_case_message$) {
\n
"
" size += com.google.protobuf.CodedOutputStream
\n
"
" .computeLazyFieldSize($number$, ($lazy_type$) $oneof_name$_);
\n
"
"}
\n
"
);
}
// ===================================================================
RepeatedImmutableLazyMessageFieldGenerator
::
RepeatedImmutableLazyMessageFieldGenerator
(
const
FieldDescriptor
*
descriptor
,
int
messageBitIndex
,
int
builderBitIndex
,
Context
*
context
)
:
RepeatedImmutableMessageFieldGenerator
(
descriptor
,
messageBitIndex
,
builderBitIndex
,
context
)
{
}
RepeatedImmutableLazyMessageFieldGenerator
::
~
RepeatedImmutableLazyMessageFieldGenerator
()
{}
void
RepeatedImmutableLazyMessageFieldGenerator
::
GenerateMembers
(
io
::
Printer
*
printer
)
const
{
printer
->
Print
(
variables_
,
"private java.util.List<com.google.protobuf.LazyFieldLite> $name$_;
\n
"
);
PrintExtraFieldInfo
(
variables_
,
printer
);
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"$deprecation$public java.util.List<$type$>
\n
"
" get$capitalized_name$List() {
\n
"
" java.util.List<$type$> list =
\n
"
" new java.util.ArrayList<$type$>($name$_.size());
\n
"
" for (com.google.protobuf.LazyFieldLite lf : $name$_) {
\n
"
" list.add(($type$) lf.getValue($type$.getDefaultInstance()));
\n
"
" }
\n
"
" return list;
\n
"
"}
\n
"
);
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"$deprecation$public java.util.List<? extends $type$OrBuilder>
\n
"
" get$capitalized_name$OrBuilderList() {
\n
"
" return get$capitalized_name$List();
\n
"
"}
\n
"
);
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"$deprecation$public int get$capitalized_name$Count() {
\n
"
" return $name$_.size();
\n
"
"}
\n
"
);
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"$deprecation$public $type$ get$capitalized_name$(int index) {
\n
"
" return ($type$)
\n
"
" $name$_.get(index).getValue($type$.getDefaultInstance());
\n
"
"}
\n
"
);
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"$deprecation$public $type$OrBuilder get$capitalized_name$OrBuilder(
\n
"
" int index) {
\n
"
" return ($type$OrBuilder)
\n
"
" $name$_.get(index).getValue($type$.getDefaultInstance());
\n
"
"}
\n
"
);
}
void
RepeatedImmutableLazyMessageFieldGenerator
::
GenerateBuilderMembers
(
io
::
Printer
*
printer
)
const
{
// When using nested-builders, the code initially works just like the
// non-nested builder case. It only creates a nested builder lazily on
// demand and then forever delegates to it after creation.
printer
->
Print
(
variables_
,
"private java.util.List<com.google.protobuf.LazyFieldLite> $name$_ =
\n
"
" java.util.Collections.emptyList();
\n
"
"private void ensure$capitalized_name$IsMutable() {
\n
"
" if (!$get_mutable_bit_builder$) {
\n
"
" $name$_ =
\n
"
" new java.util.ArrayList<com.google.protobuf.LazyFieldLite>(
\n
"
" $name$_);
\n
"
" $set_mutable_bit_builder$;
\n
"
" }
\n
"
"}
\n
"
"
\n
"
);
printer
->
Print
(
variables_
,
// If this builder is non-null, it is used and the other fields are
// ignored.
"private com.google.protobuf.RepeatedFieldBuilder$ver$<
\n
"
" $type$, $type$.Builder, $type$OrBuilder> $name$Builder_;
\n
"
"
\n
"
);
// The comments above the methods below are based on a hypothetical
// repeated field of type "Field" called "RepeatedField".
// List<Field> getRepeatedFieldList()
WriteFieldDocComment
(
printer
,
descriptor_
);
PrintNestedBuilderFunction
(
printer
,
"$deprecation$public java.util.List<$type$> get$capitalized_name$List()"
,
"java.util.List<$type$> list =
\n
"
" new java.util.ArrayList<$type$>($name$_.size());
\n
"
"for (com.google.protobuf.LazyFieldLite lf : $name$_) {
\n
"
" list.add(($type$) lf.getValue($type$.getDefaultInstance()));
\n
"
"}
\n
"
"return java.util.Collections.unmodifiableList(list);
\n
"
,
"return $name$Builder_.getMessageList();
\n
"
,
NULL
);
// int getRepeatedFieldCount()
WriteFieldDocComment
(
printer
,
descriptor_
);
PrintNestedBuilderFunction
(
printer
,
"$deprecation$public int get$capitalized_name$Count()"
,
"return $name$_.size();
\n
"
,
"return $name$Builder_.getCount();
\n
"
,
NULL
);
// Field getRepeatedField(int index)
WriteFieldDocComment
(
printer
,
descriptor_
);
PrintNestedBuilderFunction
(
printer
,
"$deprecation$public $type$ get$capitalized_name$(int index)"
,
"return ($type$) $name$_.get(index).getValue(
\n
"
" $type$.getDefaultInstance());
\n
"
,
"return $name$Builder_.getMessage(index);
\n
"
,
NULL
);
// Builder setRepeatedField(int index, Field value)
WriteFieldDocComment
(
printer
,
descriptor_
);
PrintNestedBuilderFunction
(
printer
,
"$deprecation$public Builder set$capitalized_name$(
\n
"
" int index, $type$ value)"
,
"if (value == null) {
\n
"
" throw new NullPointerException();
\n
"
"}
\n
"
"ensure$capitalized_name$IsMutable();
\n
"
"$name$_.set(index, com.google.protobuf.LazyFieldLite.fromValue(value));
\n
"
"$on_changed$
\n
"
,
"$name$Builder_.setMessage(index, value);
\n
"
,
"return this;
\n
"
);
// Builder setRepeatedField(int index, Field.Builder builderForValue)
WriteFieldDocComment
(
printer
,
descriptor_
);
PrintNestedBuilderFunction
(
printer
,
"$deprecation$public Builder set$capitalized_name$(
\n
"
" int index, $type$.Builder builderForValue)"
,
"ensure$capitalized_name$IsMutable();
\n
"
"$name$_.set(index, com.google.protobuf.LazyFieldLite.fromValue(
\n
"
" builderForValue.build()));
\n
"
"$on_changed$
\n
"
,
"$name$Builder_.setMessage(index, builderForValue.build());
\n
"
,
"return this;
\n
"
);
// Builder addRepeatedField(Field value)
WriteFieldDocComment
(
printer
,
descriptor_
);
PrintNestedBuilderFunction
(
printer
,
"$deprecation$public Builder add$capitalized_name$($type$ value)"
,
"if (value == null) {
\n
"
" throw new NullPointerException();
\n
"
"}
\n
"
"ensure$capitalized_name$IsMutable();
\n
"
"$name$_.add(com.google.protobuf.LazyFieldLite.fromValue(value));
\n
"
"$on_changed$
\n
"
,
"$name$Builder_.addMessage(value);
\n
"
,
"return this;
\n
"
);
// Builder addRepeatedField(int index, Field value)
WriteFieldDocComment
(
printer
,
descriptor_
);
PrintNestedBuilderFunction
(
printer
,
"$deprecation$public Builder add$capitalized_name$(
\n
"
" int index, $type$ value)"
,
"if (value == null) {
\n
"
" throw new NullPointerException();
\n
"
"}
\n
"
"ensure$capitalized_name$IsMutable();
\n
"
"$name$_.add(index, com.google.protobuf.LazyFieldLite.fromValue(value));
\n
"
"$on_changed$
\n
"
,
"$name$Builder_.addMessage(index, value);
\n
"
,
"return this;
\n
"
);
// Builder addRepeatedField(Field.Builder builderForValue)
WriteFieldDocComment
(
printer
,
descriptor_
);
PrintNestedBuilderFunction
(
printer
,
"$deprecation$public Builder add$capitalized_name$(
\n
"
" $type$.Builder builderForValue)"
,
"ensure$capitalized_name$IsMutable();
\n
"
"$name$_.add(com.google.protobuf.LazyFieldLite.fromValue(
\n
"
" builderForValue.build()));
\n
"
"$on_changed$
\n
"
,
"$name$Builder_.addMessage(builderForValue.build());
\n
"
,
"return this;
\n
"
);
// Builder addRepeatedField(int index, Field.Builder builderForValue)
WriteFieldDocComment
(
printer
,
descriptor_
);
PrintNestedBuilderFunction
(
printer
,
"$deprecation$public Builder add$capitalized_name$(
\n
"
" int index, $type$.Builder builderForValue)"
,
"ensure$capitalized_name$IsMutable();
\n
"
"$name$_.add(index, com.google.protobuf.LazyFieldLite.fromValue(
\n
"
" builderForValue.build()));
\n
"
"$on_changed$
\n
"
,
"$name$Builder_.addMessage(index, builderForValue.build());
\n
"
,
"return this;
\n
"
);
// Builder addAllRepeatedField(Iterable<Field> values)
WriteFieldDocComment
(
printer
,
descriptor_
);
PrintNestedBuilderFunction
(
printer
,
"$deprecation$public Builder addAll$capitalized_name$(
\n
"
" java.lang.Iterable<? extends $type$> values)"
,
"ensure$capitalized_name$IsMutable();
\n
"
"for (com.google.protobuf.MessageLite v : values) {
\n
"
" $name$_.add(com.google.protobuf.LazyFieldLite.fromValue(v));
\n
"
"}
\n
"
"$on_changed$
\n
"
,
"$name$Builder_.addAllMessages(values);
\n
"
,
"return this;
\n
"
);
// Builder clearAllRepeatedField()
WriteFieldDocComment
(
printer
,
descriptor_
);
PrintNestedBuilderFunction
(
printer
,
"$deprecation$public Builder clear$capitalized_name$()"
,
"$name$_ = java.util.Collections.emptyList();
\n
"
"$clear_mutable_bit_builder$;
\n
"
"$on_changed$
\n
"
,
"$name$Builder_.clear();
\n
"
,
"return this;
\n
"
);
// Builder removeRepeatedField(int index)
WriteFieldDocComment
(
printer
,
descriptor_
);
PrintNestedBuilderFunction
(
printer
,
"$deprecation$public Builder remove$capitalized_name$(int index)"
,
"ensure$capitalized_name$IsMutable();
\n
"
"$name$_.remove(index);
\n
"
"$on_changed$
\n
"
,
"$name$Builder_.remove(index);
\n
"
,
"return this;
\n
"
);
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"$deprecation$public $type$.Builder get$capitalized_name$Builder(
\n
"
" int index) {
\n
"
" return get$capitalized_name$FieldBuilder().getBuilder(index);
\n
"
"}
\n
"
);
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"$deprecation$public $type$OrBuilder get$capitalized_name$OrBuilder(
\n
"
" int index) {
\n
"
" if ($name$Builder_ == null) {
\n
"
" return $name$_.get(index);"
" } else {
\n
"
" return $name$Builder_.getMessageOrBuilder(index);
\n
"
" }
\n
"
"}
\n
"
);
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"$deprecation$public java.util.List<? extends $type$OrBuilder>
\n
"
" get$capitalized_name$OrBuilderList() {
\n
"
" if ($name$Builder_ != null) {
\n
"
" return $name$Builder_.getMessageOrBuilderList();
\n
"
" } else {
\n
"
" return java.util.Collections.unmodifiableList($name$_);
\n
"
" }
\n
"
"}
\n
"
);
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"$deprecation$public $type$.Builder add$capitalized_name$Builder() {
\n
"
" return get$capitalized_name$FieldBuilder().addBuilder(
\n
"
" $type$.getDefaultInstance());
\n
"
"}
\n
"
);
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"$deprecation$public $type$.Builder add$capitalized_name$Builder(
\n
"
" int index) {
\n
"
" return get$capitalized_name$FieldBuilder().addBuilder(
\n
"
" index, $type$.getDefaultInstance());
\n
"
"}
\n
"
);
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"$deprecation$public java.util.List<$type$.Builder>
\n
"
" get$capitalized_name$BuilderList() {
\n
"
" return get$capitalized_name$FieldBuilder().getBuilderList();
\n
"
"}
\n
"
"private com.google.protobuf.RepeatedFieldBuilder$ver$<
\n
"
" $type$, $type$.Builder, $type$OrBuilder>
\n
"
" get$capitalized_name$FieldBuilder() {
\n
"
" if ($name$Builder_ == null) {
\n
"
" $name$Builder_ = new com.google.protobuf.RepeatedFieldBuilder$ver$<
\n
"
" $type$, $type$.Builder, $type$OrBuilder>(
\n
"
" $name$_,
\n
"
" $get_mutable_bit_builder$,
\n
"
" getParentForChildren(),
\n
"
" isClean());
\n
"
" $name$_ = null;
\n
"
" }
\n
"
" return $name$Builder_;
\n
"
"}
\n
"
);
}
void
RepeatedImmutableLazyMessageFieldGenerator
::
GenerateParsingCode
(
io
::
Printer
*
printer
)
const
{
printer
->
Print
(
variables_
,
"if (!$get_mutable_bit_parser$) {
\n
"
" $name$_ =
\n
"
" new java.util.ArrayList<com.google.protobuf.LazyFieldLite>();
\n
"
" $set_mutable_bit_parser$;
\n
"
"}
\n
"
"$name$_.add(new com.google.protobuf.LazyFieldLite(
\n
"
" extensionRegistry, input.readBytes()));
\n
"
);
}
void
RepeatedImmutableLazyMessageFieldGenerator
::
GenerateSerializationCode
(
io
::
Printer
*
printer
)
const
{
printer
->
Print
(
variables_
,
"for (int i = 0; i < $name$_.size(); i++) {
\n
"
" output.writeBytes($number$, $name$_.get(i).toByteString());
\n
"
"}
\n
"
);
}
void
RepeatedImmutableLazyMessageFieldGenerator
::
GenerateSerializedSizeCode
(
io
::
Printer
*
printer
)
const
{
printer
->
Print
(
variables_
,
"for (int i = 0; i < $name$_.size(); i++) {
\n
"
" size += com.google.protobuf.CodedOutputStream
\n
"
" .computeLazyFieldSize($number$, $name$_.get(i));
\n
"
"}
\n
"
);
}
}
// namespace java
}
// namespace compiler
}
// namespace protobuf
}
// namespace google
src/google/protobuf/compiler/java/java_lazy_message_field.h
deleted
100644 → 0
View file @
88795f64
// Protocol Buffers - Google's data interchange format
// Copyright 2008 Google Inc. All rights reserved.
// 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
// met:
//
// * Redistributions of source code must retain the above copyright
// notice, this list of conditions and the following disclaimer.
// * Redistributions in binary form must reproduce the above
// copyright notice, this list of conditions and the following disclaimer
// in the documentation and/or other materials provided with the
// distribution.
// * Neither the name of Google Inc. nor the names of its
// contributors may be used to endorse or promote products derived from
// this software without specific prior written permission.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
// Author: niwasaki@google.com (Naoki Iwasaki)
// Based on original Protocol Buffers design by
// Sanjay Ghemawat, Jeff Dean, and others.
#ifndef GOOGLE_PROTOBUF_COMPILER_JAVA_LAZY_MESSAGE_FIELD_H__
#define GOOGLE_PROTOBUF_COMPILER_JAVA_LAZY_MESSAGE_FIELD_H__
#include <google/protobuf/compiler/java/java_field.h>
#include <google/protobuf/compiler/java/java_message_field.h>
namespace
google
{
namespace
protobuf
{
namespace
compiler
{
namespace
java
{
class
Context
;
// context.h
}
}
}
namespace
protobuf
{
namespace
compiler
{
namespace
java
{
class
ImmutableLazyMessageFieldGenerator
:
public
ImmutableMessageFieldGenerator
{
public
:
explicit
ImmutableLazyMessageFieldGenerator
(
const
FieldDescriptor
*
descriptor
,
int
messageBitIndex
,
int
builderBitIndex
,
Context
*
context
);
~
ImmutableLazyMessageFieldGenerator
();
// overroads ImmutableMessageFieldGenerator ---------------------------------
void
GenerateMembers
(
io
::
Printer
*
printer
)
const
;
void
GenerateBuilderMembers
(
io
::
Printer
*
printer
)
const
;
void
GenerateInitializationCode
(
io
::
Printer
*
printer
)
const
;
void
GenerateBuilderClearCode
(
io
::
Printer
*
printer
)
const
;
void
GenerateMergingCode
(
io
::
Printer
*
printer
)
const
;
void
GenerateBuildingCode
(
io
::
Printer
*
printer
)
const
;
void
GenerateParsingCode
(
io
::
Printer
*
printer
)
const
;
void
GenerateSerializationCode
(
io
::
Printer
*
printer
)
const
;
void
GenerateSerializedSizeCode
(
io
::
Printer
*
printer
)
const
;
private
:
GOOGLE_DISALLOW_EVIL_CONSTRUCTORS
(
ImmutableLazyMessageFieldGenerator
);
};
class
ImmutableLazyMessageOneofFieldGenerator
:
public
ImmutableLazyMessageFieldGenerator
{
public
:
ImmutableLazyMessageOneofFieldGenerator
(
const
FieldDescriptor
*
descriptor
,
int
messageBitIndex
,
int
builderBitIndex
,
Context
*
context
);
~
ImmutableLazyMessageOneofFieldGenerator
();
void
GenerateMembers
(
io
::
Printer
*
printer
)
const
;
void
GenerateBuilderMembers
(
io
::
Printer
*
printer
)
const
;
void
GenerateMergingCode
(
io
::
Printer
*
printer
)
const
;
void
GenerateBuildingCode
(
io
::
Printer
*
printer
)
const
;
void
GenerateParsingCode
(
io
::
Printer
*
printer
)
const
;
void
GenerateSerializationCode
(
io
::
Printer
*
printer
)
const
;
void
GenerateSerializedSizeCode
(
io
::
Printer
*
printer
)
const
;
private
:
GOOGLE_DISALLOW_EVIL_CONSTRUCTORS
(
ImmutableLazyMessageOneofFieldGenerator
);
};
class
RepeatedImmutableLazyMessageFieldGenerator
:
public
RepeatedImmutableMessageFieldGenerator
{
public
:
explicit
RepeatedImmutableLazyMessageFieldGenerator
(
const
FieldDescriptor
*
descriptor
,
int
messageBitIndex
,
int
builderBitIndex
,
Context
*
context
);
~
RepeatedImmutableLazyMessageFieldGenerator
();
// overroads RepeatedImmutableMessageFieldGenerator -------------------------
void
GenerateMembers
(
io
::
Printer
*
printer
)
const
;
void
GenerateBuilderMembers
(
io
::
Printer
*
printer
)
const
;
void
GenerateParsingCode
(
io
::
Printer
*
printer
)
const
;
void
GenerateSerializationCode
(
io
::
Printer
*
printer
)
const
;
void
GenerateSerializedSizeCode
(
io
::
Printer
*
printer
)
const
;
private
:
GOOGLE_DISALLOW_EVIL_CONSTRUCTORS
(
RepeatedImmutableLazyMessageFieldGenerator
);
};
}
// namespace java
}
// namespace compiler
}
// namespace protobuf
}
// namespace google
#endif // GOOGLE_PROTOBUF_COMPILER_JAVA_LAZY_MESSAGE_FIELD_H__
src/google/protobuf/compiler/java/java_lazy_message_field_lite.cc
deleted
100644 → 0
View file @
88795f64
// Protocol Buffers - Google's data interchange format
// Copyright 2008 Google Inc. All rights reserved.
// 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
// met:
//
// * Redistributions of source code must retain the above copyright
// notice, this list of conditions and the following disclaimer.
// * Redistributions in binary form must reproduce the above
// copyright notice, this list of conditions and the following disclaimer
// in the documentation and/or other materials provided with the
// distribution.
// * Neither the name of Google Inc. nor the names of its
// contributors may be used to endorse or promote products derived from
// this software without specific prior written permission.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
// Author: niwasaki@google.com (Naoki Iwasaki)
// Based on original Protocol Buffers design by
// Sanjay Ghemawat, Jeff Dean, and others.
#include <google/protobuf/compiler/java/java_context.h>
#include <google/protobuf/compiler/java/java_lazy_message_field_lite.h>
#include <google/protobuf/compiler/java/java_doc_comment.h>
#include <google/protobuf/compiler/java/java_helpers.h>
#include <google/protobuf/io/printer.h>
namespace
google
{
namespace
protobuf
{
namespace
compiler
{
namespace
java
{
ImmutableLazyMessageFieldLiteGenerator
::
ImmutableLazyMessageFieldLiteGenerator
(
const
FieldDescriptor
*
descriptor
,
int
messageBitIndex
,
int
builderBitIndex
,
Context
*
context
)
:
ImmutableMessageFieldLiteGenerator
(
descriptor
,
messageBitIndex
,
builderBitIndex
,
context
)
{
}
ImmutableLazyMessageFieldLiteGenerator
::
~
ImmutableLazyMessageFieldLiteGenerator
()
{}
void
ImmutableLazyMessageFieldLiteGenerator
::
GenerateMembers
(
io
::
Printer
*
printer
)
const
{
printer
->
Print
(
variables_
,
"private com.google.protobuf.LazyFieldLite $name$_;"
);
PrintExtraFieldInfo
(
variables_
,
printer
);
WriteFieldDocComment
(
printer
,
descriptor_
);
if
(
SupportFieldPresence
(
descriptor_
->
file
()))
{
printer
->
Print
(
variables_
,
"$deprecation$public boolean has$capitalized_name$() {
\n
"
" return $get_has_field_bit_message$;
\n
"
"}
\n
"
);
}
else
{
printer
->
Print
(
variables_
,
"$deprecation$public boolean has$capitalized_name$() {
\n
"
" return $name$_ != null;
\n
"
"}
\n
"
);
}
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"$deprecation$public $type$ get$capitalized_name$() {
\n
"
" if ($name$_ == null) {
\n
"
" return $type$.getDefaultInstance();
\n
"
" }
\n
"
" return ($type$) $name$_.getValue($type$.getDefaultInstance());
\n
"
"}
\n
"
);
// Field.Builder setField(Field value)
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"private void set$capitalized_name$($type$ value) {
\n
"
" if (value == null) {
\n
"
" throw new NullPointerException();
\n
"
" }
\n
"
" if ($name$_ == null) {
\n
"
" $name$_ = new com.google.protobuf.LazyFieldLite();
\n
"
" }
\n
"
" $name$_.setValue(value);
\n
"
" $set_has_field_bit_message$
\n
"
"}
\n
"
);
// Field.Builder setField(Field.Builder builderForValue)
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"private void set$capitalized_name$(
\n
"
" $type$.Builder builderForValue) {
\n
"
" if ($name$_ == null) {
\n
"
" $name$_ = new com.google.protobuf.LazyFieldLite();
\n
"
" }
\n
"
" $name$_.setValue(builderForValue.build());
\n
"
" $set_has_field_bit_message$
\n
"
"}
\n
"
);
// Field.Builder mergeField(Field value)
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"private void merge$capitalized_name$($type$ value) {
\n
"
" if (has$capitalized_name$() &&
\n
"
" !$name$_.containsDefaultInstance()) {
\n
"
" $name$_.setValue(
\n
"
" $type$.newBuilder(
\n
"
" get$capitalized_name$()).mergeFrom(value).buildPartial());
\n
"
" } else {
\n
"
" if ($name$_ == null) {
\n
"
" $name$_ = new com.google.protobuf.LazyFieldLite();
\n
"
" }
\n
"
" $name$_.setValue(value);
\n
"
" $set_has_field_bit_message$
\n
"
" }
\n
"
"}
\n
"
);
// Field.Builder clearField()
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"private void clear$capitalized_name$() {
\n
"
" $name$_ = null;
\n
"
" $clear_has_field_bit_message$;
\n
"
"}
\n
"
);
}
void
ImmutableLazyMessageFieldLiteGenerator
::
GenerateBuilderMembers
(
io
::
Printer
*
printer
)
const
{
// The comments above the methods below are based on a hypothetical
// field of type "Field" called "Field".
// boolean hasField()
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"$deprecation$public boolean has$capitalized_name$() {
\n
"
" return instance.has$capitalized_name$();
\n
"
"}
\n
"
);
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"$deprecation$public $type$ get$capitalized_name$() {
\n
"
" return instance.get$capitalized_name$();
\n
"
"}
\n
"
);
// Field.Builder setField(Field value)
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"$deprecation$public Builder set$capitalized_name$($type$ value) {
\n
"
" copyOnWrite();
\n
"
" instance.set$capitalized_name$(value);
\n
"
" return this;
\n
"
"}
\n
"
);
// Field.Builder setField(Field.Builder builderForValue)
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"$deprecation$public Builder set$capitalized_name$(
\n
"
" $type$.Builder builderForValue) {
\n
"
" copyOnWrite();
\n
"
" instance.set$capitalized_name$(builderForValue);
\n
"
" return this;
\n
"
"}
\n
"
);
// Field.Builder mergeField(Field value)
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"$deprecation$public Builder merge$capitalized_name$($type$ value) {
\n
"
" copyOnWrite();
\n
"
" instance.merge$capitalized_name$(value);
\n
"
" return this;
\n
"
"}
\n
"
);
// Field.Builder clearField()
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"$deprecation$public Builder clear$capitalized_name$() {
\n
"
" copyOnWrite();
\n
"
" instance.clear$capitalized_name$();
\n
"
" return this;
\n
"
"}
\n
"
);
}
void
ImmutableLazyMessageFieldLiteGenerator
::
GenerateInitializationCode
(
io
::
Printer
*
printer
)
const
{}
void
ImmutableLazyMessageFieldLiteGenerator
::
GenerateVisitCode
(
io
::
Printer
*
printer
)
const
{
printer
->
Print
(
variables_
,
"$name$_ = visitor.visitLazyMessage($name$_, other.$name$_);
\n
"
);
}
void
ImmutableLazyMessageFieldLiteGenerator
::
GenerateParsingCode
(
io
::
Printer
*
printer
)
const
{
printer
->
Print
(
variables_
,
"if ($name$_ == null) {
\n
"
" $name$_ = new com.google.protobuf.LazyFieldLite();
\n
"
"}
\n
"
"$name$_.mergeFrom(input, extensionRegistry);
\n
"
);
printer
->
Print
(
variables_
,
"$set_has_field_bit_message$
\n
"
);
}
void
ImmutableLazyMessageFieldLiteGenerator
::
GenerateSerializationCode
(
io
::
Printer
*
printer
)
const
{
// Do not de-serialize lazy fields.
printer
->
Print
(
variables_
,
"if (has$capitalized_name$()) {
\n
"
" output.writeBytes($number$, $name$_.toByteString());
\n
"
"}
\n
"
);
}
void
ImmutableLazyMessageFieldLiteGenerator
::
GenerateSerializedSizeCode
(
io
::
Printer
*
printer
)
const
{
printer
->
Print
(
variables_
,
"if (has$capitalized_name$()) {
\n
"
" size += com.google.protobuf.CodedOutputStream
\n
"
" .computeLazyFieldSize($number$, $name$_);
\n
"
"}
\n
"
);
}
// ===================================================================
ImmutableLazyMessageOneofFieldLiteGenerator
::
ImmutableLazyMessageOneofFieldLiteGenerator
(
const
FieldDescriptor
*
descriptor
,
int
messageBitIndex
,
int
builderBitIndex
,
Context
*
context
)
:
ImmutableLazyMessageFieldLiteGenerator
(
descriptor
,
messageBitIndex
,
builderBitIndex
,
context
)
{
const
OneofGeneratorInfo
*
info
=
context
->
GetOneofGeneratorInfo
(
descriptor
->
containing_oneof
());
SetCommonOneofVariables
(
descriptor
,
info
,
&
variables_
);
variables_
[
"lazy_type"
]
=
"com.google.protobuf.LazyFieldLite"
;
}
ImmutableLazyMessageOneofFieldLiteGenerator
::
~
ImmutableLazyMessageOneofFieldLiteGenerator
()
{}
void
ImmutableLazyMessageOneofFieldLiteGenerator
::
GenerateMembers
(
io
::
Printer
*
printer
)
const
{
PrintExtraFieldInfo
(
variables_
,
printer
);
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"$deprecation$public boolean has$capitalized_name$() {
\n
"
" return $has_oneof_case_message$;
\n
"
"}
\n
"
);
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"$deprecation$public $type$ get$capitalized_name$() {
\n
"
" if ($has_oneof_case_message$) {
\n
"
" return ($type$) (($lazy_type$) $oneof_name$_).getValue(
\n
"
" $type$.getDefaultInstance());
\n
"
" }
\n
"
" return $type$.getDefaultInstance();
\n
"
"}
\n
"
);
// Field.Builder setField(Field value)
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"private void set$capitalized_name$($type$ value) {
\n
"
" if (value == null) {
\n
"
" throw new NullPointerException();
\n
"
" }
\n
"
" if (!($has_oneof_case_message$)) {
\n
"
" $oneof_name$_ = new $lazy_type$();
\n
"
" $set_oneof_case_message$;
\n
"
" }
\n
"
" (($lazy_type$) $oneof_name$_).setValue(value);
\n
"
"}
\n
"
);
// Field.Builder setField(Field.Builder builderForValue)
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"private void set$capitalized_name$(
\n
"
" $type$.Builder builderForValue) {
\n
"
" if (!($has_oneof_case_message$)) {
\n
"
" $oneof_name$_ = new $lazy_type$();
\n
"
" $set_oneof_case_message$;
\n
"
" }
\n
"
" (($lazy_type$) $oneof_name$_).setValue(builderForValue.build());
\n
"
"}
\n
"
);
// Field.Builder mergeField(Field value)
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"private void merge$capitalized_name$($type$ value) {
\n
"
" if ($has_oneof_case_message$ &&
\n
"
" !(($lazy_type$) $oneof_name$_).containsDefaultInstance()) {
\n
"
" (($lazy_type$) $oneof_name$_).setValue(
\n
"
" $type$.newBuilder(
\n
"
" get$capitalized_name$()).mergeFrom(value).buildPartial());
\n
"
" } else {
\n
"
" if (!($has_oneof_case_message$)) {
\n
"
" $oneof_name$_ = new $lazy_type$();
\n
"
" $set_oneof_case_message$;
\n
"
" }
\n
"
" (($lazy_type$) $oneof_name$_).setValue(value);
\n
"
" }
\n
"
"}
\n
"
);
// Field.Builder clearField()
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"private void clear$capitalized_name$() {
\n
"
" if ($has_oneof_case_message$) {
\n
"
" $clear_oneof_case_message$;
\n
"
" $oneof_name$_ = null;
\n
"
" }
\n
"
"}
\n
"
);
}
void
ImmutableLazyMessageOneofFieldLiteGenerator
::
GenerateBuilderMembers
(
io
::
Printer
*
printer
)
const
{
// boolean hasField()
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"$deprecation$public boolean has$capitalized_name$() {
\n
"
" return instance.has$capitalized_name$();
\n
"
"}
\n
"
);
printer
->
Print
(
variables_
,
"$deprecation$public $type$ get$capitalized_name$() {
\n
"
" return instance.get$capitalized_name$();
\n
"
"}
\n
"
);
// Field.Builder setField(Field value)
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"$deprecation$public Builder set$capitalized_name$($type$ value) {
\n
"
" copyOnWrite();
\n
"
" instance.set$capitalized_name$(value);
\n
"
" return this;
\n
"
"}
\n
"
);
// Field.Builder setField(Field.Builder builderForValue)
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"$deprecation$public Builder set$capitalized_name$(
\n
"
" $type$.Builder builderForValue) {
\n
"
" copyOnWrite();
\n
"
" instance.set$capitalized_name$(builderForValue);
\n
"
" return this;
\n
"
"}
\n
"
);
// Field.Builder mergeField(Field value)
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"$deprecation$public Builder merge$capitalized_name$($type$ value) {
\n
"
" copyOnWrite();
\n
"
" instance.merge$capitalized_name$(value);
\n
"
" return this;
\n
"
"}
\n
"
);
// Field.Builder clearField()
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"$deprecation$public Builder clear$capitalized_name$() {
\n
"
" copyOnWrite();
\n
"
" instance.clear$capitalized_name$();
\n
"
" return this;
\n
"
"}
\n
"
);
}
void
ImmutableLazyMessageOneofFieldLiteGenerator
::
GenerateVisitCode
(
io
::
Printer
*
printer
)
const
{
printer
->
Print
(
variables_
,
"$oneof_name$_ = visitor.visitOneofLazyMessage(
\n
"
" $has_oneof_case_message$,
\n
"
" ($lazy_type$) $oneof_name$_,
\n
"
" ($lazy_type$) other.$oneof_name$_);
\n
"
);
}
void
ImmutableLazyMessageOneofFieldLiteGenerator
::
GenerateParsingCode
(
io
::
Printer
*
printer
)
const
{
printer
->
Print
(
variables_
,
"if (!($has_oneof_case_message$)) {
\n
"
" $oneof_name$_ = new $lazy_type$();
\n
"
"}
\n
"
"(($lazy_type$) $oneof_name$_).mergeFrom(input, extensionRegistry);
\n
"
"$set_oneof_case_message$;
\n
"
);
}
void
ImmutableLazyMessageOneofFieldLiteGenerator
::
GenerateSerializationCode
(
io
::
Printer
*
printer
)
const
{
// Do not de-serialize lazy fields.
printer
->
Print
(
variables_
,
"if ($has_oneof_case_message$) {
\n
"
" output.writeBytes(
\n
"
" $number$, (($lazy_type$) $oneof_name$_).toByteString());
\n
"
"}
\n
"
);
}
void
ImmutableLazyMessageOneofFieldLiteGenerator
::
GenerateSerializedSizeCode
(
io
::
Printer
*
printer
)
const
{
printer
->
Print
(
variables_
,
"if ($has_oneof_case_message$) {
\n
"
" size += com.google.protobuf.CodedOutputStream
\n
"
" .computeLazyFieldSize($number$, ($lazy_type$) $oneof_name$_);
\n
"
"}
\n
"
);
}
// ===================================================================
RepeatedImmutableLazyMessageFieldLiteGenerator
::
RepeatedImmutableLazyMessageFieldLiteGenerator
(
const
FieldDescriptor
*
descriptor
,
int
messageBitIndex
,
int
builderBitIndex
,
Context
*
context
)
:
RepeatedImmutableMessageFieldLiteGenerator
(
descriptor
,
messageBitIndex
,
builderBitIndex
,
context
)
{
}
RepeatedImmutableLazyMessageFieldLiteGenerator
::
~
RepeatedImmutableLazyMessageFieldLiteGenerator
()
{}
void
RepeatedImmutableLazyMessageFieldLiteGenerator
::
GenerateMembers
(
io
::
Printer
*
printer
)
const
{
printer
->
Print
(
variables_
,
"private com.google.protobuf.Internal.ProtobufList<
\n
"
" com.google.protobuf.LazyFieldLite> $name$_;
\n
"
);
PrintExtraFieldInfo
(
variables_
,
printer
);
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"$deprecation$public java.util.List<$type$>
\n
"
" get$capitalized_name$List() {
\n
"
" java.util.List<$type$> list =
\n
"
" new java.util.ArrayList<$type$>($name$_.size());
\n
"
" for (com.google.protobuf.LazyFieldLite lf : $name$_) {
\n
"
" list.add(($type$) lf.getValue($type$.getDefaultInstance()));
\n
"
" }
\n
"
" return java.util.Collections.unmodifiableList(list);
\n
"
"}
\n
"
);
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"$deprecation$public java.util.List<? extends $type$OrBuilder>
\n
"
" get$capitalized_name$OrBuilderList() {
\n
"
" return get$capitalized_name$List();
\n
"
"}
\n
"
);
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"$deprecation$public int get$capitalized_name$Count() {
\n
"
" return $name$_.size();
\n
"
"}
\n
"
);
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"$deprecation$public $type$ get$capitalized_name$(int index) {
\n
"
" return ($type$)
\n
"
" $name$_.get(index).getValue($type$.getDefaultInstance());
\n
"
"}
\n
"
);
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"$deprecation$public $type$OrBuilder get$capitalized_name$OrBuilder(
\n
"
" int index) {
\n
"
" return ($type$OrBuilder)
\n
"
" $name$_.get(index).getValue($type$.getDefaultInstance());
\n
"
"}
\n
"
);
printer
->
Print
(
variables_
,
"private void ensure$capitalized_name$IsMutable() {
\n
"
" if (!$is_mutable$) {
\n
"
" $name$_ =
\n
"
" com.google.protobuf.GeneratedMessageLite.mutableCopy($name$_);
\n
"
" }
\n
"
"}
\n
"
"
\n
"
);
// Builder setRepeatedField(int index, Field value)
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"private void set$capitalized_name$(
\n
"
" int index, $type$ value) {
\n
"
" if (value == null) {
\n
"
" throw new NullPointerException();
\n
"
" }
\n
"
" ensure$capitalized_name$IsMutable();
\n
"
" $name$_.set(
\n
"
" index, com.google.protobuf.LazyFieldLite.fromValue(value));
\n
"
"}
\n
"
);
// Builder setRepeatedField(int index, Field.Builder builderForValue)
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"private void set$capitalized_name$(
\n
"
" int index, $type$.Builder builderForValue) {
\n
"
" ensure$capitalized_name$IsMutable();
\n
"
" $name$_.set(index, com.google.protobuf.LazyFieldLite.fromValue(
\n
"
" builderForValue.build()));
\n
"
"}
\n
"
);
// Builder addRepeatedField(Field value)
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"private void add$capitalized_name$($type$ value) {
\n
"
" if (value == null) {
\n
"
" throw new NullPointerException();
\n
"
" }
\n
"
" ensure$capitalized_name$IsMutable();
\n
"
" $name$_.add(com.google.protobuf.LazyFieldLite.fromValue(value));
\n
"
"}
\n
"
);
// Builder addRepeatedField(int index, Field value)
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"private void add$capitalized_name$(
\n
"
" int index, $type$ value) {
\n
"
" if (value == null) {
\n
"
" throw new NullPointerException();
\n
"
" }
\n
"
" ensure$capitalized_name$IsMutable();
\n
"
" $name$_.add(
\n
"
" index, com.google.protobuf.LazyFieldLite.fromValue(value));
\n
"
"}
\n
"
);
// Builder addRepeatedField(Field.Builder builderForValue)
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"private void add$capitalized_name$(
\n
"
" $type$.Builder builderForValue) {
\n
"
" ensure$capitalized_name$IsMutable();
\n
"
" $name$_.add(com.google.protobuf.LazyFieldLite.fromValue(
\n
"
" builderForValue.build()));
\n
"
"}
\n
"
);
// Builder addRepeatedField(int index, Field.Builder builderForValue)
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"private void add$capitalized_name$(
\n
"
" int index, $type$.Builder builderForValue) {
\n
"
" ensure$capitalized_name$IsMutable();
\n
"
" $name$_.add(index, com.google.protobuf.LazyFieldLite.fromValue(
\n
"
" builderForValue.build()));
\n
"
"}
\n
"
);
// Builder addAllRepeatedField(Iterable<Field> values)
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"private void addAll$capitalized_name$(
\n
"
" java.lang.Iterable<? extends $type$> values) {
\n
"
" ensure$capitalized_name$IsMutable();
\n
"
" for (com.google.protobuf.MessageLite v : values) {
\n
"
" $name$_.add(com.google.protobuf.LazyFieldLite.fromValue(v));
\n
"
" }
\n
"
"}
\n
"
);
// Builder clearAllRepeatedField()
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"private void clear$capitalized_name$() {
\n
"
" $name$_ = emptyProtobufList();
\n
"
"}
\n
"
);
// Builder removeRepeatedField(int index)
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"private void remove$capitalized_name$(int index) {
\n
"
" ensure$capitalized_name$IsMutable();
\n
"
" $name$_.remove(index);
\n
"
"}
\n
"
);
}
void
RepeatedImmutableLazyMessageFieldLiteGenerator
::
GenerateBuilderMembers
(
io
::
Printer
*
printer
)
const
{
// List<Field> getRepeatedFieldList()
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"$deprecation$public java.util.List<$type$> get$capitalized_name$List() {
\n
"
" return java.util.Collections.unmodifiableList(
\n
"
" instance.get$capitalized_name$List());
\n
"
"}
\n
"
);
// int getRepeatedFieldCount()
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"$deprecation$public int get$capitalized_name$Count() {
\n
"
" return instance.get$capitalized_name$Count();
\n
"
"}
\n
"
);
// Field getRepeatedField(int index)
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"$deprecation$public $type$ get$capitalized_name$(int index) {
\n
"
" return instance.get$capitalized_name$(index);
\n
"
"}
\n
"
);
// Builder setRepeatedField(int index, Field value)
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"$deprecation$public Builder set$capitalized_name$(
\n
"
" int index, $type$ value) {
\n
"
" copyOnWrite();
\n
"
" instance.set$capitalized_name$(index, value);
\n
"
" return this;
\n
"
"}
\n
"
);
// Builder setRepeatedField(int index, Field.Builder builderForValue)
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"$deprecation$public Builder set$capitalized_name$(
\n
"
" int index, $type$.Builder builderForValue) {
\n
"
" copyOnWrite();
\n
"
" instance.set$capitalized_name$(index, builderForValue);
\n
"
" return this;
\n
"
"}
\n
"
);
// Builder addRepeatedField(Field value)
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"$deprecation$public Builder add$capitalized_name$($type$ value) {
\n
"
" copyOnWrite();
\n
"
" instance.add$capitalized_name$(value);
\n
"
" return this;
\n
"
"}
\n
"
);
// Builder addRepeatedField(int index, Field value)
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"$deprecation$public Builder add$capitalized_name$(
\n
"
" int index, $type$ value) {
\n
"
" copyOnWrite();
\n
"
" instance.add$capitalized_name$(index, value);
\n
"
" return this;
\n
"
"}
\n
"
);
// Builder addRepeatedField(Field.Builder builderForValue)
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"$deprecation$public Builder add$capitalized_name$(
\n
"
" $type$.Builder builderForValue) {
\n
"
" copyOnWrite();
\n
"
" instance.add$capitalized_name$(builderForValue);
\n
"
" return this;
\n
"
"}
\n
"
);
// Builder addRepeatedField(int index, Field.Builder builderForValue)
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"$deprecation$public Builder add$capitalized_name$(
\n
"
" int index, $type$.Builder builderForValue) {
\n
"
" copyOnWrite();
\n
"
" instance.add$capitalized_name$(index, builderForValue);
\n
"
" return this;
\n
"
"}
\n
"
);
// Builder addAllRepeatedField(Iterable<Field> values)
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"$deprecation$public Builder addAll$capitalized_name$(
\n
"
" java.lang.Iterable<? extends $type$> values) {
\n
"
" copyOnWrite();
\n
"
" instance.addAll$capitalized_name$(values);
\n
"
" return this;
\n
"
"}
\n
"
);
// Builder clearAllRepeatedField()
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"$deprecation$public Builder clear$capitalized_name$() {
\n
"
" copyOnWrite();
\n
"
" instance.clear$capitalized_name$();
\n
"
" return this;
\n
"
"}
\n
"
);
// Builder removeRepeatedField(int index)
WriteFieldDocComment
(
printer
,
descriptor_
);
printer
->
Print
(
variables_
,
"$deprecation$public Builder remove$capitalized_name$(int index) {
\n
"
" copyOnWrite();
\n
"
" instance.remove$capitalized_name$(index);
\n
"
" return this;
\n
"
"}
\n
"
);
}
void
RepeatedImmutableLazyMessageFieldLiteGenerator
::
GenerateParsingCode
(
io
::
Printer
*
printer
)
const
{
printer
->
Print
(
variables_
,
"if (!$is_mutable$) {
\n
"
" $name$_ =
\n
"
" com.google.protobuf.GeneratedMessageLite.mutableCopy($name$_);
\n
"
"}
\n
"
"$name$_.add(new com.google.protobuf.LazyFieldLite(
\n
"
" extensionRegistry, input.readBytes()));
\n
"
);
}
void
RepeatedImmutableLazyMessageFieldLiteGenerator
::
GenerateSerializationCode
(
io
::
Printer
*
printer
)
const
{
printer
->
Print
(
variables_
,
"for (int i = 0; i < $name$_.size(); i++) {
\n
"
" output.writeBytes($number$, $name$_.get(i).toByteString());
\n
"
"}
\n
"
);
}
void
RepeatedImmutableLazyMessageFieldLiteGenerator
::
GenerateSerializedSizeCode
(
io
::
Printer
*
printer
)
const
{
printer
->
Print
(
variables_
,
"for (int i = 0; i < $name$_.size(); i++) {
\n
"
" size += com.google.protobuf.CodedOutputStream
\n
"
" .computeLazyFieldSize($number$, $name$_.get(i));
\n
"
"}
\n
"
);
}
}
// namespace java
}
// namespace compiler
}
// namespace protobuf
}
// namespace google
src/google/protobuf/compiler/java/java_lazy_message_field_lite.h
deleted
100644 → 0
View file @
88795f64
// Protocol Buffers - Google's data interchange format
// Copyright 2008 Google Inc. All rights reserved.
// 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
// met:
//
// * Redistributions of source code must retain the above copyright
// notice, this list of conditions and the following disclaimer.
// * Redistributions in binary form must reproduce the above
// copyright notice, this list of conditions and the following disclaimer
// in the documentation and/or other materials provided with the
// distribution.
// * Neither the name of Google Inc. nor the names of its
// contributors may be used to endorse or promote products derived from
// this software without specific prior written permission.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
// Author: niwasaki@google.com (Naoki Iwasaki)
// Based on original Protocol Buffers design by
// Sanjay Ghemawat, Jeff Dean, and others.
#ifndef GOOGLE_PROTOBUF_COMPILER_JAVA_LAZY_MESSAGE_FIELD_LITE_H__
#define GOOGLE_PROTOBUF_COMPILER_JAVA_LAZY_MESSAGE_FIELD_LITE_H__
#include <google/protobuf/compiler/java/java_field.h>
#include <google/protobuf/compiler/java/java_message_field_lite.h>
namespace
google
{
namespace
protobuf
{
namespace
compiler
{
namespace
java
{
class
Context
;
// context.h
}
}
}
namespace
protobuf
{
namespace
compiler
{
namespace
java
{
class
ImmutableLazyMessageFieldLiteGenerator
:
public
ImmutableMessageFieldLiteGenerator
{
public
:
explicit
ImmutableLazyMessageFieldLiteGenerator
(
const
FieldDescriptor
*
descriptor
,
int
messageBitIndex
,
int
builderBitIndex
,
Context
*
context
);
~
ImmutableLazyMessageFieldLiteGenerator
();
// overroads ImmutableMessageFieldLiteGenerator ------------------------------
void
GenerateMembers
(
io
::
Printer
*
printer
)
const
;
void
GenerateBuilderMembers
(
io
::
Printer
*
printer
)
const
;
void
GenerateInitializationCode
(
io
::
Printer
*
printer
)
const
;
void
GenerateVisitCode
(
io
::
Printer
*
printer
)
const
;
void
GenerateParsingCode
(
io
::
Printer
*
printer
)
const
;
void
GenerateSerializationCode
(
io
::
Printer
*
printer
)
const
;
void
GenerateSerializedSizeCode
(
io
::
Printer
*
printer
)
const
;
private
:
GOOGLE_DISALLOW_EVIL_CONSTRUCTORS
(
ImmutableLazyMessageFieldLiteGenerator
);
};
class
ImmutableLazyMessageOneofFieldLiteGenerator
:
public
ImmutableLazyMessageFieldLiteGenerator
{
public
:
ImmutableLazyMessageOneofFieldLiteGenerator
(
const
FieldDescriptor
*
descriptor
,
int
messageBitIndex
,
int
builderBitIndex
,
Context
*
context
);
~
ImmutableLazyMessageOneofFieldLiteGenerator
();
void
GenerateMembers
(
io
::
Printer
*
printer
)
const
;
void
GenerateBuilderMembers
(
io
::
Printer
*
printer
)
const
;
void
GenerateVisitCode
(
io
::
Printer
*
printer
)
const
;
void
GenerateParsingCode
(
io
::
Printer
*
printer
)
const
;
void
GenerateSerializationCode
(
io
::
Printer
*
printer
)
const
;
void
GenerateSerializedSizeCode
(
io
::
Printer
*
printer
)
const
;
private
:
GOOGLE_DISALLOW_EVIL_CONSTRUCTORS
(
ImmutableLazyMessageOneofFieldLiteGenerator
);
};
class
RepeatedImmutableLazyMessageFieldLiteGenerator
:
public
RepeatedImmutableMessageFieldLiteGenerator
{
public
:
explicit
RepeatedImmutableLazyMessageFieldLiteGenerator
(
const
FieldDescriptor
*
descriptor
,
int
messageBitIndex
,
int
builderBitIndex
,
Context
*
context
);
~
RepeatedImmutableLazyMessageFieldLiteGenerator
();
// overroads RepeatedImmutableMessageFieldLiteGenerator ----------------------
void
GenerateMembers
(
io
::
Printer
*
printer
)
const
;
void
GenerateBuilderMembers
(
io
::
Printer
*
printer
)
const
;
void
GenerateParsingCode
(
io
::
Printer
*
printer
)
const
;
void
GenerateSerializationCode
(
io
::
Printer
*
printer
)
const
;
void
GenerateSerializedSizeCode
(
io
::
Printer
*
printer
)
const
;
private
:
GOOGLE_DISALLOW_EVIL_CONSTRUCTORS
(
RepeatedImmutableLazyMessageFieldLiteGenerator
);
};
}
// namespace java
}
// namespace compiler
}
// namespace protobuf
}
// namespace google
#endif // GOOGLE_PROTOBUF_COMPILER_JAVA_LAZY_MESSAGE_FIELD_LITE_H__
src/google/protobuf/compiler/js/well_known_types/any.js
deleted
100644 → 0
View file @
88795f64
// Protocol Buffers - Google's data interchange format
// Copyright 2008 Google Inc. All rights reserved.
// 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
// met:
//
// * Redistributions of source code must retain the above copyright
// notice, this list of conditions and the following disclaimer.
// * Redistributions in binary form must reproduce the above
// copyright notice, this list of conditions and the following disclaimer
// in the documentation and/or other materials provided with the
// distribution.
// * Neither the name of Google Inc. nor the names of its
// contributors may be used to endorse or promote products derived from
// this software without specific prior written permission.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
/* This code will be inserted into generated code for
* google/protobuf/any.proto. */
/**
* Returns the type name contained in this instance, if any.
* @return {string|undefined}
*/
proto
.
google
.
protobuf
.
Any
.
prototype
.
getTypeName
=
function
()
{
return
this
.
getTypeUrl
().
split
(
'/'
).
pop
();
};
/**
* Packs the given message instance into this Any.
* @param {!Uint8Array} serialized The serialized data to pack.
* @param {string} name The type name of this message object.
* @param {string=} opt_typeUrlPrefix the type URL prefix.
*/
proto
.
google
.
protobuf
.
Any
.
prototype
.
pack
=
function
(
serialized
,
name
,
opt_typeUrlPrefix
)
{
if
(
!
opt_typeUrlPrefix
)
{
opt_typeUrlPrefix
=
'type.googleapis.com/'
;
}
if
(
opt_typeUrlPrefix
.
substr
(
-
1
)
!=
'/'
)
{
this
.
setTypeUrl
(
opt_typeUrlPrefix
+
'/'
+
name
);
}
else
{
this
.
setTypeUrl
(
opt_typeUrlPrefix
+
name
);
}
this
.
setValue
(
serialized
);
};
/**
* @template T
* Unpacks this Any into the given message object.
* @param {function(Uint8Array):T} deserialize Function that will deserialize
* the binary data properly.
* @param {string} name The expected type name of this message object.
* @return {?T} If the name matched the expected name, returns the deserialized
* object, otherwise returns null.
*/
proto
.
google
.
protobuf
.
Any
.
prototype
.
unpack
=
function
(
deserialize
,
name
)
{
if
(
this
.
getTypeName
()
==
name
)
{
return
deserialize
(
this
.
getValue_asU8
());
}
else
{
return
null
;
}
};
src/google/protobuf/compiler/js/well_known_types/struct.js
deleted
100644 → 0
View file @
88795f64
// Protocol Buffers - Google's data interchange format
// Copyright 2008 Google Inc. All rights reserved.
// 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
// met:
//
// * Redistributions of source code must retain the above copyright
// notice, this list of conditions and the following disclaimer.
// * Redistributions in binary form must reproduce the above
// copyright notice, this list of conditions and the following disclaimer
// in the documentation and/or other materials provided with the
// distribution.
// * Neither the name of Google Inc. nor the names of its
// contributors may be used to endorse or promote products derived from
// this software without specific prior written permission.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
/* This code will be inserted into generated code for
* google/protobuf/struct.proto. */
/**
* Typedef representing plain JavaScript values that can go into a
* Struct.
* @typedef {null|number|string|boolean|Array|Object}
*/
proto
.
google
.
protobuf
.
JavaScriptValue
;
/**
* Converts this Value object to a plain JavaScript value.
* @return {?proto.google.protobuf.JavaScriptValue} a plain JavaScript
* value representing this Struct.
*/
proto
.
google
.
protobuf
.
Value
.
prototype
.
toJavaScript
=
function
()
{
var
kindCase
=
proto
.
google
.
protobuf
.
Value
.
KindCase
;
switch
(
this
.
getKindCase
())
{
case
kindCase
.
NULL_VALUE
:
return
null
;
case
kindCase
.
NUMBER_VALUE
:
return
this
.
getNumberValue
();
case
kindCase
.
STRING_VALUE
:
return
this
.
getStringValue
();
case
kindCase
.
BOOL_VALUE
:
return
this
.
getBoolValue
();
case
kindCase
.
STRUCT_VALUE
:
return
this
.
getStructValue
().
toJavaScript
();
case
kindCase
.
LIST_VALUE
:
return
this
.
getListValue
().
toJavaScript
();
default
:
throw
new
Error
(
'Unexpected struct type'
);
}
};
/**
* Converts this JavaScript value to a new Value proto.
* @param {!proto.google.protobuf.JavaScriptValue} value The value to
* convert.
* @return {!proto.google.protobuf.Value} The newly constructed value.
*/
proto
.
google
.
protobuf
.
Value
.
fromJavaScript
=
function
(
value
)
{
var
ret
=
new
proto
.
google
.
protobuf
.
Value
();
switch
(
goog
.
typeOf
(
value
))
{
case
'string'
:
ret
.
setStringValue
(
/** @type {string} */
(
value
));
break
;
case
'number'
:
ret
.
setNumberValue
(
/** @type {number} */
(
value
));
break
;
case
'boolean'
:
ret
.
setBoolValue
(
/** @type {boolean} */
(
value
));
break
;
case
'null'
:
ret
.
setNullValue
(
proto
.
google
.
protobuf
.
NullValue
.
NULL_VALUE
);
break
;
case
'array'
:
ret
.
setListValue
(
proto
.
google
.
protobuf
.
ListValue
.
fromJavaScript
(
/** @type{!Array} */
(
value
)));
break
;
case
'object'
:
ret
.
setStructValue
(
proto
.
google
.
protobuf
.
Struct
.
fromJavaScript
(
/** @type{!Object} */
(
value
)));
break
;
default
:
throw
new
Error
(
'Unexpected struct type.'
);
}
return
ret
;
};
/**
* Converts this ListValue object to a plain JavaScript array.
* @return {!Array} a plain JavaScript array representing this List.
*/
proto
.
google
.
protobuf
.
ListValue
.
prototype
.
toJavaScript
=
function
()
{
var
ret
=
[];
var
values
=
this
.
getValuesList
();
for
(
var
i
=
0
;
i
<
values
.
length
;
i
++
)
{
ret
[
i
]
=
values
[
i
].
toJavaScript
();
}
return
ret
;
};
/**
* Constructs a ListValue protobuf from this plain JavaScript array.
* @param {!Array} array a plain JavaScript array
* @return {proto.google.protobuf.ListValue} a new ListValue object
*/
proto
.
google
.
protobuf
.
ListValue
.
fromJavaScript
=
function
(
array
)
{
var
ret
=
new
proto
.
google
.
protobuf
.
ListValue
();
for
(
var
i
=
0
;
i
<
array
.
length
;
i
++
)
{
ret
.
addValues
(
proto
.
google
.
protobuf
.
Value
.
fromJavaScript
(
array
[
i
]));
}
return
ret
;
};
/**
* Converts this Struct object to a plain JavaScript object.
* @return {!Object<string, !proto.google.protobuf.JavaScriptValue>} a plain
* JavaScript object representing this Struct.
*/
proto
.
google
.
protobuf
.
Struct
.
prototype
.
toJavaScript
=
function
()
{
var
ret
=
{};
this
.
getFieldsMap
().
forEach
(
function
(
value
,
key
)
{
ret
[
key
]
=
value
.
toJavaScript
();
});
return
ret
;
};
/**
* Constructs a Struct protobuf from this plain JavaScript object.
* @param {!Object} obj a plain JavaScript object
* @return {proto.google.protobuf.Struct} a new Struct object
*/
proto
.
google
.
protobuf
.
Struct
.
fromJavaScript
=
function
(
obj
)
{
var
ret
=
new
proto
.
google
.
protobuf
.
Struct
();
var
map
=
ret
.
getFieldsMap
();
for
(
var
property
in
obj
)
{
var
val
=
obj
[
property
];
map
.
set
(
property
,
proto
.
google
.
protobuf
.
Value
.
fromJavaScript
(
val
));
}
return
ret
;
};
src/google/protobuf/compiler/js/well_known_types/timestamp.js
deleted
100644 → 0
View file @
88795f64
// Protocol Buffers - Google's data interchange format
// Copyright 2008 Google Inc. All rights reserved.
// 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
// met:
//
// * Redistributions of source code must retain the above copyright
// notice, this list of conditions and the following disclaimer.
// * Redistributions in binary form must reproduce the above
// copyright notice, this list of conditions and the following disclaimer
// in the documentation and/or other materials provided with the
// distribution.
// * Neither the name of Google Inc. nor the names of its
// contributors may be used to endorse or promote products derived from
// this software without specific prior written permission.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
/* This code will be inserted into generated code for
* google/protobuf/timestamp.proto. */
/**
* Returns a JavaScript 'Date' object corresponding to this Timestamp.
* @return {!Date}
*/
proto
.
google
.
protobuf
.
Timestamp
.
prototype
.
toDate
=
function
()
{
var
seconds
=
this
.
getSeconds
();
var
nanos
=
this
.
getNanos
();
return
new
Date
((
seconds
*
1000
)
+
(
nanos
/
1000000
));
};
/**
* Sets the value of this Timestamp object to be the given Date.
* @param {!Date} value The value to set.
*/
proto
.
google
.
protobuf
.
Timestamp
.
prototype
.
fromDate
=
function
(
value
)
{
this
.
setSeconds
(
Math
.
floor
(
value
.
getTime
()
/
1000
));
this
.
setNanos
(
value
.
getMilliseconds
()
*
1000000
);
};
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment