mirror of
https://github.com/ceph/ceph-csi.git
synced 2025-06-13 02:33:34 +00:00
vendor files
This commit is contained in:
33
vendor/github.com/golang/protobuf/protoc-gen-go/Makefile
generated
vendored
Normal file
33
vendor/github.com/golang/protobuf/protoc-gen-go/Makefile
generated
vendored
Normal file
@ -0,0 +1,33 @@
|
||||
# Go support for Protocol Buffers - Google's data interchange format
|
||||
#
|
||||
# Copyright 2010 The Go Authors. All rights reserved.
|
||||
# https://github.com/golang/protobuf
|
||||
#
|
||||
# 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.
|
||||
|
||||
test:
|
||||
cd testdata && make test
|
37
vendor/github.com/golang/protobuf/protoc-gen-go/descriptor/Makefile
generated
vendored
Normal file
37
vendor/github.com/golang/protobuf/protoc-gen-go/descriptor/Makefile
generated
vendored
Normal file
@ -0,0 +1,37 @@
|
||||
# Go support for Protocol Buffers - Google's data interchange format
|
||||
#
|
||||
# Copyright 2010 The Go Authors. All rights reserved.
|
||||
# https://github.com/golang/protobuf
|
||||
#
|
||||
# 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.
|
||||
|
||||
# Not stored here, but descriptor.proto is in https://github.com/google/protobuf/
|
||||
# at src/google/protobuf/descriptor.proto
|
||||
regenerate:
|
||||
@echo WARNING! THIS RULE IS PROBABLY NOT RIGHT FOR YOUR INSTALLATION
|
||||
cp $(HOME)/src/protobuf/include/google/protobuf/descriptor.proto .
|
||||
protoc --go_out=../../../../.. -I$(HOME)/src/protobuf/include $(HOME)/src/protobuf/include/google/protobuf/descriptor.proto
|
2215
vendor/github.com/golang/protobuf/protoc-gen-go/descriptor/descriptor.pb.go
generated
vendored
Normal file
2215
vendor/github.com/golang/protobuf/protoc-gen-go/descriptor/descriptor.pb.go
generated
vendored
Normal file
File diff suppressed because it is too large
Load Diff
849
vendor/github.com/golang/protobuf/protoc-gen-go/descriptor/descriptor.proto
generated
vendored
Normal file
849
vendor/github.com/golang/protobuf/protoc-gen-go/descriptor/descriptor.proto
generated
vendored
Normal file
@ -0,0 +1,849 @@
|
||||
// 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: kenton@google.com (Kenton Varda)
|
||||
// Based on original Protocol Buffers design by
|
||||
// Sanjay Ghemawat, Jeff Dean, and others.
|
||||
//
|
||||
// The messages in this file describe the definitions found in .proto files.
|
||||
// A valid .proto file can be translated directly to a FileDescriptorProto
|
||||
// without any other information (e.g. without reading its imports).
|
||||
|
||||
|
||||
syntax = "proto2";
|
||||
|
||||
package google.protobuf;
|
||||
option go_package = "github.com/golang/protobuf/protoc-gen-go/descriptor;descriptor";
|
||||
option java_package = "com.google.protobuf";
|
||||
option java_outer_classname = "DescriptorProtos";
|
||||
option csharp_namespace = "Google.Protobuf.Reflection";
|
||||
option objc_class_prefix = "GPB";
|
||||
|
||||
// descriptor.proto must be optimized for speed because reflection-based
|
||||
// algorithms don't work during bootstrapping.
|
||||
option optimize_for = SPEED;
|
||||
|
||||
// The protocol compiler can output a FileDescriptorSet containing the .proto
|
||||
// files it parses.
|
||||
message FileDescriptorSet {
|
||||
repeated FileDescriptorProto file = 1;
|
||||
}
|
||||
|
||||
// Describes a complete .proto file.
|
||||
message FileDescriptorProto {
|
||||
optional string name = 1; // file name, relative to root of source tree
|
||||
optional string package = 2; // e.g. "foo", "foo.bar", etc.
|
||||
|
||||
// Names of files imported by this file.
|
||||
repeated string dependency = 3;
|
||||
// Indexes of the public imported files in the dependency list above.
|
||||
repeated int32 public_dependency = 10;
|
||||
// Indexes of the weak imported files in the dependency list.
|
||||
// For Google-internal migration only. Do not use.
|
||||
repeated int32 weak_dependency = 11;
|
||||
|
||||
// All top-level definitions in this file.
|
||||
repeated DescriptorProto message_type = 4;
|
||||
repeated EnumDescriptorProto enum_type = 5;
|
||||
repeated ServiceDescriptorProto service = 6;
|
||||
repeated FieldDescriptorProto extension = 7;
|
||||
|
||||
optional FileOptions options = 8;
|
||||
|
||||
// This field contains optional information about the original source code.
|
||||
// You may safely remove this entire field without harming runtime
|
||||
// functionality of the descriptors -- the information is needed only by
|
||||
// development tools.
|
||||
optional SourceCodeInfo source_code_info = 9;
|
||||
|
||||
// The syntax of the proto file.
|
||||
// The supported values are "proto2" and "proto3".
|
||||
optional string syntax = 12;
|
||||
}
|
||||
|
||||
// Describes a message type.
|
||||
message DescriptorProto {
|
||||
optional string name = 1;
|
||||
|
||||
repeated FieldDescriptorProto field = 2;
|
||||
repeated FieldDescriptorProto extension = 6;
|
||||
|
||||
repeated DescriptorProto nested_type = 3;
|
||||
repeated EnumDescriptorProto enum_type = 4;
|
||||
|
||||
message ExtensionRange {
|
||||
optional int32 start = 1;
|
||||
optional int32 end = 2;
|
||||
|
||||
optional ExtensionRangeOptions options = 3;
|
||||
}
|
||||
repeated ExtensionRange extension_range = 5;
|
||||
|
||||
repeated OneofDescriptorProto oneof_decl = 8;
|
||||
|
||||
optional MessageOptions options = 7;
|
||||
|
||||
// Range of reserved tag numbers. Reserved tag numbers may not be used by
|
||||
// fields or extension ranges in the same message. Reserved ranges may
|
||||
// not overlap.
|
||||
message ReservedRange {
|
||||
optional int32 start = 1; // Inclusive.
|
||||
optional int32 end = 2; // Exclusive.
|
||||
}
|
||||
repeated ReservedRange reserved_range = 9;
|
||||
// Reserved field names, which may not be used by fields in the same message.
|
||||
// A given name may only be reserved once.
|
||||
repeated string reserved_name = 10;
|
||||
}
|
||||
|
||||
message ExtensionRangeOptions {
|
||||
// The parser stores options it doesn't recognize here. See above.
|
||||
repeated UninterpretedOption uninterpreted_option = 999;
|
||||
|
||||
// Clients can define custom options in extensions of this message. See above.
|
||||
extensions 1000 to max;
|
||||
}
|
||||
|
||||
// Describes a field within a message.
|
||||
message FieldDescriptorProto {
|
||||
enum Type {
|
||||
// 0 is reserved for errors.
|
||||
// Order is weird for historical reasons.
|
||||
TYPE_DOUBLE = 1;
|
||||
TYPE_FLOAT = 2;
|
||||
// Not ZigZag encoded. Negative numbers take 10 bytes. Use TYPE_SINT64 if
|
||||
// negative values are likely.
|
||||
TYPE_INT64 = 3;
|
||||
TYPE_UINT64 = 4;
|
||||
// Not ZigZag encoded. Negative numbers take 10 bytes. Use TYPE_SINT32 if
|
||||
// negative values are likely.
|
||||
TYPE_INT32 = 5;
|
||||
TYPE_FIXED64 = 6;
|
||||
TYPE_FIXED32 = 7;
|
||||
TYPE_BOOL = 8;
|
||||
TYPE_STRING = 9;
|
||||
// Tag-delimited aggregate.
|
||||
// Group type is deprecated and not supported in proto3. However, Proto3
|
||||
// implementations should still be able to parse the group wire format and
|
||||
// treat group fields as unknown fields.
|
||||
TYPE_GROUP = 10;
|
||||
TYPE_MESSAGE = 11; // Length-delimited aggregate.
|
||||
|
||||
// New in version 2.
|
||||
TYPE_BYTES = 12;
|
||||
TYPE_UINT32 = 13;
|
||||
TYPE_ENUM = 14;
|
||||
TYPE_SFIXED32 = 15;
|
||||
TYPE_SFIXED64 = 16;
|
||||
TYPE_SINT32 = 17; // Uses ZigZag encoding.
|
||||
TYPE_SINT64 = 18; // Uses ZigZag encoding.
|
||||
};
|
||||
|
||||
enum Label {
|
||||
// 0 is reserved for errors
|
||||
LABEL_OPTIONAL = 1;
|
||||
LABEL_REQUIRED = 2;
|
||||
LABEL_REPEATED = 3;
|
||||
};
|
||||
|
||||
optional string name = 1;
|
||||
optional int32 number = 3;
|
||||
optional Label label = 4;
|
||||
|
||||
// If type_name is set, this need not be set. If both this and type_name
|
||||
// are set, this must be one of TYPE_ENUM, TYPE_MESSAGE or TYPE_GROUP.
|
||||
optional Type type = 5;
|
||||
|
||||
// For message and enum types, this is the name of the type. If the name
|
||||
// starts with a '.', it is fully-qualified. Otherwise, C++-like scoping
|
||||
// rules are used to find the type (i.e. first the nested types within this
|
||||
// message are searched, then within the parent, on up to the root
|
||||
// namespace).
|
||||
optional string type_name = 6;
|
||||
|
||||
// For extensions, this is the name of the type being extended. It is
|
||||
// resolved in the same manner as type_name.
|
||||
optional string extendee = 2;
|
||||
|
||||
// For numeric types, contains the original text representation of the value.
|
||||
// For booleans, "true" or "false".
|
||||
// For strings, contains the default text contents (not escaped in any way).
|
||||
// For bytes, contains the C escaped value. All bytes >= 128 are escaped.
|
||||
// TODO(kenton): Base-64 encode?
|
||||
optional string default_value = 7;
|
||||
|
||||
// If set, gives the index of a oneof in the containing type's oneof_decl
|
||||
// list. This field is a member of that oneof.
|
||||
optional int32 oneof_index = 9;
|
||||
|
||||
// JSON name of this field. The value is set by protocol compiler. If the
|
||||
// user has set a "json_name" option on this field, that option's value
|
||||
// will be used. Otherwise, it's deduced from the field's name by converting
|
||||
// it to camelCase.
|
||||
optional string json_name = 10;
|
||||
|
||||
optional FieldOptions options = 8;
|
||||
}
|
||||
|
||||
// Describes a oneof.
|
||||
message OneofDescriptorProto {
|
||||
optional string name = 1;
|
||||
optional OneofOptions options = 2;
|
||||
}
|
||||
|
||||
// Describes an enum type.
|
||||
message EnumDescriptorProto {
|
||||
optional string name = 1;
|
||||
|
||||
repeated EnumValueDescriptorProto value = 2;
|
||||
|
||||
optional EnumOptions options = 3;
|
||||
}
|
||||
|
||||
// Describes a value within an enum.
|
||||
message EnumValueDescriptorProto {
|
||||
optional string name = 1;
|
||||
optional int32 number = 2;
|
||||
|
||||
optional EnumValueOptions options = 3;
|
||||
}
|
||||
|
||||
// Describes a service.
|
||||
message ServiceDescriptorProto {
|
||||
optional string name = 1;
|
||||
repeated MethodDescriptorProto method = 2;
|
||||
|
||||
optional ServiceOptions options = 3;
|
||||
}
|
||||
|
||||
// Describes a method of a service.
|
||||
message MethodDescriptorProto {
|
||||
optional string name = 1;
|
||||
|
||||
// Input and output type names. These are resolved in the same way as
|
||||
// FieldDescriptorProto.type_name, but must refer to a message type.
|
||||
optional string input_type = 2;
|
||||
optional string output_type = 3;
|
||||
|
||||
optional MethodOptions options = 4;
|
||||
|
||||
// Identifies if client streams multiple client messages
|
||||
optional bool client_streaming = 5 [default=false];
|
||||
// Identifies if server streams multiple server messages
|
||||
optional bool server_streaming = 6 [default=false];
|
||||
}
|
||||
|
||||
|
||||
// ===================================================================
|
||||
// Options
|
||||
|
||||
// Each of the definitions above may have "options" attached. These are
|
||||
// just annotations which may cause code to be generated slightly differently
|
||||
// or may contain hints for code that manipulates protocol messages.
|
||||
//
|
||||
// Clients may define custom options as extensions of the *Options messages.
|
||||
// These extensions may not yet be known at parsing time, so the parser cannot
|
||||
// store the values in them. Instead it stores them in a field in the *Options
|
||||
// message called uninterpreted_option. This field must have the same name
|
||||
// across all *Options messages. We then use this field to populate the
|
||||
// extensions when we build a descriptor, at which point all protos have been
|
||||
// parsed and so all extensions are known.
|
||||
//
|
||||
// Extension numbers for custom options may be chosen as follows:
|
||||
// * For options which will only be used within a single application or
|
||||
// organization, or for experimental options, use field numbers 50000
|
||||
// through 99999. It is up to you to ensure that you do not use the
|
||||
// same number for multiple options.
|
||||
// * For options which will be published and used publicly by multiple
|
||||
// independent entities, e-mail protobuf-global-extension-registry@google.com
|
||||
// to reserve extension numbers. Simply provide your project name (e.g.
|
||||
// Objective-C plugin) and your project website (if available) -- there's no
|
||||
// need to explain how you intend to use them. Usually you only need one
|
||||
// extension number. You can declare multiple options with only one extension
|
||||
// number by putting them in a sub-message. See the Custom Options section of
|
||||
// the docs for examples:
|
||||
// https://developers.google.com/protocol-buffers/docs/proto#options
|
||||
// If this turns out to be popular, a web service will be set up
|
||||
// to automatically assign option numbers.
|
||||
|
||||
|
||||
message FileOptions {
|
||||
|
||||
// Sets the Java package where classes generated from this .proto will be
|
||||
// placed. By default, the proto package is used, but this is often
|
||||
// inappropriate because proto packages do not normally start with backwards
|
||||
// domain names.
|
||||
optional string java_package = 1;
|
||||
|
||||
|
||||
// If set, all the classes from the .proto file are wrapped in a single
|
||||
// outer class with the given name. This applies to both Proto1
|
||||
// (equivalent to the old "--one_java_file" option) and Proto2 (where
|
||||
// a .proto always translates to a single class, but you may want to
|
||||
// explicitly choose the class name).
|
||||
optional string java_outer_classname = 8;
|
||||
|
||||
// If set true, then the Java code generator will generate a separate .java
|
||||
// file for each top-level message, enum, and service defined in the .proto
|
||||
// file. Thus, these types will *not* be nested inside the outer class
|
||||
// named by java_outer_classname. However, the outer class will still be
|
||||
// generated to contain the file's getDescriptor() method as well as any
|
||||
// top-level extensions defined in the file.
|
||||
optional bool java_multiple_files = 10 [default=false];
|
||||
|
||||
// This option does nothing.
|
||||
optional bool java_generate_equals_and_hash = 20 [deprecated=true];
|
||||
|
||||
// If set true, then the Java2 code generator will generate code that
|
||||
// throws an exception whenever an attempt is made to assign a non-UTF-8
|
||||
// byte sequence to a string field.
|
||||
// Message reflection will do the same.
|
||||
// However, an extension field still accepts non-UTF-8 byte sequences.
|
||||
// This option has no effect on when used with the lite runtime.
|
||||
optional bool java_string_check_utf8 = 27 [default=false];
|
||||
|
||||
|
||||
// Generated classes can be optimized for speed or code size.
|
||||
enum OptimizeMode {
|
||||
SPEED = 1; // Generate complete code for parsing, serialization,
|
||||
// etc.
|
||||
CODE_SIZE = 2; // Use ReflectionOps to implement these methods.
|
||||
LITE_RUNTIME = 3; // Generate code using MessageLite and the lite runtime.
|
||||
}
|
||||
optional OptimizeMode optimize_for = 9 [default=SPEED];
|
||||
|
||||
// Sets the Go package where structs generated from this .proto will be
|
||||
// placed. If omitted, the Go package will be derived from the following:
|
||||
// - The basename of the package import path, if provided.
|
||||
// - Otherwise, the package statement in the .proto file, if present.
|
||||
// - Otherwise, the basename of the .proto file, without extension.
|
||||
optional string go_package = 11;
|
||||
|
||||
|
||||
|
||||
// Should generic services be generated in each language? "Generic" services
|
||||
// are not specific to any particular RPC system. They are generated by the
|
||||
// main code generators in each language (without additional plugins).
|
||||
// Generic services were the only kind of service generation supported by
|
||||
// early versions of google.protobuf.
|
||||
//
|
||||
// Generic services are now considered deprecated in favor of using plugins
|
||||
// that generate code specific to your particular RPC system. Therefore,
|
||||
// these default to false. Old code which depends on generic services should
|
||||
// explicitly set them to true.
|
||||
optional bool cc_generic_services = 16 [default=false];
|
||||
optional bool java_generic_services = 17 [default=false];
|
||||
optional bool py_generic_services = 18 [default=false];
|
||||
optional bool php_generic_services = 42 [default=false];
|
||||
|
||||
// Is this file deprecated?
|
||||
// Depending on the target platform, this can emit Deprecated annotations
|
||||
// for everything in the file, or it will be completely ignored; in the very
|
||||
// least, this is a formalization for deprecating files.
|
||||
optional bool deprecated = 23 [default=false];
|
||||
|
||||
// Enables the use of arenas for the proto messages in this file. This applies
|
||||
// only to generated classes for C++.
|
||||
optional bool cc_enable_arenas = 31 [default=false];
|
||||
|
||||
|
||||
// Sets the objective c class prefix which is prepended to all objective c
|
||||
// generated classes from this .proto. There is no default.
|
||||
optional string objc_class_prefix = 36;
|
||||
|
||||
// Namespace for generated classes; defaults to the package.
|
||||
optional string csharp_namespace = 37;
|
||||
|
||||
// By default Swift generators will take the proto package and CamelCase it
|
||||
// replacing '.' with underscore and use that to prefix the types/symbols
|
||||
// defined. When this options is provided, they will use this value instead
|
||||
// to prefix the types/symbols defined.
|
||||
optional string swift_prefix = 39;
|
||||
|
||||
// Sets the php class prefix which is prepended to all php generated classes
|
||||
// from this .proto. Default is empty.
|
||||
optional string php_class_prefix = 40;
|
||||
|
||||
// Use this option to change the namespace of php generated classes. Default
|
||||
// is empty. When this option is empty, the package name will be used for
|
||||
// determining the namespace.
|
||||
optional string php_namespace = 41;
|
||||
|
||||
// The parser stores options it doesn't recognize here. See above.
|
||||
repeated UninterpretedOption uninterpreted_option = 999;
|
||||
|
||||
// Clients can define custom options in extensions of this message. See above.
|
||||
extensions 1000 to max;
|
||||
|
||||
reserved 38;
|
||||
}
|
||||
|
||||
message MessageOptions {
|
||||
// Set true to use the old proto1 MessageSet wire format for extensions.
|
||||
// This is provided for backwards-compatibility with the MessageSet wire
|
||||
// format. You should not use this for any other reason: It's less
|
||||
// efficient, has fewer features, and is more complicated.
|
||||
//
|
||||
// The message must be defined exactly as follows:
|
||||
// message Foo {
|
||||
// option message_set_wire_format = true;
|
||||
// extensions 4 to max;
|
||||
// }
|
||||
// Note that the message cannot have any defined fields; MessageSets only
|
||||
// have extensions.
|
||||
//
|
||||
// All extensions of your type must be singular messages; e.g. they cannot
|
||||
// be int32s, enums, or repeated messages.
|
||||
//
|
||||
// Because this is an option, the above two restrictions are not enforced by
|
||||
// the protocol compiler.
|
||||
optional bool message_set_wire_format = 1 [default=false];
|
||||
|
||||
// Disables the generation of the standard "descriptor()" accessor, which can
|
||||
// conflict with a field of the same name. This is meant to make migration
|
||||
// from proto1 easier; new code should avoid fields named "descriptor".
|
||||
optional bool no_standard_descriptor_accessor = 2 [default=false];
|
||||
|
||||
// Is this message deprecated?
|
||||
// Depending on the target platform, this can emit Deprecated annotations
|
||||
// for the message, or it will be completely ignored; in the very least,
|
||||
// this is a formalization for deprecating messages.
|
||||
optional bool deprecated = 3 [default=false];
|
||||
|
||||
// Whether the message is an automatically generated map entry type for the
|
||||
// maps field.
|
||||
//
|
||||
// For maps fields:
|
||||
// map<KeyType, ValueType> map_field = 1;
|
||||
// The parsed descriptor looks like:
|
||||
// message MapFieldEntry {
|
||||
// option map_entry = true;
|
||||
// optional KeyType key = 1;
|
||||
// optional ValueType value = 2;
|
||||
// }
|
||||
// repeated MapFieldEntry map_field = 1;
|
||||
//
|
||||
// Implementations may choose not to generate the map_entry=true message, but
|
||||
// use a native map in the target language to hold the keys and values.
|
||||
// The reflection APIs in such implementions still need to work as
|
||||
// if the field is a repeated message field.
|
||||
//
|
||||
// NOTE: Do not set the option in .proto files. Always use the maps syntax
|
||||
// instead. The option should only be implicitly set by the proto compiler
|
||||
// parser.
|
||||
optional bool map_entry = 7;
|
||||
|
||||
reserved 8; // javalite_serializable
|
||||
reserved 9; // javanano_as_lite
|
||||
|
||||
// The parser stores options it doesn't recognize here. See above.
|
||||
repeated UninterpretedOption uninterpreted_option = 999;
|
||||
|
||||
// Clients can define custom options in extensions of this message. See above.
|
||||
extensions 1000 to max;
|
||||
}
|
||||
|
||||
message FieldOptions {
|
||||
// The ctype option instructs the C++ code generator to use a different
|
||||
// representation of the field than it normally would. See the specific
|
||||
// options below. This option is not yet implemented in the open source
|
||||
// release -- sorry, we'll try to include it in a future version!
|
||||
optional CType ctype = 1 [default = STRING];
|
||||
enum CType {
|
||||
// Default mode.
|
||||
STRING = 0;
|
||||
|
||||
CORD = 1;
|
||||
|
||||
STRING_PIECE = 2;
|
||||
}
|
||||
// The packed option can be enabled for repeated primitive fields to enable
|
||||
// a more efficient representation on the wire. Rather than repeatedly
|
||||
// writing the tag and type for each element, the entire array is encoded as
|
||||
// a single length-delimited blob. In proto3, only explicit setting it to
|
||||
// false will avoid using packed encoding.
|
||||
optional bool packed = 2;
|
||||
|
||||
// The jstype option determines the JavaScript type used for values of the
|
||||
// field. The option is permitted only for 64 bit integral and fixed types
|
||||
// (int64, uint64, sint64, fixed64, sfixed64). A field with jstype JS_STRING
|
||||
// is represented as JavaScript string, which avoids loss of precision that
|
||||
// can happen when a large value is converted to a floating point JavaScript.
|
||||
// Specifying JS_NUMBER for the jstype causes the generated JavaScript code to
|
||||
// use the JavaScript "number" type. The behavior of the default option
|
||||
// JS_NORMAL is implementation dependent.
|
||||
//
|
||||
// This option is an enum to permit additional types to be added, e.g.
|
||||
// goog.math.Integer.
|
||||
optional JSType jstype = 6 [default = JS_NORMAL];
|
||||
enum JSType {
|
||||
// Use the default type.
|
||||
JS_NORMAL = 0;
|
||||
|
||||
// Use JavaScript strings.
|
||||
JS_STRING = 1;
|
||||
|
||||
// Use JavaScript numbers.
|
||||
JS_NUMBER = 2;
|
||||
}
|
||||
|
||||
// Should this field be parsed lazily? Lazy applies only to message-type
|
||||
// fields. It means that when the outer message is initially parsed, the
|
||||
// inner message's contents will not be parsed but instead stored in encoded
|
||||
// form. The inner message will actually be parsed when it is first accessed.
|
||||
//
|
||||
// This is only a hint. Implementations are free to choose whether to use
|
||||
// eager or lazy parsing regardless of the value of this option. However,
|
||||
// setting this option true suggests that the protocol author believes that
|
||||
// using lazy parsing on this field is worth the additional bookkeeping
|
||||
// overhead typically needed to implement it.
|
||||
//
|
||||
// This option does not affect the public interface of any generated code;
|
||||
// all method signatures remain the same. Furthermore, thread-safety of the
|
||||
// interface is not affected by this option; const methods remain safe to
|
||||
// call from multiple threads concurrently, while non-const methods continue
|
||||
// to require exclusive access.
|
||||
//
|
||||
//
|
||||
// Note that implementations may choose not to check required fields within
|
||||
// a lazy sub-message. That is, calling IsInitialized() on the outer message
|
||||
// may return true even if the inner message has missing required fields.
|
||||
// This is necessary because otherwise the inner message would have to be
|
||||
// parsed in order to perform the check, defeating the purpose of lazy
|
||||
// parsing. An implementation which chooses not to check required fields
|
||||
// must be consistent about it. That is, for any particular sub-message, the
|
||||
// implementation must either *always* check its required fields, or *never*
|
||||
// check its required fields, regardless of whether or not the message has
|
||||
// been parsed.
|
||||
optional bool lazy = 5 [default=false];
|
||||
|
||||
// Is this field deprecated?
|
||||
// Depending on the target platform, this can emit Deprecated annotations
|
||||
// for accessors, or it will be completely ignored; in the very least, this
|
||||
// is a formalization for deprecating fields.
|
||||
optional bool deprecated = 3 [default=false];
|
||||
|
||||
// For Google-internal migration only. Do not use.
|
||||
optional bool weak = 10 [default=false];
|
||||
|
||||
|
||||
// The parser stores options it doesn't recognize here. See above.
|
||||
repeated UninterpretedOption uninterpreted_option = 999;
|
||||
|
||||
// Clients can define custom options in extensions of this message. See above.
|
||||
extensions 1000 to max;
|
||||
|
||||
reserved 4; // removed jtype
|
||||
}
|
||||
|
||||
message OneofOptions {
|
||||
// The parser stores options it doesn't recognize here. See above.
|
||||
repeated UninterpretedOption uninterpreted_option = 999;
|
||||
|
||||
// Clients can define custom options in extensions of this message. See above.
|
||||
extensions 1000 to max;
|
||||
}
|
||||
|
||||
message EnumOptions {
|
||||
|
||||
// Set this option to true to allow mapping different tag names to the same
|
||||
// value.
|
||||
optional bool allow_alias = 2;
|
||||
|
||||
// Is this enum deprecated?
|
||||
// Depending on the target platform, this can emit Deprecated annotations
|
||||
// for the enum, or it will be completely ignored; in the very least, this
|
||||
// is a formalization for deprecating enums.
|
||||
optional bool deprecated = 3 [default=false];
|
||||
|
||||
reserved 5; // javanano_as_lite
|
||||
|
||||
// The parser stores options it doesn't recognize here. See above.
|
||||
repeated UninterpretedOption uninterpreted_option = 999;
|
||||
|
||||
// Clients can define custom options in extensions of this message. See above.
|
||||
extensions 1000 to max;
|
||||
}
|
||||
|
||||
message EnumValueOptions {
|
||||
// Is this enum value deprecated?
|
||||
// Depending on the target platform, this can emit Deprecated annotations
|
||||
// for the enum value, or it will be completely ignored; in the very least,
|
||||
// this is a formalization for deprecating enum values.
|
||||
optional bool deprecated = 1 [default=false];
|
||||
|
||||
// The parser stores options it doesn't recognize here. See above.
|
||||
repeated UninterpretedOption uninterpreted_option = 999;
|
||||
|
||||
// Clients can define custom options in extensions of this message. See above.
|
||||
extensions 1000 to max;
|
||||
}
|
||||
|
||||
message ServiceOptions {
|
||||
|
||||
// Note: Field numbers 1 through 32 are reserved for Google's internal RPC
|
||||
// framework. We apologize for hoarding these numbers to ourselves, but
|
||||
// we were already using them long before we decided to release Protocol
|
||||
// Buffers.
|
||||
|
||||
// Is this service deprecated?
|
||||
// Depending on the target platform, this can emit Deprecated annotations
|
||||
// for the service, or it will be completely ignored; in the very least,
|
||||
// this is a formalization for deprecating services.
|
||||
optional bool deprecated = 33 [default=false];
|
||||
|
||||
// The parser stores options it doesn't recognize here. See above.
|
||||
repeated UninterpretedOption uninterpreted_option = 999;
|
||||
|
||||
// Clients can define custom options in extensions of this message. See above.
|
||||
extensions 1000 to max;
|
||||
}
|
||||
|
||||
message MethodOptions {
|
||||
|
||||
// Note: Field numbers 1 through 32 are reserved for Google's internal RPC
|
||||
// framework. We apologize for hoarding these numbers to ourselves, but
|
||||
// we were already using them long before we decided to release Protocol
|
||||
// Buffers.
|
||||
|
||||
// Is this method deprecated?
|
||||
// Depending on the target platform, this can emit Deprecated annotations
|
||||
// for the method, or it will be completely ignored; in the very least,
|
||||
// this is a formalization for deprecating methods.
|
||||
optional bool deprecated = 33 [default=false];
|
||||
|
||||
// Is this method side-effect-free (or safe in HTTP parlance), or idempotent,
|
||||
// or neither? HTTP based RPC implementation may choose GET verb for safe
|
||||
// methods, and PUT verb for idempotent methods instead of the default POST.
|
||||
enum IdempotencyLevel {
|
||||
IDEMPOTENCY_UNKNOWN = 0;
|
||||
NO_SIDE_EFFECTS = 1; // implies idempotent
|
||||
IDEMPOTENT = 2; // idempotent, but may have side effects
|
||||
}
|
||||
optional IdempotencyLevel idempotency_level =
|
||||
34 [default=IDEMPOTENCY_UNKNOWN];
|
||||
|
||||
// The parser stores options it doesn't recognize here. See above.
|
||||
repeated UninterpretedOption uninterpreted_option = 999;
|
||||
|
||||
// Clients can define custom options in extensions of this message. See above.
|
||||
extensions 1000 to max;
|
||||
}
|
||||
|
||||
|
||||
// A message representing a option the parser does not recognize. This only
|
||||
// appears in options protos created by the compiler::Parser class.
|
||||
// DescriptorPool resolves these when building Descriptor objects. Therefore,
|
||||
// options protos in descriptor objects (e.g. returned by Descriptor::options(),
|
||||
// or produced by Descriptor::CopyTo()) will never have UninterpretedOptions
|
||||
// in them.
|
||||
message UninterpretedOption {
|
||||
// The name of the uninterpreted option. Each string represents a segment in
|
||||
// a dot-separated name. is_extension is true iff a segment represents an
|
||||
// extension (denoted with parentheses in options specs in .proto files).
|
||||
// E.g.,{ ["foo", false], ["bar.baz", true], ["qux", false] } represents
|
||||
// "foo.(bar.baz).qux".
|
||||
message NamePart {
|
||||
required string name_part = 1;
|
||||
required bool is_extension = 2;
|
||||
}
|
||||
repeated NamePart name = 2;
|
||||
|
||||
// The value of the uninterpreted option, in whatever type the tokenizer
|
||||
// identified it as during parsing. Exactly one of these should be set.
|
||||
optional string identifier_value = 3;
|
||||
optional uint64 positive_int_value = 4;
|
||||
optional int64 negative_int_value = 5;
|
||||
optional double double_value = 6;
|
||||
optional bytes string_value = 7;
|
||||
optional string aggregate_value = 8;
|
||||
}
|
||||
|
||||
// ===================================================================
|
||||
// Optional source code info
|
||||
|
||||
// Encapsulates information about the original source file from which a
|
||||
// FileDescriptorProto was generated.
|
||||
message SourceCodeInfo {
|
||||
// A Location identifies a piece of source code in a .proto file which
|
||||
// corresponds to a particular definition. This information is intended
|
||||
// to be useful to IDEs, code indexers, documentation generators, and similar
|
||||
// tools.
|
||||
//
|
||||
// For example, say we have a file like:
|
||||
// message Foo {
|
||||
// optional string foo = 1;
|
||||
// }
|
||||
// Let's look at just the field definition:
|
||||
// optional string foo = 1;
|
||||
// ^ ^^ ^^ ^ ^^^
|
||||
// a bc de f ghi
|
||||
// We have the following locations:
|
||||
// span path represents
|
||||
// [a,i) [ 4, 0, 2, 0 ] The whole field definition.
|
||||
// [a,b) [ 4, 0, 2, 0, 4 ] The label (optional).
|
||||
// [c,d) [ 4, 0, 2, 0, 5 ] The type (string).
|
||||
// [e,f) [ 4, 0, 2, 0, 1 ] The name (foo).
|
||||
// [g,h) [ 4, 0, 2, 0, 3 ] The number (1).
|
||||
//
|
||||
// Notes:
|
||||
// - A location may refer to a repeated field itself (i.e. not to any
|
||||
// particular index within it). This is used whenever a set of elements are
|
||||
// logically enclosed in a single code segment. For example, an entire
|
||||
// extend block (possibly containing multiple extension definitions) will
|
||||
// have an outer location whose path refers to the "extensions" repeated
|
||||
// field without an index.
|
||||
// - Multiple locations may have the same path. This happens when a single
|
||||
// logical declaration is spread out across multiple places. The most
|
||||
// obvious example is the "extend" block again -- there may be multiple
|
||||
// extend blocks in the same scope, each of which will have the same path.
|
||||
// - A location's span is not always a subset of its parent's span. For
|
||||
// example, the "extendee" of an extension declaration appears at the
|
||||
// beginning of the "extend" block and is shared by all extensions within
|
||||
// the block.
|
||||
// - Just because a location's span is a subset of some other location's span
|
||||
// does not mean that it is a descendent. For example, a "group" defines
|
||||
// both a type and a field in a single declaration. Thus, the locations
|
||||
// corresponding to the type and field and their components will overlap.
|
||||
// - Code which tries to interpret locations should probably be designed to
|
||||
// ignore those that it doesn't understand, as more types of locations could
|
||||
// be recorded in the future.
|
||||
repeated Location location = 1;
|
||||
message Location {
|
||||
// Identifies which part of the FileDescriptorProto was defined at this
|
||||
// location.
|
||||
//
|
||||
// Each element is a field number or an index. They form a path from
|
||||
// the root FileDescriptorProto to the place where the definition. For
|
||||
// example, this path:
|
||||
// [ 4, 3, 2, 7, 1 ]
|
||||
// refers to:
|
||||
// file.message_type(3) // 4, 3
|
||||
// .field(7) // 2, 7
|
||||
// .name() // 1
|
||||
// This is because FileDescriptorProto.message_type has field number 4:
|
||||
// repeated DescriptorProto message_type = 4;
|
||||
// and DescriptorProto.field has field number 2:
|
||||
// repeated FieldDescriptorProto field = 2;
|
||||
// and FieldDescriptorProto.name has field number 1:
|
||||
// optional string name = 1;
|
||||
//
|
||||
// Thus, the above path gives the location of a field name. If we removed
|
||||
// the last element:
|
||||
// [ 4, 3, 2, 7 ]
|
||||
// this path refers to the whole field declaration (from the beginning
|
||||
// of the label to the terminating semicolon).
|
||||
repeated int32 path = 1 [packed=true];
|
||||
|
||||
// Always has exactly three or four elements: start line, start column,
|
||||
// end line (optional, otherwise assumed same as start line), end column.
|
||||
// These are packed into a single field for efficiency. Note that line
|
||||
// and column numbers are zero-based -- typically you will want to add
|
||||
// 1 to each before displaying to a user.
|
||||
repeated int32 span = 2 [packed=true];
|
||||
|
||||
// If this SourceCodeInfo represents a complete declaration, these are any
|
||||
// comments appearing before and after the declaration which appear to be
|
||||
// attached to the declaration.
|
||||
//
|
||||
// A series of line comments appearing on consecutive lines, with no other
|
||||
// tokens appearing on those lines, will be treated as a single comment.
|
||||
//
|
||||
// leading_detached_comments will keep paragraphs of comments that appear
|
||||
// before (but not connected to) the current element. Each paragraph,
|
||||
// separated by empty lines, will be one comment element in the repeated
|
||||
// field.
|
||||
//
|
||||
// Only the comment content is provided; comment markers (e.g. //) are
|
||||
// stripped out. For block comments, leading whitespace and an asterisk
|
||||
// will be stripped from the beginning of each line other than the first.
|
||||
// Newlines are included in the output.
|
||||
//
|
||||
// Examples:
|
||||
//
|
||||
// optional int32 foo = 1; // Comment attached to foo.
|
||||
// // Comment attached to bar.
|
||||
// optional int32 bar = 2;
|
||||
//
|
||||
// optional string baz = 3;
|
||||
// // Comment attached to baz.
|
||||
// // Another line attached to baz.
|
||||
//
|
||||
// // Comment attached to qux.
|
||||
// //
|
||||
// // Another line attached to qux.
|
||||
// optional double qux = 4;
|
||||
//
|
||||
// // Detached comment for corge. This is not leading or trailing comments
|
||||
// // to qux or corge because there are blank lines separating it from
|
||||
// // both.
|
||||
//
|
||||
// // Detached comment for corge paragraph 2.
|
||||
//
|
||||
// optional string corge = 5;
|
||||
// /* Block comment attached
|
||||
// * to corge. Leading asterisks
|
||||
// * will be removed. */
|
||||
// /* Block comment attached to
|
||||
// * grault. */
|
||||
// optional int32 grault = 6;
|
||||
//
|
||||
// // ignored detached comments.
|
||||
optional string leading_comments = 3;
|
||||
optional string trailing_comments = 4;
|
||||
repeated string leading_detached_comments = 6;
|
||||
}
|
||||
}
|
||||
|
||||
// Describes the relationship between generated code and its original source
|
||||
// file. A GeneratedCodeInfo message is associated with only one generated
|
||||
// source file, but may contain references to different source .proto files.
|
||||
message GeneratedCodeInfo {
|
||||
// An Annotation connects some span of text in generated code to an element
|
||||
// of its generating .proto file.
|
||||
repeated Annotation annotation = 1;
|
||||
message Annotation {
|
||||
// Identifies the element in the original source .proto file. This field
|
||||
// is formatted the same as SourceCodeInfo.Location.path.
|
||||
repeated int32 path = 1 [packed=true];
|
||||
|
||||
// Identifies the filesystem path to the original source .proto.
|
||||
optional string source_file = 2;
|
||||
|
||||
// Identifies the starting offset in bytes in the generated code
|
||||
// that relates to the identified object.
|
||||
optional int32 begin = 3;
|
||||
|
||||
// Identifies the ending offset in bytes in the generated code that
|
||||
// relates to the identified offset. The end offset should be one past
|
||||
// the last relevant byte (so the length of the text = end - begin).
|
||||
optional int32 end = 4;
|
||||
}
|
||||
}
|
51
vendor/github.com/golang/protobuf/protoc-gen-go/doc.go
generated
vendored
Normal file
51
vendor/github.com/golang/protobuf/protoc-gen-go/doc.go
generated
vendored
Normal file
@ -0,0 +1,51 @@
|
||||
// Go support for Protocol Buffers - Google's data interchange format
|
||||
//
|
||||
// Copyright 2010 The Go Authors. All rights reserved.
|
||||
// https://github.com/golang/protobuf
|
||||
//
|
||||
// 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.
|
||||
|
||||
/*
|
||||
A plugin for the Google protocol buffer compiler to generate Go code.
|
||||
Run it by building this program and putting it in your path with the name
|
||||
protoc-gen-go
|
||||
That word 'go' at the end becomes part of the option string set for the
|
||||
protocol compiler, so once the protocol compiler (protoc) is installed
|
||||
you can run
|
||||
protoc --go_out=output_directory input_directory/file.proto
|
||||
to generate Go bindings for the protocol defined by file.proto.
|
||||
With that input, the output will be written to
|
||||
output_directory/file.pb.go
|
||||
|
||||
The generated code is documented in the package comment for
|
||||
the library.
|
||||
|
||||
See the README and documentation for protocol buffers to learn more:
|
||||
https://developers.google.com/protocol-buffers/
|
||||
|
||||
*/
|
||||
package documentation
|
40
vendor/github.com/golang/protobuf/protoc-gen-go/generator/Makefile
generated
vendored
Normal file
40
vendor/github.com/golang/protobuf/protoc-gen-go/generator/Makefile
generated
vendored
Normal file
@ -0,0 +1,40 @@
|
||||
# Go support for Protocol Buffers - Google's data interchange format
|
||||
#
|
||||
# Copyright 2010 The Go Authors. All rights reserved.
|
||||
# https://github.com/golang/protobuf
|
||||
#
|
||||
# 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.
|
||||
|
||||
include $(GOROOT)/src/Make.inc
|
||||
|
||||
TARG=github.com/golang/protobuf/compiler/generator
|
||||
GOFILES=\
|
||||
generator.go\
|
||||
|
||||
DEPS=../descriptor ../plugin ../../proto
|
||||
|
||||
include $(GOROOT)/src/Make.pkg
|
2866
vendor/github.com/golang/protobuf/protoc-gen-go/generator/generator.go
generated
vendored
Normal file
2866
vendor/github.com/golang/protobuf/protoc-gen-go/generator/generator.go
generated
vendored
Normal file
File diff suppressed because it is too large
Load Diff
114
vendor/github.com/golang/protobuf/protoc-gen-go/generator/name_test.go
generated
vendored
Normal file
114
vendor/github.com/golang/protobuf/protoc-gen-go/generator/name_test.go
generated
vendored
Normal file
@ -0,0 +1,114 @@
|
||||
// Go support for Protocol Buffers - Google's data interchange format
|
||||
//
|
||||
// Copyright 2013 The Go Authors. All rights reserved.
|
||||
// https://github.com/golang/protobuf
|
||||
//
|
||||
// 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.
|
||||
|
||||
package generator
|
||||
|
||||
import (
|
||||
"testing"
|
||||
|
||||
"github.com/golang/protobuf/protoc-gen-go/descriptor"
|
||||
)
|
||||
|
||||
func TestCamelCase(t *testing.T) {
|
||||
tests := []struct {
|
||||
in, want string
|
||||
}{
|
||||
{"one", "One"},
|
||||
{"one_two", "OneTwo"},
|
||||
{"_my_field_name_2", "XMyFieldName_2"},
|
||||
{"Something_Capped", "Something_Capped"},
|
||||
{"my_Name", "My_Name"},
|
||||
{"OneTwo", "OneTwo"},
|
||||
{"_", "X"},
|
||||
{"_a_", "XA_"},
|
||||
}
|
||||
for _, tc := range tests {
|
||||
if got := CamelCase(tc.in); got != tc.want {
|
||||
t.Errorf("CamelCase(%q) = %q, want %q", tc.in, got, tc.want)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func TestGoPackageOption(t *testing.T) {
|
||||
tests := []struct {
|
||||
in string
|
||||
impPath, pkg string
|
||||
ok bool
|
||||
}{
|
||||
{"", "", "", false},
|
||||
{"foo", "", "foo", true},
|
||||
{"github.com/golang/bar", "github.com/golang/bar", "bar", true},
|
||||
{"github.com/golang/bar;baz", "github.com/golang/bar", "baz", true},
|
||||
}
|
||||
for _, tc := range tests {
|
||||
d := &FileDescriptor{
|
||||
FileDescriptorProto: &descriptor.FileDescriptorProto{
|
||||
Options: &descriptor.FileOptions{
|
||||
GoPackage: &tc.in,
|
||||
},
|
||||
},
|
||||
}
|
||||
impPath, pkg, ok := d.goPackageOption()
|
||||
if impPath != tc.impPath || pkg != tc.pkg || ok != tc.ok {
|
||||
t.Errorf("go_package = %q => (%q, %q, %t), want (%q, %q, %t)", tc.in,
|
||||
impPath, pkg, ok, tc.impPath, tc.pkg, tc.ok)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func TestUnescape(t *testing.T) {
|
||||
tests := []struct {
|
||||
in string
|
||||
out string
|
||||
}{
|
||||
// successful cases, including all kinds of escapes
|
||||
{"", ""},
|
||||
{"foo bar baz frob nitz", "foo bar baz frob nitz"},
|
||||
{`\000\001\002\003\004\005\006\007`, string([]byte{0, 1, 2, 3, 4, 5, 6, 7})},
|
||||
{`\a\b\f\n\r\t\v\\\?\'\"`, string([]byte{'\a', '\b', '\f', '\n', '\r', '\t', '\v', '\\', '?', '\'', '"'})},
|
||||
{`\x10\x20\x30\x40\x50\x60\x70\x80`, string([]byte{16, 32, 48, 64, 80, 96, 112, 128})},
|
||||
// variable length octal escapes
|
||||
{`\0\018\222\377\3\04\005\6\07`, string([]byte{0, 1, '8', 0222, 255, 3, 4, 5, 6, 7})},
|
||||
// malformed escape sequences left as is
|
||||
{"foo \\g bar", "foo \\g bar"},
|
||||
{"foo \\xg0 bar", "foo \\xg0 bar"},
|
||||
{"\\", "\\"},
|
||||
{"\\x", "\\x"},
|
||||
{"\\xf", "\\xf"},
|
||||
{"\\777", "\\777"}, // overflows byte
|
||||
}
|
||||
for _, tc := range tests {
|
||||
s := unescape(tc.in)
|
||||
if s != tc.out {
|
||||
t.Errorf("doUnescape(%q) = %q; should have been %q", tc.in, s, tc.out)
|
||||
}
|
||||
}
|
||||
}
|
463
vendor/github.com/golang/protobuf/protoc-gen-go/grpc/grpc.go
generated
vendored
Normal file
463
vendor/github.com/golang/protobuf/protoc-gen-go/grpc/grpc.go
generated
vendored
Normal file
@ -0,0 +1,463 @@
|
||||
// Go support for Protocol Buffers - Google's data interchange format
|
||||
//
|
||||
// Copyright 2015 The Go Authors. All rights reserved.
|
||||
// https://github.com/golang/protobuf
|
||||
//
|
||||
// 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.
|
||||
|
||||
// Package grpc outputs gRPC service descriptions in Go code.
|
||||
// It runs as a plugin for the Go protocol buffer compiler plugin.
|
||||
// It is linked in to protoc-gen-go.
|
||||
package grpc
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"path"
|
||||
"strconv"
|
||||
"strings"
|
||||
|
||||
pb "github.com/golang/protobuf/protoc-gen-go/descriptor"
|
||||
"github.com/golang/protobuf/protoc-gen-go/generator"
|
||||
)
|
||||
|
||||
// generatedCodeVersion indicates a version of the generated code.
|
||||
// It is incremented whenever an incompatibility between the generated code and
|
||||
// the grpc package is introduced; the generated code references
|
||||
// a constant, grpc.SupportPackageIsVersionN (where N is generatedCodeVersion).
|
||||
const generatedCodeVersion = 4
|
||||
|
||||
// Paths for packages used by code generated in this file,
|
||||
// relative to the import_prefix of the generator.Generator.
|
||||
const (
|
||||
contextPkgPath = "golang.org/x/net/context"
|
||||
grpcPkgPath = "google.golang.org/grpc"
|
||||
)
|
||||
|
||||
func init() {
|
||||
generator.RegisterPlugin(new(grpc))
|
||||
}
|
||||
|
||||
// grpc is an implementation of the Go protocol buffer compiler's
|
||||
// plugin architecture. It generates bindings for gRPC support.
|
||||
type grpc struct {
|
||||
gen *generator.Generator
|
||||
}
|
||||
|
||||
// Name returns the name of this plugin, "grpc".
|
||||
func (g *grpc) Name() string {
|
||||
return "grpc"
|
||||
}
|
||||
|
||||
// The names for packages imported in the generated code.
|
||||
// They may vary from the final path component of the import path
|
||||
// if the name is used by other packages.
|
||||
var (
|
||||
contextPkg string
|
||||
grpcPkg string
|
||||
)
|
||||
|
||||
// Init initializes the plugin.
|
||||
func (g *grpc) Init(gen *generator.Generator) {
|
||||
g.gen = gen
|
||||
contextPkg = generator.RegisterUniquePackageName("context", nil)
|
||||
grpcPkg = generator.RegisterUniquePackageName("grpc", nil)
|
||||
}
|
||||
|
||||
// Given a type name defined in a .proto, return its object.
|
||||
// Also record that we're using it, to guarantee the associated import.
|
||||
func (g *grpc) objectNamed(name string) generator.Object {
|
||||
g.gen.RecordTypeUse(name)
|
||||
return g.gen.ObjectNamed(name)
|
||||
}
|
||||
|
||||
// Given a type name defined in a .proto, return its name as we will print it.
|
||||
func (g *grpc) typeName(str string) string {
|
||||
return g.gen.TypeName(g.objectNamed(str))
|
||||
}
|
||||
|
||||
// P forwards to g.gen.P.
|
||||
func (g *grpc) P(args ...interface{}) { g.gen.P(args...) }
|
||||
|
||||
// Generate generates code for the services in the given file.
|
||||
func (g *grpc) Generate(file *generator.FileDescriptor) {
|
||||
if len(file.FileDescriptorProto.Service) == 0 {
|
||||
return
|
||||
}
|
||||
|
||||
g.P("// Reference imports to suppress errors if they are not otherwise used.")
|
||||
g.P("var _ ", contextPkg, ".Context")
|
||||
g.P("var _ ", grpcPkg, ".ClientConn")
|
||||
g.P()
|
||||
|
||||
// Assert version compatibility.
|
||||
g.P("// This is a compile-time assertion to ensure that this generated file")
|
||||
g.P("// is compatible with the grpc package it is being compiled against.")
|
||||
g.P("const _ = ", grpcPkg, ".SupportPackageIsVersion", generatedCodeVersion)
|
||||
g.P()
|
||||
|
||||
for i, service := range file.FileDescriptorProto.Service {
|
||||
g.generateService(file, service, i)
|
||||
}
|
||||
}
|
||||
|
||||
// GenerateImports generates the import declaration for this file.
|
||||
func (g *grpc) GenerateImports(file *generator.FileDescriptor) {
|
||||
if len(file.FileDescriptorProto.Service) == 0 {
|
||||
return
|
||||
}
|
||||
g.P("import (")
|
||||
g.P(contextPkg, " ", strconv.Quote(path.Join(g.gen.ImportPrefix, contextPkgPath)))
|
||||
g.P(grpcPkg, " ", strconv.Quote(path.Join(g.gen.ImportPrefix, grpcPkgPath)))
|
||||
g.P(")")
|
||||
g.P()
|
||||
}
|
||||
|
||||
// reservedClientName records whether a client name is reserved on the client side.
|
||||
var reservedClientName = map[string]bool{
|
||||
// TODO: do we need any in gRPC?
|
||||
}
|
||||
|
||||
func unexport(s string) string { return strings.ToLower(s[:1]) + s[1:] }
|
||||
|
||||
// generateService generates all the code for the named service.
|
||||
func (g *grpc) generateService(file *generator.FileDescriptor, service *pb.ServiceDescriptorProto, index int) {
|
||||
path := fmt.Sprintf("6,%d", index) // 6 means service.
|
||||
|
||||
origServName := service.GetName()
|
||||
fullServName := origServName
|
||||
if pkg := file.GetPackage(); pkg != "" {
|
||||
fullServName = pkg + "." + fullServName
|
||||
}
|
||||
servName := generator.CamelCase(origServName)
|
||||
|
||||
g.P()
|
||||
g.P("// Client API for ", servName, " service")
|
||||
g.P()
|
||||
|
||||
// Client interface.
|
||||
g.P("type ", servName, "Client interface {")
|
||||
for i, method := range service.Method {
|
||||
g.gen.PrintComments(fmt.Sprintf("%s,2,%d", path, i)) // 2 means method in a service.
|
||||
g.P(g.generateClientSignature(servName, method))
|
||||
}
|
||||
g.P("}")
|
||||
g.P()
|
||||
|
||||
// Client structure.
|
||||
g.P("type ", unexport(servName), "Client struct {")
|
||||
g.P("cc *", grpcPkg, ".ClientConn")
|
||||
g.P("}")
|
||||
g.P()
|
||||
|
||||
// NewClient factory.
|
||||
g.P("func New", servName, "Client (cc *", grpcPkg, ".ClientConn) ", servName, "Client {")
|
||||
g.P("return &", unexport(servName), "Client{cc}")
|
||||
g.P("}")
|
||||
g.P()
|
||||
|
||||
var methodIndex, streamIndex int
|
||||
serviceDescVar := "_" + servName + "_serviceDesc"
|
||||
// Client method implementations.
|
||||
for _, method := range service.Method {
|
||||
var descExpr string
|
||||
if !method.GetServerStreaming() && !method.GetClientStreaming() {
|
||||
// Unary RPC method
|
||||
descExpr = fmt.Sprintf("&%s.Methods[%d]", serviceDescVar, methodIndex)
|
||||
methodIndex++
|
||||
} else {
|
||||
// Streaming RPC method
|
||||
descExpr = fmt.Sprintf("&%s.Streams[%d]", serviceDescVar, streamIndex)
|
||||
streamIndex++
|
||||
}
|
||||
g.generateClientMethod(servName, fullServName, serviceDescVar, method, descExpr)
|
||||
}
|
||||
|
||||
g.P("// Server API for ", servName, " service")
|
||||
g.P()
|
||||
|
||||
// Server interface.
|
||||
serverType := servName + "Server"
|
||||
g.P("type ", serverType, " interface {")
|
||||
for i, method := range service.Method {
|
||||
g.gen.PrintComments(fmt.Sprintf("%s,2,%d", path, i)) // 2 means method in a service.
|
||||
g.P(g.generateServerSignature(servName, method))
|
||||
}
|
||||
g.P("}")
|
||||
g.P()
|
||||
|
||||
// Server registration.
|
||||
g.P("func Register", servName, "Server(s *", grpcPkg, ".Server, srv ", serverType, ") {")
|
||||
g.P("s.RegisterService(&", serviceDescVar, `, srv)`)
|
||||
g.P("}")
|
||||
g.P()
|
||||
|
||||
// Server handler implementations.
|
||||
var handlerNames []string
|
||||
for _, method := range service.Method {
|
||||
hname := g.generateServerMethod(servName, fullServName, method)
|
||||
handlerNames = append(handlerNames, hname)
|
||||
}
|
||||
|
||||
// Service descriptor.
|
||||
g.P("var ", serviceDescVar, " = ", grpcPkg, ".ServiceDesc {")
|
||||
g.P("ServiceName: ", strconv.Quote(fullServName), ",")
|
||||
g.P("HandlerType: (*", serverType, ")(nil),")
|
||||
g.P("Methods: []", grpcPkg, ".MethodDesc{")
|
||||
for i, method := range service.Method {
|
||||
if method.GetServerStreaming() || method.GetClientStreaming() {
|
||||
continue
|
||||
}
|
||||
g.P("{")
|
||||
g.P("MethodName: ", strconv.Quote(method.GetName()), ",")
|
||||
g.P("Handler: ", handlerNames[i], ",")
|
||||
g.P("},")
|
||||
}
|
||||
g.P("},")
|
||||
g.P("Streams: []", grpcPkg, ".StreamDesc{")
|
||||
for i, method := range service.Method {
|
||||
if !method.GetServerStreaming() && !method.GetClientStreaming() {
|
||||
continue
|
||||
}
|
||||
g.P("{")
|
||||
g.P("StreamName: ", strconv.Quote(method.GetName()), ",")
|
||||
g.P("Handler: ", handlerNames[i], ",")
|
||||
if method.GetServerStreaming() {
|
||||
g.P("ServerStreams: true,")
|
||||
}
|
||||
if method.GetClientStreaming() {
|
||||
g.P("ClientStreams: true,")
|
||||
}
|
||||
g.P("},")
|
||||
}
|
||||
g.P("},")
|
||||
g.P("Metadata: \"", file.GetName(), "\",")
|
||||
g.P("}")
|
||||
g.P()
|
||||
}
|
||||
|
||||
// generateClientSignature returns the client-side signature for a method.
|
||||
func (g *grpc) generateClientSignature(servName string, method *pb.MethodDescriptorProto) string {
|
||||
origMethName := method.GetName()
|
||||
methName := generator.CamelCase(origMethName)
|
||||
if reservedClientName[methName] {
|
||||
methName += "_"
|
||||
}
|
||||
reqArg := ", in *" + g.typeName(method.GetInputType())
|
||||
if method.GetClientStreaming() {
|
||||
reqArg = ""
|
||||
}
|
||||
respName := "*" + g.typeName(method.GetOutputType())
|
||||
if method.GetServerStreaming() || method.GetClientStreaming() {
|
||||
respName = servName + "_" + generator.CamelCase(origMethName) + "Client"
|
||||
}
|
||||
return fmt.Sprintf("%s(ctx %s.Context%s, opts ...%s.CallOption) (%s, error)", methName, contextPkg, reqArg, grpcPkg, respName)
|
||||
}
|
||||
|
||||
func (g *grpc) generateClientMethod(servName, fullServName, serviceDescVar string, method *pb.MethodDescriptorProto, descExpr string) {
|
||||
sname := fmt.Sprintf("/%s/%s", fullServName, method.GetName())
|
||||
methName := generator.CamelCase(method.GetName())
|
||||
inType := g.typeName(method.GetInputType())
|
||||
outType := g.typeName(method.GetOutputType())
|
||||
|
||||
g.P("func (c *", unexport(servName), "Client) ", g.generateClientSignature(servName, method), "{")
|
||||
if !method.GetServerStreaming() && !method.GetClientStreaming() {
|
||||
g.P("out := new(", outType, ")")
|
||||
// TODO: Pass descExpr to Invoke.
|
||||
g.P("err := ", grpcPkg, `.Invoke(ctx, "`, sname, `", in, out, c.cc, opts...)`)
|
||||
g.P("if err != nil { return nil, err }")
|
||||
g.P("return out, nil")
|
||||
g.P("}")
|
||||
g.P()
|
||||
return
|
||||
}
|
||||
streamType := unexport(servName) + methName + "Client"
|
||||
g.P("stream, err := ", grpcPkg, ".NewClientStream(ctx, ", descExpr, `, c.cc, "`, sname, `", opts...)`)
|
||||
g.P("if err != nil { return nil, err }")
|
||||
g.P("x := &", streamType, "{stream}")
|
||||
if !method.GetClientStreaming() {
|
||||
g.P("if err := x.ClientStream.SendMsg(in); err != nil { return nil, err }")
|
||||
g.P("if err := x.ClientStream.CloseSend(); err != nil { return nil, err }")
|
||||
}
|
||||
g.P("return x, nil")
|
||||
g.P("}")
|
||||
g.P()
|
||||
|
||||
genSend := method.GetClientStreaming()
|
||||
genRecv := method.GetServerStreaming()
|
||||
genCloseAndRecv := !method.GetServerStreaming()
|
||||
|
||||
// Stream auxiliary types and methods.
|
||||
g.P("type ", servName, "_", methName, "Client interface {")
|
||||
if genSend {
|
||||
g.P("Send(*", inType, ") error")
|
||||
}
|
||||
if genRecv {
|
||||
g.P("Recv() (*", outType, ", error)")
|
||||
}
|
||||
if genCloseAndRecv {
|
||||
g.P("CloseAndRecv() (*", outType, ", error)")
|
||||
}
|
||||
g.P(grpcPkg, ".ClientStream")
|
||||
g.P("}")
|
||||
g.P()
|
||||
|
||||
g.P("type ", streamType, " struct {")
|
||||
g.P(grpcPkg, ".ClientStream")
|
||||
g.P("}")
|
||||
g.P()
|
||||
|
||||
if genSend {
|
||||
g.P("func (x *", streamType, ") Send(m *", inType, ") error {")
|
||||
g.P("return x.ClientStream.SendMsg(m)")
|
||||
g.P("}")
|
||||
g.P()
|
||||
}
|
||||
if genRecv {
|
||||
g.P("func (x *", streamType, ") Recv() (*", outType, ", error) {")
|
||||
g.P("m := new(", outType, ")")
|
||||
g.P("if err := x.ClientStream.RecvMsg(m); err != nil { return nil, err }")
|
||||
g.P("return m, nil")
|
||||
g.P("}")
|
||||
g.P()
|
||||
}
|
||||
if genCloseAndRecv {
|
||||
g.P("func (x *", streamType, ") CloseAndRecv() (*", outType, ", error) {")
|
||||
g.P("if err := x.ClientStream.CloseSend(); err != nil { return nil, err }")
|
||||
g.P("m := new(", outType, ")")
|
||||
g.P("if err := x.ClientStream.RecvMsg(m); err != nil { return nil, err }")
|
||||
g.P("return m, nil")
|
||||
g.P("}")
|
||||
g.P()
|
||||
}
|
||||
}
|
||||
|
||||
// generateServerSignature returns the server-side signature for a method.
|
||||
func (g *grpc) generateServerSignature(servName string, method *pb.MethodDescriptorProto) string {
|
||||
origMethName := method.GetName()
|
||||
methName := generator.CamelCase(origMethName)
|
||||
if reservedClientName[methName] {
|
||||
methName += "_"
|
||||
}
|
||||
|
||||
var reqArgs []string
|
||||
ret := "error"
|
||||
if !method.GetServerStreaming() && !method.GetClientStreaming() {
|
||||
reqArgs = append(reqArgs, contextPkg+".Context")
|
||||
ret = "(*" + g.typeName(method.GetOutputType()) + ", error)"
|
||||
}
|
||||
if !method.GetClientStreaming() {
|
||||
reqArgs = append(reqArgs, "*"+g.typeName(method.GetInputType()))
|
||||
}
|
||||
if method.GetServerStreaming() || method.GetClientStreaming() {
|
||||
reqArgs = append(reqArgs, servName+"_"+generator.CamelCase(origMethName)+"Server")
|
||||
}
|
||||
|
||||
return methName + "(" + strings.Join(reqArgs, ", ") + ") " + ret
|
||||
}
|
||||
|
||||
func (g *grpc) generateServerMethod(servName, fullServName string, method *pb.MethodDescriptorProto) string {
|
||||
methName := generator.CamelCase(method.GetName())
|
||||
hname := fmt.Sprintf("_%s_%s_Handler", servName, methName)
|
||||
inType := g.typeName(method.GetInputType())
|
||||
outType := g.typeName(method.GetOutputType())
|
||||
|
||||
if !method.GetServerStreaming() && !method.GetClientStreaming() {
|
||||
g.P("func ", hname, "(srv interface{}, ctx ", contextPkg, ".Context, dec func(interface{}) error, interceptor ", grpcPkg, ".UnaryServerInterceptor) (interface{}, error) {")
|
||||
g.P("in := new(", inType, ")")
|
||||
g.P("if err := dec(in); err != nil { return nil, err }")
|
||||
g.P("if interceptor == nil { return srv.(", servName, "Server).", methName, "(ctx, in) }")
|
||||
g.P("info := &", grpcPkg, ".UnaryServerInfo{")
|
||||
g.P("Server: srv,")
|
||||
g.P("FullMethod: ", strconv.Quote(fmt.Sprintf("/%s/%s", fullServName, methName)), ",")
|
||||
g.P("}")
|
||||
g.P("handler := func(ctx ", contextPkg, ".Context, req interface{}) (interface{}, error) {")
|
||||
g.P("return srv.(", servName, "Server).", methName, "(ctx, req.(*", inType, "))")
|
||||
g.P("}")
|
||||
g.P("return interceptor(ctx, in, info, handler)")
|
||||
g.P("}")
|
||||
g.P()
|
||||
return hname
|
||||
}
|
||||
streamType := unexport(servName) + methName + "Server"
|
||||
g.P("func ", hname, "(srv interface{}, stream ", grpcPkg, ".ServerStream) error {")
|
||||
if !method.GetClientStreaming() {
|
||||
g.P("m := new(", inType, ")")
|
||||
g.P("if err := stream.RecvMsg(m); err != nil { return err }")
|
||||
g.P("return srv.(", servName, "Server).", methName, "(m, &", streamType, "{stream})")
|
||||
} else {
|
||||
g.P("return srv.(", servName, "Server).", methName, "(&", streamType, "{stream})")
|
||||
}
|
||||
g.P("}")
|
||||
g.P()
|
||||
|
||||
genSend := method.GetServerStreaming()
|
||||
genSendAndClose := !method.GetServerStreaming()
|
||||
genRecv := method.GetClientStreaming()
|
||||
|
||||
// Stream auxiliary types and methods.
|
||||
g.P("type ", servName, "_", methName, "Server interface {")
|
||||
if genSend {
|
||||
g.P("Send(*", outType, ") error")
|
||||
}
|
||||
if genSendAndClose {
|
||||
g.P("SendAndClose(*", outType, ") error")
|
||||
}
|
||||
if genRecv {
|
||||
g.P("Recv() (*", inType, ", error)")
|
||||
}
|
||||
g.P(grpcPkg, ".ServerStream")
|
||||
g.P("}")
|
||||
g.P()
|
||||
|
||||
g.P("type ", streamType, " struct {")
|
||||
g.P(grpcPkg, ".ServerStream")
|
||||
g.P("}")
|
||||
g.P()
|
||||
|
||||
if genSend {
|
||||
g.P("func (x *", streamType, ") Send(m *", outType, ") error {")
|
||||
g.P("return x.ServerStream.SendMsg(m)")
|
||||
g.P("}")
|
||||
g.P()
|
||||
}
|
||||
if genSendAndClose {
|
||||
g.P("func (x *", streamType, ") SendAndClose(m *", outType, ") error {")
|
||||
g.P("return x.ServerStream.SendMsg(m)")
|
||||
g.P("}")
|
||||
g.P()
|
||||
}
|
||||
if genRecv {
|
||||
g.P("func (x *", streamType, ") Recv() (*", inType, ", error) {")
|
||||
g.P("m := new(", inType, ")")
|
||||
g.P("if err := x.ServerStream.RecvMsg(m); err != nil { return nil, err }")
|
||||
g.P("return m, nil")
|
||||
g.P("}")
|
||||
g.P()
|
||||
}
|
||||
|
||||
return hname
|
||||
}
|
34
vendor/github.com/golang/protobuf/protoc-gen-go/link_grpc.go
generated
vendored
Normal file
34
vendor/github.com/golang/protobuf/protoc-gen-go/link_grpc.go
generated
vendored
Normal file
@ -0,0 +1,34 @@
|
||||
// Go support for Protocol Buffers - Google's data interchange format
|
||||
//
|
||||
// Copyright 2015 The Go Authors. All rights reserved.
|
||||
// https://github.com/golang/protobuf
|
||||
//
|
||||
// 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.
|
||||
|
||||
package main
|
||||
|
||||
import _ "github.com/golang/protobuf/protoc-gen-go/grpc"
|
98
vendor/github.com/golang/protobuf/protoc-gen-go/main.go
generated
vendored
Normal file
98
vendor/github.com/golang/protobuf/protoc-gen-go/main.go
generated
vendored
Normal file
@ -0,0 +1,98 @@
|
||||
// Go support for Protocol Buffers - Google's data interchange format
|
||||
//
|
||||
// Copyright 2010 The Go Authors. All rights reserved.
|
||||
// https://github.com/golang/protobuf
|
||||
//
|
||||
// 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.
|
||||
|
||||
// protoc-gen-go is a plugin for the Google protocol buffer compiler to generate
|
||||
// Go code. Run it by building this program and putting it in your path with
|
||||
// the name
|
||||
// protoc-gen-go
|
||||
// That word 'go' at the end becomes part of the option string set for the
|
||||
// protocol compiler, so once the protocol compiler (protoc) is installed
|
||||
// you can run
|
||||
// protoc --go_out=output_directory input_directory/file.proto
|
||||
// to generate Go bindings for the protocol defined by file.proto.
|
||||
// With that input, the output will be written to
|
||||
// output_directory/file.pb.go
|
||||
//
|
||||
// The generated code is documented in the package comment for
|
||||
// the library.
|
||||
//
|
||||
// See the README and documentation for protocol buffers to learn more:
|
||||
// https://developers.google.com/protocol-buffers/
|
||||
package main
|
||||
|
||||
import (
|
||||
"io/ioutil"
|
||||
"os"
|
||||
|
||||
"github.com/golang/protobuf/proto"
|
||||
"github.com/golang/protobuf/protoc-gen-go/generator"
|
||||
)
|
||||
|
||||
func main() {
|
||||
// Begin by allocating a generator. The request and response structures are stored there
|
||||
// so we can do error handling easily - the response structure contains the field to
|
||||
// report failure.
|
||||
g := generator.New()
|
||||
|
||||
data, err := ioutil.ReadAll(os.Stdin)
|
||||
if err != nil {
|
||||
g.Error(err, "reading input")
|
||||
}
|
||||
|
||||
if err := proto.Unmarshal(data, g.Request); err != nil {
|
||||
g.Error(err, "parsing input proto")
|
||||
}
|
||||
|
||||
if len(g.Request.FileToGenerate) == 0 {
|
||||
g.Fail("no files to generate")
|
||||
}
|
||||
|
||||
g.CommandLineParameters(g.Request.GetParameter())
|
||||
|
||||
// Create a wrapped version of the Descriptors and EnumDescriptors that
|
||||
// point to the file that defines them.
|
||||
g.WrapTypes()
|
||||
|
||||
g.SetPackageNames()
|
||||
g.BuildTypeNameMap()
|
||||
|
||||
g.GenerateAllFiles()
|
||||
|
||||
// Send back the results.
|
||||
data, err = proto.Marshal(g.Response)
|
||||
if err != nil {
|
||||
g.Error(err, "failed to marshal output proto")
|
||||
}
|
||||
_, err = os.Stdout.Write(data)
|
||||
if err != nil {
|
||||
g.Error(err, "failed to write output proto")
|
||||
}
|
||||
}
|
45
vendor/github.com/golang/protobuf/protoc-gen-go/plugin/Makefile
generated
vendored
Normal file
45
vendor/github.com/golang/protobuf/protoc-gen-go/plugin/Makefile
generated
vendored
Normal file
@ -0,0 +1,45 @@
|
||||
# Go support for Protocol Buffers - Google's data interchange format
|
||||
#
|
||||
# Copyright 2010 The Go Authors. All rights reserved.
|
||||
# https://github.com/golang/protobuf
|
||||
#
|
||||
# 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.
|
||||
|
||||
# Not stored here, but plugin.proto is in https://github.com/google/protobuf/
|
||||
# at src/google/protobuf/compiler/plugin.proto
|
||||
# Also we need to fix an import.
|
||||
regenerate:
|
||||
@echo WARNING! THIS RULE IS PROBABLY NOT RIGHT FOR YOUR INSTALLATION
|
||||
cp $(HOME)/src/protobuf/include/google/protobuf/compiler/plugin.proto .
|
||||
protoc --go_out=Mgoogle/protobuf/descriptor.proto=github.com/golang/protobuf/protoc-gen-go/descriptor:../../../../.. \
|
||||
-I$(HOME)/src/protobuf/include $(HOME)/src/protobuf/include/google/protobuf/compiler/plugin.proto
|
||||
|
||||
restore:
|
||||
cp plugin.pb.golden plugin.pb.go
|
||||
|
||||
preserve:
|
||||
cp plugin.pb.go plugin.pb.golden
|
293
vendor/github.com/golang/protobuf/protoc-gen-go/plugin/plugin.pb.go
generated
vendored
Normal file
293
vendor/github.com/golang/protobuf/protoc-gen-go/plugin/plugin.pb.go
generated
vendored
Normal file
@ -0,0 +1,293 @@
|
||||
// Code generated by protoc-gen-go. DO NOT EDIT.
|
||||
// source: google/protobuf/compiler/plugin.proto
|
||||
|
||||
/*
|
||||
Package plugin_go is a generated protocol buffer package.
|
||||
|
||||
It is generated from these files:
|
||||
google/protobuf/compiler/plugin.proto
|
||||
|
||||
It has these top-level messages:
|
||||
Version
|
||||
CodeGeneratorRequest
|
||||
CodeGeneratorResponse
|
||||
*/
|
||||
package plugin_go
|
||||
|
||||
import proto "github.com/golang/protobuf/proto"
|
||||
import fmt "fmt"
|
||||
import math "math"
|
||||
import google_protobuf "github.com/golang/protobuf/protoc-gen-go/descriptor"
|
||||
|
||||
// Reference imports to suppress errors if they are not otherwise used.
|
||||
var _ = proto.Marshal
|
||||
var _ = fmt.Errorf
|
||||
var _ = math.Inf
|
||||
|
||||
// This is a compile-time assertion to ensure that this generated file
|
||||
// is compatible with the proto package it is being compiled against.
|
||||
// A compilation error at this line likely means your copy of the
|
||||
// proto package needs to be updated.
|
||||
const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package
|
||||
|
||||
// The version number of protocol compiler.
|
||||
type Version struct {
|
||||
Major *int32 `protobuf:"varint,1,opt,name=major" json:"major,omitempty"`
|
||||
Minor *int32 `protobuf:"varint,2,opt,name=minor" json:"minor,omitempty"`
|
||||
Patch *int32 `protobuf:"varint,3,opt,name=patch" json:"patch,omitempty"`
|
||||
// A suffix for alpha, beta or rc release, e.g., "alpha-1", "rc2". It should
|
||||
// be empty for mainline stable releases.
|
||||
Suffix *string `protobuf:"bytes,4,opt,name=suffix" json:"suffix,omitempty"`
|
||||
XXX_unrecognized []byte `json:"-"`
|
||||
}
|
||||
|
||||
func (m *Version) Reset() { *m = Version{} }
|
||||
func (m *Version) String() string { return proto.CompactTextString(m) }
|
||||
func (*Version) ProtoMessage() {}
|
||||
func (*Version) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{0} }
|
||||
|
||||
func (m *Version) GetMajor() int32 {
|
||||
if m != nil && m.Major != nil {
|
||||
return *m.Major
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
func (m *Version) GetMinor() int32 {
|
||||
if m != nil && m.Minor != nil {
|
||||
return *m.Minor
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
func (m *Version) GetPatch() int32 {
|
||||
if m != nil && m.Patch != nil {
|
||||
return *m.Patch
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
func (m *Version) GetSuffix() string {
|
||||
if m != nil && m.Suffix != nil {
|
||||
return *m.Suffix
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
// An encoded CodeGeneratorRequest is written to the plugin's stdin.
|
||||
type CodeGeneratorRequest struct {
|
||||
// The .proto files that were explicitly listed on the command-line. The
|
||||
// code generator should generate code only for these files. Each file's
|
||||
// descriptor will be included in proto_file, below.
|
||||
FileToGenerate []string `protobuf:"bytes,1,rep,name=file_to_generate,json=fileToGenerate" json:"file_to_generate,omitempty"`
|
||||
// The generator parameter passed on the command-line.
|
||||
Parameter *string `protobuf:"bytes,2,opt,name=parameter" json:"parameter,omitempty"`
|
||||
// FileDescriptorProtos for all files in files_to_generate and everything
|
||||
// they import. The files will appear in topological order, so each file
|
||||
// appears before any file that imports it.
|
||||
//
|
||||
// protoc guarantees that all proto_files will be written after
|
||||
// the fields above, even though this is not technically guaranteed by the
|
||||
// protobuf wire format. This theoretically could allow a plugin to stream
|
||||
// in the FileDescriptorProtos and handle them one by one rather than read
|
||||
// the entire set into memory at once. However, as of this writing, this
|
||||
// is not similarly optimized on protoc's end -- it will store all fields in
|
||||
// memory at once before sending them to the plugin.
|
||||
//
|
||||
// Type names of fields and extensions in the FileDescriptorProto are always
|
||||
// fully qualified.
|
||||
ProtoFile []*google_protobuf.FileDescriptorProto `protobuf:"bytes,15,rep,name=proto_file,json=protoFile" json:"proto_file,omitempty"`
|
||||
// The version number of protocol compiler.
|
||||
CompilerVersion *Version `protobuf:"bytes,3,opt,name=compiler_version,json=compilerVersion" json:"compiler_version,omitempty"`
|
||||
XXX_unrecognized []byte `json:"-"`
|
||||
}
|
||||
|
||||
func (m *CodeGeneratorRequest) Reset() { *m = CodeGeneratorRequest{} }
|
||||
func (m *CodeGeneratorRequest) String() string { return proto.CompactTextString(m) }
|
||||
func (*CodeGeneratorRequest) ProtoMessage() {}
|
||||
func (*CodeGeneratorRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{1} }
|
||||
|
||||
func (m *CodeGeneratorRequest) GetFileToGenerate() []string {
|
||||
if m != nil {
|
||||
return m.FileToGenerate
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (m *CodeGeneratorRequest) GetParameter() string {
|
||||
if m != nil && m.Parameter != nil {
|
||||
return *m.Parameter
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
func (m *CodeGeneratorRequest) GetProtoFile() []*google_protobuf.FileDescriptorProto {
|
||||
if m != nil {
|
||||
return m.ProtoFile
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (m *CodeGeneratorRequest) GetCompilerVersion() *Version {
|
||||
if m != nil {
|
||||
return m.CompilerVersion
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// The plugin writes an encoded CodeGeneratorResponse to stdout.
|
||||
type CodeGeneratorResponse struct {
|
||||
// Error message. If non-empty, code generation failed. The plugin process
|
||||
// should exit with status code zero even if it reports an error in this way.
|
||||
//
|
||||
// This should be used to indicate errors in .proto files which prevent the
|
||||
// code generator from generating correct code. Errors which indicate a
|
||||
// problem in protoc itself -- such as the input CodeGeneratorRequest being
|
||||
// unparseable -- should be reported by writing a message to stderr and
|
||||
// exiting with a non-zero status code.
|
||||
Error *string `protobuf:"bytes,1,opt,name=error" json:"error,omitempty"`
|
||||
File []*CodeGeneratorResponse_File `protobuf:"bytes,15,rep,name=file" json:"file,omitempty"`
|
||||
XXX_unrecognized []byte `json:"-"`
|
||||
}
|
||||
|
||||
func (m *CodeGeneratorResponse) Reset() { *m = CodeGeneratorResponse{} }
|
||||
func (m *CodeGeneratorResponse) String() string { return proto.CompactTextString(m) }
|
||||
func (*CodeGeneratorResponse) ProtoMessage() {}
|
||||
func (*CodeGeneratorResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{2} }
|
||||
|
||||
func (m *CodeGeneratorResponse) GetError() string {
|
||||
if m != nil && m.Error != nil {
|
||||
return *m.Error
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
func (m *CodeGeneratorResponse) GetFile() []*CodeGeneratorResponse_File {
|
||||
if m != nil {
|
||||
return m.File
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// Represents a single generated file.
|
||||
type CodeGeneratorResponse_File struct {
|
||||
// The file name, relative to the output directory. The name must not
|
||||
// contain "." or ".." components and must be relative, not be absolute (so,
|
||||
// the file cannot lie outside the output directory). "/" must be used as
|
||||
// the path separator, not "\".
|
||||
//
|
||||
// If the name is omitted, the content will be appended to the previous
|
||||
// file. This allows the generator to break large files into small chunks,
|
||||
// and allows the generated text to be streamed back to protoc so that large
|
||||
// files need not reside completely in memory at one time. Note that as of
|
||||
// this writing protoc does not optimize for this -- it will read the entire
|
||||
// CodeGeneratorResponse before writing files to disk.
|
||||
Name *string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
|
||||
// If non-empty, indicates that the named file should already exist, and the
|
||||
// content here is to be inserted into that file at a defined insertion
|
||||
// point. This feature allows a code generator to extend the output
|
||||
// produced by another code generator. The original generator may provide
|
||||
// insertion points by placing special annotations in the file that look
|
||||
// like:
|
||||
// @@protoc_insertion_point(NAME)
|
||||
// The annotation can have arbitrary text before and after it on the line,
|
||||
// which allows it to be placed in a comment. NAME should be replaced with
|
||||
// an identifier naming the point -- this is what other generators will use
|
||||
// as the insertion_point. Code inserted at this point will be placed
|
||||
// immediately above the line containing the insertion point (thus multiple
|
||||
// insertions to the same point will come out in the order they were added).
|
||||
// The double-@ is intended to make it unlikely that the generated code
|
||||
// could contain things that look like insertion points by accident.
|
||||
//
|
||||
// For example, the C++ code generator places the following line in the
|
||||
// .pb.h files that it generates:
|
||||
// // @@protoc_insertion_point(namespace_scope)
|
||||
// This line appears within the scope of the file's package namespace, but
|
||||
// outside of any particular class. Another plugin can then specify the
|
||||
// insertion_point "namespace_scope" to generate additional classes or
|
||||
// other declarations that should be placed in this scope.
|
||||
//
|
||||
// Note that if the line containing the insertion point begins with
|
||||
// whitespace, the same whitespace will be added to every line of the
|
||||
// inserted text. This is useful for languages like Python, where
|
||||
// indentation matters. In these languages, the insertion point comment
|
||||
// should be indented the same amount as any inserted code will need to be
|
||||
// in order to work correctly in that context.
|
||||
//
|
||||
// The code generator that generates the initial file and the one which
|
||||
// inserts into it must both run as part of a single invocation of protoc.
|
||||
// Code generators are executed in the order in which they appear on the
|
||||
// command line.
|
||||
//
|
||||
// If |insertion_point| is present, |name| must also be present.
|
||||
InsertionPoint *string `protobuf:"bytes,2,opt,name=insertion_point,json=insertionPoint" json:"insertion_point,omitempty"`
|
||||
// The file contents.
|
||||
Content *string `protobuf:"bytes,15,opt,name=content" json:"content,omitempty"`
|
||||
XXX_unrecognized []byte `json:"-"`
|
||||
}
|
||||
|
||||
func (m *CodeGeneratorResponse_File) Reset() { *m = CodeGeneratorResponse_File{} }
|
||||
func (m *CodeGeneratorResponse_File) String() string { return proto.CompactTextString(m) }
|
||||
func (*CodeGeneratorResponse_File) ProtoMessage() {}
|
||||
func (*CodeGeneratorResponse_File) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{2, 0} }
|
||||
|
||||
func (m *CodeGeneratorResponse_File) GetName() string {
|
||||
if m != nil && m.Name != nil {
|
||||
return *m.Name
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
func (m *CodeGeneratorResponse_File) GetInsertionPoint() string {
|
||||
if m != nil && m.InsertionPoint != nil {
|
||||
return *m.InsertionPoint
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
func (m *CodeGeneratorResponse_File) GetContent() string {
|
||||
if m != nil && m.Content != nil {
|
||||
return *m.Content
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
func init() {
|
||||
proto.RegisterType((*Version)(nil), "google.protobuf.compiler.Version")
|
||||
proto.RegisterType((*CodeGeneratorRequest)(nil), "google.protobuf.compiler.CodeGeneratorRequest")
|
||||
proto.RegisterType((*CodeGeneratorResponse)(nil), "google.protobuf.compiler.CodeGeneratorResponse")
|
||||
proto.RegisterType((*CodeGeneratorResponse_File)(nil), "google.protobuf.compiler.CodeGeneratorResponse.File")
|
||||
}
|
||||
|
||||
func init() { proto.RegisterFile("google/protobuf/compiler/plugin.proto", fileDescriptor0) }
|
||||
|
||||
var fileDescriptor0 = []byte{
|
||||
// 417 bytes of a gzipped FileDescriptorProto
|
||||
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x74, 0x92, 0xcf, 0x6a, 0x14, 0x41,
|
||||
0x10, 0xc6, 0x19, 0x77, 0x63, 0x98, 0x8a, 0x64, 0x43, 0x13, 0xa5, 0x09, 0x39, 0x8c, 0x8b, 0xe2,
|
||||
0x5c, 0x32, 0x0b, 0xc1, 0x8b, 0x78, 0x4b, 0x44, 0x3d, 0x78, 0x58, 0x1a, 0xf1, 0x20, 0xc8, 0x30,
|
||||
0x99, 0xd4, 0x74, 0x5a, 0x66, 0xba, 0xc6, 0xee, 0x1e, 0xf1, 0x49, 0x7d, 0x0f, 0xdf, 0x40, 0xfa,
|
||||
0xcf, 0x24, 0xb2, 0xb8, 0xa7, 0xee, 0xef, 0x57, 0xd5, 0xd5, 0x55, 0x1f, 0x05, 0x2f, 0x25, 0x91,
|
||||
0xec, 0x71, 0x33, 0x1a, 0x72, 0x74, 0x33, 0x75, 0x9b, 0x96, 0x86, 0x51, 0xf5, 0x68, 0x36, 0x63,
|
||||
0x3f, 0x49, 0xa5, 0xab, 0x10, 0x60, 0x3c, 0xa6, 0x55, 0x73, 0x5a, 0x35, 0xa7, 0x9d, 0x15, 0xbb,
|
||||
0x05, 0x6e, 0xd1, 0xb6, 0x46, 0x8d, 0x8e, 0x4c, 0xcc, 0x5e, 0xb7, 0x70, 0xf8, 0x05, 0x8d, 0x55,
|
||||
0xa4, 0xd9, 0x29, 0x1c, 0x0c, 0xcd, 0x77, 0x32, 0x3c, 0x2b, 0xb2, 0xf2, 0x40, 0x44, 0x11, 0xa8,
|
||||
0xd2, 0x64, 0xf8, 0xa3, 0x44, 0xbd, 0xf0, 0x74, 0x6c, 0x5c, 0x7b, 0xc7, 0x17, 0x91, 0x06, 0xc1,
|
||||
0x9e, 0xc1, 0x63, 0x3b, 0x75, 0x9d, 0xfa, 0xc5, 0x97, 0x45, 0x56, 0xe6, 0x22, 0xa9, 0xf5, 0x9f,
|
||||
0x0c, 0x4e, 0xaf, 0xe9, 0x16, 0x3f, 0xa0, 0x46, 0xd3, 0x38, 0x32, 0x02, 0x7f, 0x4c, 0x68, 0x1d,
|
||||
0x2b, 0xe1, 0xa4, 0x53, 0x3d, 0xd6, 0x8e, 0x6a, 0x19, 0x63, 0xc8, 0xb3, 0x62, 0x51, 0xe6, 0xe2,
|
||||
0xd8, 0xf3, 0xcf, 0x94, 0x5e, 0x20, 0x3b, 0x87, 0x7c, 0x6c, 0x4c, 0x33, 0xa0, 0xc3, 0xd8, 0x4a,
|
||||
0x2e, 0x1e, 0x00, 0xbb, 0x06, 0x08, 0xe3, 0xd4, 0xfe, 0x15, 0x5f, 0x15, 0x8b, 0xf2, 0xe8, 0xf2,
|
||||
0x45, 0xb5, 0x6b, 0xcb, 0x7b, 0xd5, 0xe3, 0xbb, 0x7b, 0x03, 0xb6, 0x1e, 0x8b, 0x3c, 0x44, 0x7d,
|
||||
0x84, 0x7d, 0x82, 0x93, 0xd9, 0xb8, 0xfa, 0x67, 0xf4, 0x24, 0x8c, 0x77, 0x74, 0xf9, 0xbc, 0xda,
|
||||
0xe7, 0x70, 0x95, 0xcc, 0x13, 0xab, 0x99, 0x24, 0xb0, 0xfe, 0x9d, 0xc1, 0xd3, 0x9d, 0x99, 0xed,
|
||||
0x48, 0xda, 0xa2, 0xf7, 0x0e, 0x8d, 0x49, 0x3e, 0xe7, 0x22, 0x0a, 0xf6, 0x11, 0x96, 0xff, 0x34,
|
||||
0xff, 0x7a, 0xff, 0x8f, 0xff, 0x2d, 0x1a, 0x66, 0x13, 0xa1, 0xc2, 0xd9, 0x37, 0x58, 0x86, 0x79,
|
||||
0x18, 0x2c, 0x75, 0x33, 0x60, 0xfa, 0x26, 0xdc, 0xd9, 0x2b, 0x58, 0x29, 0x6d, 0xd1, 0x38, 0x45,
|
||||
0xba, 0x1e, 0x49, 0x69, 0x97, 0xcc, 0x3c, 0xbe, 0xc7, 0x5b, 0x4f, 0x19, 0x87, 0xc3, 0x96, 0xb4,
|
||||
0x43, 0xed, 0xf8, 0x2a, 0x24, 0xcc, 0xf2, 0x4a, 0xc2, 0x79, 0x4b, 0xc3, 0xde, 0xfe, 0xae, 0x9e,
|
||||
0x6c, 0xc3, 0x6e, 0x06, 0x7b, 0xed, 0xd7, 0x37, 0x52, 0xb9, 0xbb, 0xe9, 0xc6, 0x87, 0x37, 0x92,
|
||||
0xfa, 0x46, 0xcb, 0x87, 0x65, 0x0c, 0x97, 0xf6, 0x42, 0xa2, 0xbe, 0x90, 0x94, 0x56, 0xfa, 0x6d,
|
||||
0x3c, 0x6a, 0x49, 0x7f, 0x03, 0x00, 0x00, 0xff, 0xff, 0xf7, 0x15, 0x40, 0xc5, 0xfe, 0x02, 0x00,
|
||||
0x00,
|
||||
}
|
83
vendor/github.com/golang/protobuf/protoc-gen-go/plugin/plugin.pb.golden
generated
vendored
Normal file
83
vendor/github.com/golang/protobuf/protoc-gen-go/plugin/plugin.pb.golden
generated
vendored
Normal file
@ -0,0 +1,83 @@
|
||||
// Code generated by protoc-gen-go.
|
||||
// source: google/protobuf/compiler/plugin.proto
|
||||
// DO NOT EDIT!
|
||||
|
||||
package google_protobuf_compiler
|
||||
|
||||
import proto "github.com/golang/protobuf/proto"
|
||||
import "math"
|
||||
import google_protobuf "github.com/golang/protobuf/protoc-gen-go/descriptor"
|
||||
|
||||
// Reference proto and math imports to suppress error if they are not otherwise used.
|
||||
var _ = proto.GetString
|
||||
var _ = math.Inf
|
||||
|
||||
type CodeGeneratorRequest struct {
|
||||
FileToGenerate []string `protobuf:"bytes,1,rep,name=file_to_generate" json:"file_to_generate,omitempty"`
|
||||
Parameter *string `protobuf:"bytes,2,opt,name=parameter" json:"parameter,omitempty"`
|
||||
ProtoFile []*google_protobuf.FileDescriptorProto `protobuf:"bytes,15,rep,name=proto_file" json:"proto_file,omitempty"`
|
||||
XXX_unrecognized []byte `json:"-"`
|
||||
}
|
||||
|
||||
func (this *CodeGeneratorRequest) Reset() { *this = CodeGeneratorRequest{} }
|
||||
func (this *CodeGeneratorRequest) String() string { return proto.CompactTextString(this) }
|
||||
func (*CodeGeneratorRequest) ProtoMessage() {}
|
||||
|
||||
func (this *CodeGeneratorRequest) GetParameter() string {
|
||||
if this != nil && this.Parameter != nil {
|
||||
return *this.Parameter
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
type CodeGeneratorResponse struct {
|
||||
Error *string `protobuf:"bytes,1,opt,name=error" json:"error,omitempty"`
|
||||
File []*CodeGeneratorResponse_File `protobuf:"bytes,15,rep,name=file" json:"file,omitempty"`
|
||||
XXX_unrecognized []byte `json:"-"`
|
||||
}
|
||||
|
||||
func (this *CodeGeneratorResponse) Reset() { *this = CodeGeneratorResponse{} }
|
||||
func (this *CodeGeneratorResponse) String() string { return proto.CompactTextString(this) }
|
||||
func (*CodeGeneratorResponse) ProtoMessage() {}
|
||||
|
||||
func (this *CodeGeneratorResponse) GetError() string {
|
||||
if this != nil && this.Error != nil {
|
||||
return *this.Error
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
type CodeGeneratorResponse_File struct {
|
||||
Name *string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
|
||||
InsertionPoint *string `protobuf:"bytes,2,opt,name=insertion_point" json:"insertion_point,omitempty"`
|
||||
Content *string `protobuf:"bytes,15,opt,name=content" json:"content,omitempty"`
|
||||
XXX_unrecognized []byte `json:"-"`
|
||||
}
|
||||
|
||||
func (this *CodeGeneratorResponse_File) Reset() { *this = CodeGeneratorResponse_File{} }
|
||||
func (this *CodeGeneratorResponse_File) String() string { return proto.CompactTextString(this) }
|
||||
func (*CodeGeneratorResponse_File) ProtoMessage() {}
|
||||
|
||||
func (this *CodeGeneratorResponse_File) GetName() string {
|
||||
if this != nil && this.Name != nil {
|
||||
return *this.Name
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
func (this *CodeGeneratorResponse_File) GetInsertionPoint() string {
|
||||
if this != nil && this.InsertionPoint != nil {
|
||||
return *this.InsertionPoint
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
func (this *CodeGeneratorResponse_File) GetContent() string {
|
||||
if this != nil && this.Content != nil {
|
||||
return *this.Content
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
func init() {
|
||||
}
|
167
vendor/github.com/golang/protobuf/protoc-gen-go/plugin/plugin.proto
generated
vendored
Normal file
167
vendor/github.com/golang/protobuf/protoc-gen-go/plugin/plugin.proto
generated
vendored
Normal file
@ -0,0 +1,167 @@
|
||||
// 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: kenton@google.com (Kenton Varda)
|
||||
//
|
||||
// WARNING: The plugin interface is currently EXPERIMENTAL and is subject to
|
||||
// change.
|
||||
//
|
||||
// protoc (aka the Protocol Compiler) can be extended via plugins. A plugin is
|
||||
// just a program that reads a CodeGeneratorRequest from stdin and writes a
|
||||
// CodeGeneratorResponse to stdout.
|
||||
//
|
||||
// Plugins written using C++ can use google/protobuf/compiler/plugin.h instead
|
||||
// of dealing with the raw protocol defined here.
|
||||
//
|
||||
// A plugin executable needs only to be placed somewhere in the path. The
|
||||
// plugin should be named "protoc-gen-$NAME", and will then be used when the
|
||||
// flag "--${NAME}_out" is passed to protoc.
|
||||
|
||||
syntax = "proto2";
|
||||
package google.protobuf.compiler;
|
||||
option java_package = "com.google.protobuf.compiler";
|
||||
option java_outer_classname = "PluginProtos";
|
||||
|
||||
option go_package = "github.com/golang/protobuf/protoc-gen-go/plugin;plugin_go";
|
||||
|
||||
import "google/protobuf/descriptor.proto";
|
||||
|
||||
// The version number of protocol compiler.
|
||||
message Version {
|
||||
optional int32 major = 1;
|
||||
optional int32 minor = 2;
|
||||
optional int32 patch = 3;
|
||||
// A suffix for alpha, beta or rc release, e.g., "alpha-1", "rc2". It should
|
||||
// be empty for mainline stable releases.
|
||||
optional string suffix = 4;
|
||||
}
|
||||
|
||||
// An encoded CodeGeneratorRequest is written to the plugin's stdin.
|
||||
message CodeGeneratorRequest {
|
||||
// The .proto files that were explicitly listed on the command-line. The
|
||||
// code generator should generate code only for these files. Each file's
|
||||
// descriptor will be included in proto_file, below.
|
||||
repeated string file_to_generate = 1;
|
||||
|
||||
// The generator parameter passed on the command-line.
|
||||
optional string parameter = 2;
|
||||
|
||||
// FileDescriptorProtos for all files in files_to_generate and everything
|
||||
// they import. The files will appear in topological order, so each file
|
||||
// appears before any file that imports it.
|
||||
//
|
||||
// protoc guarantees that all proto_files will be written after
|
||||
// the fields above, even though this is not technically guaranteed by the
|
||||
// protobuf wire format. This theoretically could allow a plugin to stream
|
||||
// in the FileDescriptorProtos and handle them one by one rather than read
|
||||
// the entire set into memory at once. However, as of this writing, this
|
||||
// is not similarly optimized on protoc's end -- it will store all fields in
|
||||
// memory at once before sending them to the plugin.
|
||||
//
|
||||
// Type names of fields and extensions in the FileDescriptorProto are always
|
||||
// fully qualified.
|
||||
repeated FileDescriptorProto proto_file = 15;
|
||||
|
||||
// The version number of protocol compiler.
|
||||
optional Version compiler_version = 3;
|
||||
|
||||
}
|
||||
|
||||
// The plugin writes an encoded CodeGeneratorResponse to stdout.
|
||||
message CodeGeneratorResponse {
|
||||
// Error message. If non-empty, code generation failed. The plugin process
|
||||
// should exit with status code zero even if it reports an error in this way.
|
||||
//
|
||||
// This should be used to indicate errors in .proto files which prevent the
|
||||
// code generator from generating correct code. Errors which indicate a
|
||||
// problem in protoc itself -- such as the input CodeGeneratorRequest being
|
||||
// unparseable -- should be reported by writing a message to stderr and
|
||||
// exiting with a non-zero status code.
|
||||
optional string error = 1;
|
||||
|
||||
// Represents a single generated file.
|
||||
message File {
|
||||
// The file name, relative to the output directory. The name must not
|
||||
// contain "." or ".." components and must be relative, not be absolute (so,
|
||||
// the file cannot lie outside the output directory). "/" must be used as
|
||||
// the path separator, not "\".
|
||||
//
|
||||
// If the name is omitted, the content will be appended to the previous
|
||||
// file. This allows the generator to break large files into small chunks,
|
||||
// and allows the generated text to be streamed back to protoc so that large
|
||||
// files need not reside completely in memory at one time. Note that as of
|
||||
// this writing protoc does not optimize for this -- it will read the entire
|
||||
// CodeGeneratorResponse before writing files to disk.
|
||||
optional string name = 1;
|
||||
|
||||
// If non-empty, indicates that the named file should already exist, and the
|
||||
// content here is to be inserted into that file at a defined insertion
|
||||
// point. This feature allows a code generator to extend the output
|
||||
// produced by another code generator. The original generator may provide
|
||||
// insertion points by placing special annotations in the file that look
|
||||
// like:
|
||||
// @@protoc_insertion_point(NAME)
|
||||
// The annotation can have arbitrary text before and after it on the line,
|
||||
// which allows it to be placed in a comment. NAME should be replaced with
|
||||
// an identifier naming the point -- this is what other generators will use
|
||||
// as the insertion_point. Code inserted at this point will be placed
|
||||
// immediately above the line containing the insertion point (thus multiple
|
||||
// insertions to the same point will come out in the order they were added).
|
||||
// The double-@ is intended to make it unlikely that the generated code
|
||||
// could contain things that look like insertion points by accident.
|
||||
//
|
||||
// For example, the C++ code generator places the following line in the
|
||||
// .pb.h files that it generates:
|
||||
// // @@protoc_insertion_point(namespace_scope)
|
||||
// This line appears within the scope of the file's package namespace, but
|
||||
// outside of any particular class. Another plugin can then specify the
|
||||
// insertion_point "namespace_scope" to generate additional classes or
|
||||
// other declarations that should be placed in this scope.
|
||||
//
|
||||
// Note that if the line containing the insertion point begins with
|
||||
// whitespace, the same whitespace will be added to every line of the
|
||||
// inserted text. This is useful for languages like Python, where
|
||||
// indentation matters. In these languages, the insertion point comment
|
||||
// should be indented the same amount as any inserted code will need to be
|
||||
// in order to work correctly in that context.
|
||||
//
|
||||
// The code generator that generates the initial file and the one which
|
||||
// inserts into it must both run as part of a single invocation of protoc.
|
||||
// Code generators are executed in the order in which they appear on the
|
||||
// command line.
|
||||
//
|
||||
// If |insertion_point| is present, |name| must also be present.
|
||||
optional string insertion_point = 2;
|
||||
|
||||
// The file contents.
|
||||
optional string content = 15;
|
||||
}
|
||||
repeated File file = 15;
|
||||
}
|
73
vendor/github.com/golang/protobuf/protoc-gen-go/testdata/Makefile
generated
vendored
Normal file
73
vendor/github.com/golang/protobuf/protoc-gen-go/testdata/Makefile
generated
vendored
Normal file
@ -0,0 +1,73 @@
|
||||
# Go support for Protocol Buffers - Google's data interchange format
|
||||
#
|
||||
# Copyright 2010 The Go Authors. All rights reserved.
|
||||
# https://github.com/golang/protobuf
|
||||
#
|
||||
# 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.
|
||||
|
||||
all:
|
||||
@echo run make test
|
||||
|
||||
include ../../Make.protobuf
|
||||
|
||||
test: golden testbuild
|
||||
|
||||
#test: golden testbuild extension_test
|
||||
# ./extension_test
|
||||
# @echo PASS
|
||||
|
||||
my_test/test.pb.go: my_test/test.proto
|
||||
protoc --go_out=Mmulti/multi1.proto=github.com/golang/protobuf/protoc-gen-go/testdata/multi:. $<
|
||||
|
||||
golden:
|
||||
make -B my_test/test.pb.go
|
||||
sed -i -e '/return.*fileDescriptor/d' my_test/test.pb.go
|
||||
sed -i -e '/^var fileDescriptor/,/^}/d' my_test/test.pb.go
|
||||
sed -i -e '/proto.RegisterFile.*fileDescriptor/d' my_test/test.pb.go
|
||||
gofmt -w my_test/test.pb.go
|
||||
diff -w my_test/test.pb.go my_test/test.pb.go.golden
|
||||
|
||||
nuke: clean
|
||||
|
||||
testbuild: regenerate
|
||||
go test
|
||||
|
||||
regenerate:
|
||||
# Invoke protoc once to generate three independent .pb.go files in the same package.
|
||||
protoc --go_out=. multi/multi1.proto multi/multi2.proto multi/multi3.proto
|
||||
|
||||
#extension_test: extension_test.$O
|
||||
# $(LD) -L. -o $@ $<
|
||||
|
||||
#multi.a: multi3.pb.$O multi2.pb.$O multi1.pb.$O
|
||||
# rm -f multi.a
|
||||
# $(QUOTED_GOBIN)/gopack grc $@ $<
|
||||
|
||||
#test.pb.go: imp.pb.go
|
||||
#multi1.pb.go: multi2.pb.go multi3.pb.go
|
||||
#main.$O: imp.pb.$O test.pb.$O multi.a
|
||||
#extension_test.$O: extension_base.pb.$O extension_extra.pb.$O extension_user.pb.$O
|
46
vendor/github.com/golang/protobuf/protoc-gen-go/testdata/extension_base.proto
generated
vendored
Normal file
46
vendor/github.com/golang/protobuf/protoc-gen-go/testdata/extension_base.proto
generated
vendored
Normal file
@ -0,0 +1,46 @@
|
||||
// Go support for Protocol Buffers - Google's data interchange format
|
||||
//
|
||||
// Copyright 2010 The Go Authors. All rights reserved.
|
||||
// https://github.com/golang/protobuf
|
||||
//
|
||||
// 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.
|
||||
|
||||
syntax = "proto2";
|
||||
|
||||
package extension_base;
|
||||
|
||||
message BaseMessage {
|
||||
optional int32 height = 1;
|
||||
extensions 4 to 9;
|
||||
extensions 16 to max;
|
||||
}
|
||||
|
||||
// Another message that may be extended, using message_set_wire_format.
|
||||
message OldStyleMessage {
|
||||
option message_set_wire_format = true;
|
||||
extensions 100 to max;
|
||||
}
|
38
vendor/github.com/golang/protobuf/protoc-gen-go/testdata/extension_extra.proto
generated
vendored
Normal file
38
vendor/github.com/golang/protobuf/protoc-gen-go/testdata/extension_extra.proto
generated
vendored
Normal file
@ -0,0 +1,38 @@
|
||||
// Go support for Protocol Buffers - Google's data interchange format
|
||||
//
|
||||
// Copyright 2011 The Go Authors. All rights reserved.
|
||||
// https://github.com/golang/protobuf
|
||||
//
|
||||
// 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.
|
||||
|
||||
syntax = "proto2";
|
||||
|
||||
package extension_extra;
|
||||
|
||||
message ExtraMessage {
|
||||
optional int32 width = 1;
|
||||
}
|
210
vendor/github.com/golang/protobuf/protoc-gen-go/testdata/extension_test.go
generated
vendored
Normal file
210
vendor/github.com/golang/protobuf/protoc-gen-go/testdata/extension_test.go
generated
vendored
Normal file
@ -0,0 +1,210 @@
|
||||
// Go support for Protocol Buffers - Google's data interchange format
|
||||
//
|
||||
// Copyright 2010 The Go Authors. All rights reserved.
|
||||
// https://github.com/golang/protobuf
|
||||
//
|
||||
// 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.
|
||||
|
||||
// Test that we can use protocol buffers that use extensions.
|
||||
|
||||
package testdata
|
||||
|
||||
/*
|
||||
|
||||
import (
|
||||
"bytes"
|
||||
"regexp"
|
||||
"testing"
|
||||
|
||||
"github.com/golang/protobuf/proto"
|
||||
base "extension_base.pb"
|
||||
user "extension_user.pb"
|
||||
)
|
||||
|
||||
func TestSingleFieldExtension(t *testing.T) {
|
||||
bm := &base.BaseMessage{
|
||||
Height: proto.Int32(178),
|
||||
}
|
||||
|
||||
// Use extension within scope of another type.
|
||||
vol := proto.Uint32(11)
|
||||
err := proto.SetExtension(bm, user.E_LoudMessage_Volume, vol)
|
||||
if err != nil {
|
||||
t.Fatal("Failed setting extension:", err)
|
||||
}
|
||||
buf, err := proto.Marshal(bm)
|
||||
if err != nil {
|
||||
t.Fatal("Failed encoding message with extension:", err)
|
||||
}
|
||||
bm_new := new(base.BaseMessage)
|
||||
if err := proto.Unmarshal(buf, bm_new); err != nil {
|
||||
t.Fatal("Failed decoding message with extension:", err)
|
||||
}
|
||||
if !proto.HasExtension(bm_new, user.E_LoudMessage_Volume) {
|
||||
t.Fatal("Decoded message didn't contain extension.")
|
||||
}
|
||||
vol_out, err := proto.GetExtension(bm_new, user.E_LoudMessage_Volume)
|
||||
if err != nil {
|
||||
t.Fatal("Failed getting extension:", err)
|
||||
}
|
||||
if v := vol_out.(*uint32); *v != *vol {
|
||||
t.Errorf("vol_out = %v, expected %v", *v, *vol)
|
||||
}
|
||||
proto.ClearExtension(bm_new, user.E_LoudMessage_Volume)
|
||||
if proto.HasExtension(bm_new, user.E_LoudMessage_Volume) {
|
||||
t.Fatal("Failed clearing extension.")
|
||||
}
|
||||
}
|
||||
|
||||
func TestMessageExtension(t *testing.T) {
|
||||
bm := &base.BaseMessage{
|
||||
Height: proto.Int32(179),
|
||||
}
|
||||
|
||||
// Use extension that is itself a message.
|
||||
um := &user.UserMessage{
|
||||
Name: proto.String("Dave"),
|
||||
Rank: proto.String("Major"),
|
||||
}
|
||||
err := proto.SetExtension(bm, user.E_LoginMessage_UserMessage, um)
|
||||
if err != nil {
|
||||
t.Fatal("Failed setting extension:", err)
|
||||
}
|
||||
buf, err := proto.Marshal(bm)
|
||||
if err != nil {
|
||||
t.Fatal("Failed encoding message with extension:", err)
|
||||
}
|
||||
bm_new := new(base.BaseMessage)
|
||||
if err := proto.Unmarshal(buf, bm_new); err != nil {
|
||||
t.Fatal("Failed decoding message with extension:", err)
|
||||
}
|
||||
if !proto.HasExtension(bm_new, user.E_LoginMessage_UserMessage) {
|
||||
t.Fatal("Decoded message didn't contain extension.")
|
||||
}
|
||||
um_out, err := proto.GetExtension(bm_new, user.E_LoginMessage_UserMessage)
|
||||
if err != nil {
|
||||
t.Fatal("Failed getting extension:", err)
|
||||
}
|
||||
if n := um_out.(*user.UserMessage).Name; *n != *um.Name {
|
||||
t.Errorf("um_out.Name = %q, expected %q", *n, *um.Name)
|
||||
}
|
||||
if r := um_out.(*user.UserMessage).Rank; *r != *um.Rank {
|
||||
t.Errorf("um_out.Rank = %q, expected %q", *r, *um.Rank)
|
||||
}
|
||||
proto.ClearExtension(bm_new, user.E_LoginMessage_UserMessage)
|
||||
if proto.HasExtension(bm_new, user.E_LoginMessage_UserMessage) {
|
||||
t.Fatal("Failed clearing extension.")
|
||||
}
|
||||
}
|
||||
|
||||
func TestTopLevelExtension(t *testing.T) {
|
||||
bm := &base.BaseMessage{
|
||||
Height: proto.Int32(179),
|
||||
}
|
||||
|
||||
width := proto.Int32(17)
|
||||
err := proto.SetExtension(bm, user.E_Width, width)
|
||||
if err != nil {
|
||||
t.Fatal("Failed setting extension:", err)
|
||||
}
|
||||
buf, err := proto.Marshal(bm)
|
||||
if err != nil {
|
||||
t.Fatal("Failed encoding message with extension:", err)
|
||||
}
|
||||
bm_new := new(base.BaseMessage)
|
||||
if err := proto.Unmarshal(buf, bm_new); err != nil {
|
||||
t.Fatal("Failed decoding message with extension:", err)
|
||||
}
|
||||
if !proto.HasExtension(bm_new, user.E_Width) {
|
||||
t.Fatal("Decoded message didn't contain extension.")
|
||||
}
|
||||
width_out, err := proto.GetExtension(bm_new, user.E_Width)
|
||||
if err != nil {
|
||||
t.Fatal("Failed getting extension:", err)
|
||||
}
|
||||
if w := width_out.(*int32); *w != *width {
|
||||
t.Errorf("width_out = %v, expected %v", *w, *width)
|
||||
}
|
||||
proto.ClearExtension(bm_new, user.E_Width)
|
||||
if proto.HasExtension(bm_new, user.E_Width) {
|
||||
t.Fatal("Failed clearing extension.")
|
||||
}
|
||||
}
|
||||
|
||||
func TestMessageSetWireFormat(t *testing.T) {
|
||||
osm := new(base.OldStyleMessage)
|
||||
osp := &user.OldStyleParcel{
|
||||
Name: proto.String("Dave"),
|
||||
Height: proto.Int32(178),
|
||||
}
|
||||
|
||||
err := proto.SetExtension(osm, user.E_OldStyleParcel_MessageSetExtension, osp)
|
||||
if err != nil {
|
||||
t.Fatal("Failed setting extension:", err)
|
||||
}
|
||||
|
||||
buf, err := proto.Marshal(osm)
|
||||
if err != nil {
|
||||
t.Fatal("Failed encoding message:", err)
|
||||
}
|
||||
|
||||
// Data generated from Python implementation.
|
||||
expected := []byte{
|
||||
11, 16, 209, 15, 26, 9, 10, 4, 68, 97, 118, 101, 16, 178, 1, 12,
|
||||
}
|
||||
|
||||
if !bytes.Equal(expected, buf) {
|
||||
t.Errorf("Encoding mismatch.\nwant %+v\n got %+v", expected, buf)
|
||||
}
|
||||
|
||||
// Check that it is restored correctly.
|
||||
osm = new(base.OldStyleMessage)
|
||||
if err := proto.Unmarshal(buf, osm); err != nil {
|
||||
t.Fatal("Failed decoding message:", err)
|
||||
}
|
||||
osp_out, err := proto.GetExtension(osm, user.E_OldStyleParcel_MessageSetExtension)
|
||||
if err != nil {
|
||||
t.Fatal("Failed getting extension:", err)
|
||||
}
|
||||
osp = osp_out.(*user.OldStyleParcel)
|
||||
if *osp.Name != "Dave" || *osp.Height != 178 {
|
||||
t.Errorf("Retrieved extension from decoded message is not correct: %+v", osp)
|
||||
}
|
||||
}
|
||||
|
||||
func main() {
|
||||
// simpler than rigging up gotest
|
||||
testing.Main(regexp.MatchString, []testing.InternalTest{
|
||||
{"TestSingleFieldExtension", TestSingleFieldExtension},
|
||||
{"TestMessageExtension", TestMessageExtension},
|
||||
{"TestTopLevelExtension", TestTopLevelExtension},
|
||||
},
|
||||
[]testing.InternalBenchmark{},
|
||||
[]testing.InternalExample{})
|
||||
}
|
||||
|
||||
*/
|
100
vendor/github.com/golang/protobuf/protoc-gen-go/testdata/extension_user.proto
generated
vendored
Normal file
100
vendor/github.com/golang/protobuf/protoc-gen-go/testdata/extension_user.proto
generated
vendored
Normal file
@ -0,0 +1,100 @@
|
||||
// Go support for Protocol Buffers - Google's data interchange format
|
||||
//
|
||||
// Copyright 2010 The Go Authors. All rights reserved.
|
||||
// https://github.com/golang/protobuf
|
||||
//
|
||||
// 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.
|
||||
|
||||
syntax = "proto2";
|
||||
|
||||
import "extension_base.proto";
|
||||
import "extension_extra.proto";
|
||||
|
||||
package extension_user;
|
||||
|
||||
message UserMessage {
|
||||
optional string name = 1;
|
||||
optional string rank = 2;
|
||||
}
|
||||
|
||||
// Extend with a message
|
||||
extend extension_base.BaseMessage {
|
||||
optional UserMessage user_message = 5;
|
||||
}
|
||||
|
||||
// Extend with a foreign message
|
||||
extend extension_base.BaseMessage {
|
||||
optional extension_extra.ExtraMessage extra_message = 9;
|
||||
}
|
||||
|
||||
// Extend with some primitive types
|
||||
extend extension_base.BaseMessage {
|
||||
optional int32 width = 6;
|
||||
optional int64 area = 7;
|
||||
}
|
||||
|
||||
// Extend inside the scope of another type
|
||||
message LoudMessage {
|
||||
extend extension_base.BaseMessage {
|
||||
optional uint32 volume = 8;
|
||||
}
|
||||
extensions 100 to max;
|
||||
}
|
||||
|
||||
// Extend inside the scope of another type, using a message.
|
||||
message LoginMessage {
|
||||
extend extension_base.BaseMessage {
|
||||
optional UserMessage user_message = 16;
|
||||
}
|
||||
}
|
||||
|
||||
// Extend with a repeated field
|
||||
extend extension_base.BaseMessage {
|
||||
repeated Detail detail = 17;
|
||||
}
|
||||
|
||||
message Detail {
|
||||
optional string color = 1;
|
||||
}
|
||||
|
||||
// An extension of an extension
|
||||
message Announcement {
|
||||
optional string words = 1;
|
||||
extend LoudMessage {
|
||||
optional Announcement loud_ext = 100;
|
||||
}
|
||||
}
|
||||
|
||||
// Something that can be put in a message set.
|
||||
message OldStyleParcel {
|
||||
extend extension_base.OldStyleMessage {
|
||||
optional OldStyleParcel message_set_extension = 2001;
|
||||
}
|
||||
|
||||
required string name = 1;
|
||||
optional int32 height = 2;
|
||||
}
|
59
vendor/github.com/golang/protobuf/protoc-gen-go/testdata/grpc.proto
generated
vendored
Normal file
59
vendor/github.com/golang/protobuf/protoc-gen-go/testdata/grpc.proto
generated
vendored
Normal file
@ -0,0 +1,59 @@
|
||||
// Go support for Protocol Buffers - Google's data interchange format
|
||||
//
|
||||
// Copyright 2015 The Go Authors. All rights reserved.
|
||||
// https://github.com/golang/protobuf
|
||||
//
|
||||
// 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.
|
||||
|
||||
syntax = "proto3";
|
||||
|
||||
package grpc.testing;
|
||||
|
||||
message SimpleRequest {
|
||||
}
|
||||
|
||||
message SimpleResponse {
|
||||
}
|
||||
|
||||
message StreamMsg {
|
||||
}
|
||||
|
||||
message StreamMsg2 {
|
||||
}
|
||||
|
||||
service Test {
|
||||
rpc UnaryCall(SimpleRequest) returns (SimpleResponse);
|
||||
|
||||
// This RPC streams from the server only.
|
||||
rpc Downstream(SimpleRequest) returns (stream StreamMsg);
|
||||
|
||||
// This RPC streams from the client.
|
||||
rpc Upstream(stream StreamMsg) returns (SimpleResponse);
|
||||
|
||||
// This one streams in both directions.
|
||||
rpc Bidi(stream StreamMsg) returns (stream StreamMsg2);
|
||||
}
|
113
vendor/github.com/golang/protobuf/protoc-gen-go/testdata/imp.pb.go.golden
generated
vendored
Normal file
113
vendor/github.com/golang/protobuf/protoc-gen-go/testdata/imp.pb.go.golden
generated
vendored
Normal file
@ -0,0 +1,113 @@
|
||||
// Code generated by protoc-gen-go.
|
||||
// source: imp.proto
|
||||
// DO NOT EDIT!
|
||||
|
||||
package imp
|
||||
|
||||
import proto "github.com/golang/protobuf/proto"
|
||||
import "math"
|
||||
import "os"
|
||||
import imp1 "imp2.pb"
|
||||
|
||||
// Reference proto & math imports to suppress error if they are not otherwise used.
|
||||
var _ = proto.GetString
|
||||
var _ = math.Inf
|
||||
|
||||
// Types from public import imp2.proto
|
||||
type PubliclyImportedMessage imp1.PubliclyImportedMessage
|
||||
|
||||
func (this *PubliclyImportedMessage) Reset() { (*imp1.PubliclyImportedMessage)(this).Reset() }
|
||||
func (this *PubliclyImportedMessage) String() string {
|
||||
return (*imp1.PubliclyImportedMessage)(this).String()
|
||||
}
|
||||
|
||||
// PubliclyImportedMessage from public import imp.proto
|
||||
|
||||
type ImportedMessage_Owner int32
|
||||
|
||||
const (
|
||||
ImportedMessage_DAVE ImportedMessage_Owner = 1
|
||||
ImportedMessage_MIKE ImportedMessage_Owner = 2
|
||||
)
|
||||
|
||||
var ImportedMessage_Owner_name = map[int32]string{
|
||||
1: "DAVE",
|
||||
2: "MIKE",
|
||||
}
|
||||
var ImportedMessage_Owner_value = map[string]int32{
|
||||
"DAVE": 1,
|
||||
"MIKE": 2,
|
||||
}
|
||||
|
||||
// NewImportedMessage_Owner is deprecated. Use x.Enum() instead.
|
||||
func NewImportedMessage_Owner(x ImportedMessage_Owner) *ImportedMessage_Owner {
|
||||
e := ImportedMessage_Owner(x)
|
||||
return &e
|
||||
}
|
||||
func (x ImportedMessage_Owner) Enum() *ImportedMessage_Owner {
|
||||
p := new(ImportedMessage_Owner)
|
||||
*p = x
|
||||
return p
|
||||
}
|
||||
func (x ImportedMessage_Owner) String() string {
|
||||
return proto.EnumName(ImportedMessage_Owner_name, int32(x))
|
||||
}
|
||||
|
||||
type ImportedMessage struct {
|
||||
Field *int64 `protobuf:"varint,1,req,name=field" json:"field,omitempty"`
|
||||
XXX_extensions map[int32][]byte `json:",omitempty"`
|
||||
XXX_unrecognized []byte `json:",omitempty"`
|
||||
}
|
||||
|
||||
func (this *ImportedMessage) Reset() { *this = ImportedMessage{} }
|
||||
func (this *ImportedMessage) String() string { return proto.CompactTextString(this) }
|
||||
|
||||
var extRange_ImportedMessage = []proto.ExtensionRange{
|
||||
proto.ExtensionRange{90, 100},
|
||||
}
|
||||
|
||||
func (*ImportedMessage) ExtensionRangeArray() []proto.ExtensionRange {
|
||||
return extRange_ImportedMessage
|
||||
}
|
||||
func (this *ImportedMessage) ExtensionMap() map[int32][]byte {
|
||||
if this.XXX_extensions == nil {
|
||||
this.XXX_extensions = make(map[int32][]byte)
|
||||
}
|
||||
return this.XXX_extensions
|
||||
}
|
||||
|
||||
type ImportedExtendable struct {
|
||||
XXX_extensions map[int32][]byte `json:",omitempty"`
|
||||
XXX_unrecognized []byte `json:",omitempty"`
|
||||
}
|
||||
|
||||
func (this *ImportedExtendable) Reset() { *this = ImportedExtendable{} }
|
||||
func (this *ImportedExtendable) String() string { return proto.CompactTextString(this) }
|
||||
|
||||
func (this *ImportedExtendable) Marshal() ([]byte, error) {
|
||||
return proto.MarshalMessageSet(this.ExtensionMap())
|
||||
}
|
||||
func (this *ImportedExtendable) Unmarshal(buf []byte) error {
|
||||
return proto.UnmarshalMessageSet(buf, this.ExtensionMap())
|
||||
}
|
||||
// ensure ImportedExtendable satisfies proto.Marshaler and proto.Unmarshaler
|
||||
var _ proto.Marshaler = (*ImportedExtendable)(nil)
|
||||
var _ proto.Unmarshaler = (*ImportedExtendable)(nil)
|
||||
|
||||
var extRange_ImportedExtendable = []proto.ExtensionRange{
|
||||
proto.ExtensionRange{100, 536870911},
|
||||
}
|
||||
|
||||
func (*ImportedExtendable) ExtensionRangeArray() []proto.ExtensionRange {
|
||||
return extRange_ImportedExtendable
|
||||
}
|
||||
func (this *ImportedExtendable) ExtensionMap() map[int32][]byte {
|
||||
if this.XXX_extensions == nil {
|
||||
this.XXX_extensions = make(map[int32][]byte)
|
||||
}
|
||||
return this.XXX_extensions
|
||||
}
|
||||
|
||||
func init() {
|
||||
proto.RegisterEnum("imp.ImportedMessage_Owner", ImportedMessage_Owner_name, ImportedMessage_Owner_value)
|
||||
}
|
70
vendor/github.com/golang/protobuf/protoc-gen-go/testdata/imp.proto
generated
vendored
Normal file
70
vendor/github.com/golang/protobuf/protoc-gen-go/testdata/imp.proto
generated
vendored
Normal file
@ -0,0 +1,70 @@
|
||||
// Go support for Protocol Buffers - Google's data interchange format
|
||||
//
|
||||
// Copyright 2010 The Go Authors. All rights reserved.
|
||||
// https://github.com/golang/protobuf
|
||||
//
|
||||
// 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.
|
||||
|
||||
syntax = "proto2";
|
||||
|
||||
package imp;
|
||||
|
||||
import "imp2.proto";
|
||||
import "imp3.proto";
|
||||
|
||||
message ImportedMessage {
|
||||
required int64 field = 1;
|
||||
|
||||
// The forwarded getters for these fields are fiddly to get right.
|
||||
optional ImportedMessage2 local_msg = 2;
|
||||
optional ForeignImportedMessage foreign_msg = 3; // in imp3.proto
|
||||
optional Owner enum_field = 4;
|
||||
oneof union {
|
||||
int32 state = 9;
|
||||
}
|
||||
|
||||
repeated string name = 5;
|
||||
repeated Owner boss = 6;
|
||||
repeated ImportedMessage2 memo = 7;
|
||||
|
||||
map<string, ImportedMessage2> msg_map = 8;
|
||||
|
||||
enum Owner {
|
||||
DAVE = 1;
|
||||
MIKE = 2;
|
||||
}
|
||||
|
||||
extensions 90 to 100;
|
||||
}
|
||||
|
||||
message ImportedMessage2 {
|
||||
}
|
||||
|
||||
message ImportedExtendable {
|
||||
option message_set_wire_format = true;
|
||||
extensions 100 to max;
|
||||
}
|
43
vendor/github.com/golang/protobuf/protoc-gen-go/testdata/imp2.proto
generated
vendored
Normal file
43
vendor/github.com/golang/protobuf/protoc-gen-go/testdata/imp2.proto
generated
vendored
Normal file
@ -0,0 +1,43 @@
|
||||
// Go support for Protocol Buffers - Google's data interchange format
|
||||
//
|
||||
// Copyright 2011 The Go Authors. All rights reserved.
|
||||
// https://github.com/golang/protobuf
|
||||
//
|
||||
// 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.
|
||||
|
||||
syntax = "proto2";
|
||||
|
||||
package imp;
|
||||
|
||||
message PubliclyImportedMessage {
|
||||
optional int64 field = 1;
|
||||
}
|
||||
|
||||
enum PubliclyImportedEnum {
|
||||
GLASSES = 1;
|
||||
HAIR = 2;
|
||||
}
|
38
vendor/github.com/golang/protobuf/protoc-gen-go/testdata/imp3.proto
generated
vendored
Normal file
38
vendor/github.com/golang/protobuf/protoc-gen-go/testdata/imp3.proto
generated
vendored
Normal file
@ -0,0 +1,38 @@
|
||||
// Go support for Protocol Buffers - Google's data interchange format
|
||||
//
|
||||
// Copyright 2012 The Go Authors. All rights reserved.
|
||||
// https://github.com/golang/protobuf
|
||||
//
|
||||
// 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.
|
||||
|
||||
syntax = "proto2";
|
||||
|
||||
package imp;
|
||||
|
||||
message ForeignImportedMessage {
|
||||
optional string tuber = 1;
|
||||
}
|
46
vendor/github.com/golang/protobuf/protoc-gen-go/testdata/main_test.go
generated
vendored
Normal file
46
vendor/github.com/golang/protobuf/protoc-gen-go/testdata/main_test.go
generated
vendored
Normal file
@ -0,0 +1,46 @@
|
||||
// Go support for Protocol Buffers - Google's data interchange format
|
||||
//
|
||||
// Copyright 2010 The Go Authors. All rights reserved.
|
||||
// https://github.com/golang/protobuf
|
||||
//
|
||||
// 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.
|
||||
|
||||
// A simple binary to link together the protocol buffers in this test.
|
||||
|
||||
package testdata
|
||||
|
||||
import (
|
||||
"testing"
|
||||
|
||||
mytestpb "./my_test"
|
||||
multipb "github.com/golang/protobuf/protoc-gen-go/testdata/multi"
|
||||
)
|
||||
|
||||
func TestLink(t *testing.T) {
|
||||
_ = &multipb.Multi1{}
|
||||
_ = &mytestpb.Request{}
|
||||
}
|
44
vendor/github.com/golang/protobuf/protoc-gen-go/testdata/multi/multi1.proto
generated
vendored
Normal file
44
vendor/github.com/golang/protobuf/protoc-gen-go/testdata/multi/multi1.proto
generated
vendored
Normal file
@ -0,0 +1,44 @@
|
||||
// Go support for Protocol Buffers - Google's data interchange format
|
||||
//
|
||||
// Copyright 2010 The Go Authors. All rights reserved.
|
||||
// https://github.com/golang/protobuf
|
||||
//
|
||||
// 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.
|
||||
|
||||
syntax = "proto2";
|
||||
|
||||
import "multi/multi2.proto";
|
||||
import "multi/multi3.proto";
|
||||
|
||||
package multitest;
|
||||
|
||||
message Multi1 {
|
||||
required Multi2 multi2 = 1;
|
||||
optional Multi2.Color color = 2;
|
||||
optional Multi3.HatType hat_type = 3;
|
||||
}
|
||||
|
46
vendor/github.com/golang/protobuf/protoc-gen-go/testdata/multi/multi2.proto
generated
vendored
Normal file
46
vendor/github.com/golang/protobuf/protoc-gen-go/testdata/multi/multi2.proto
generated
vendored
Normal file
@ -0,0 +1,46 @@
|
||||
// Go support for Protocol Buffers - Google's data interchange format
|
||||
//
|
||||
// Copyright 2010 The Go Authors. All rights reserved.
|
||||
// https://github.com/golang/protobuf
|
||||
//
|
||||
// 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.
|
||||
|
||||
syntax = "proto2";
|
||||
|
||||
package multitest;
|
||||
|
||||
message Multi2 {
|
||||
required int32 required_value = 1;
|
||||
|
||||
enum Color {
|
||||
BLUE = 1;
|
||||
GREEN = 2;
|
||||
RED = 3;
|
||||
};
|
||||
optional Color color = 2;
|
||||
}
|
||||
|
43
vendor/github.com/golang/protobuf/protoc-gen-go/testdata/multi/multi3.proto
generated
vendored
Normal file
43
vendor/github.com/golang/protobuf/protoc-gen-go/testdata/multi/multi3.proto
generated
vendored
Normal file
@ -0,0 +1,43 @@
|
||||
// Go support for Protocol Buffers - Google's data interchange format
|
||||
//
|
||||
// Copyright 2010 The Go Authors. All rights reserved.
|
||||
// https://github.com/golang/protobuf
|
||||
//
|
||||
// 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.
|
||||
|
||||
syntax = "proto2";
|
||||
|
||||
package multitest;
|
||||
|
||||
message Multi3 {
|
||||
enum HatType {
|
||||
FEDORA = 1;
|
||||
FEZ = 2;
|
||||
};
|
||||
optional HatType hat_type = 1;
|
||||
}
|
||||
|
870
vendor/github.com/golang/protobuf/protoc-gen-go/testdata/my_test/test.pb.go
generated
vendored
Normal file
870
vendor/github.com/golang/protobuf/protoc-gen-go/testdata/my_test/test.pb.go
generated
vendored
Normal file
@ -0,0 +1,870 @@
|
||||
// Code generated by protoc-gen-go. DO NOT EDIT.
|
||||
// source: my_test/test.proto
|
||||
|
||||
/*
|
||||
Package my_test is a generated protocol buffer package.
|
||||
|
||||
This package holds interesting messages.
|
||||
|
||||
It is generated from these files:
|
||||
my_test/test.proto
|
||||
|
||||
It has these top-level messages:
|
||||
Request
|
||||
Reply
|
||||
OtherBase
|
||||
ReplyExtensions
|
||||
OtherReplyExtensions
|
||||
OldReply
|
||||
Communique
|
||||
*/
|
||||
package my_test
|
||||
|
||||
import proto "github.com/golang/protobuf/proto"
|
||||
import fmt "fmt"
|
||||
import math "math"
|
||||
import _ "github.com/golang/protobuf/protoc-gen-go/testdata/multi"
|
||||
|
||||
// Reference imports to suppress errors if they are not otherwise used.
|
||||
var _ = proto.Marshal
|
||||
var _ = fmt.Errorf
|
||||
var _ = math.Inf
|
||||
|
||||
// This is a compile-time assertion to ensure that this generated file
|
||||
// is compatible with the proto package it is being compiled against.
|
||||
// A compilation error at this line likely means your copy of the
|
||||
// proto package needs to be updated.
|
||||
const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package
|
||||
|
||||
type HatType int32
|
||||
|
||||
const (
|
||||
// deliberately skipping 0
|
||||
HatType_FEDORA HatType = 1
|
||||
HatType_FEZ HatType = 2
|
||||
)
|
||||
|
||||
var HatType_name = map[int32]string{
|
||||
1: "FEDORA",
|
||||
2: "FEZ",
|
||||
}
|
||||
var HatType_value = map[string]int32{
|
||||
"FEDORA": 1,
|
||||
"FEZ": 2,
|
||||
}
|
||||
|
||||
func (x HatType) Enum() *HatType {
|
||||
p := new(HatType)
|
||||
*p = x
|
||||
return p
|
||||
}
|
||||
func (x HatType) String() string {
|
||||
return proto.EnumName(HatType_name, int32(x))
|
||||
}
|
||||
func (x *HatType) UnmarshalJSON(data []byte) error {
|
||||
value, err := proto.UnmarshalJSONEnum(HatType_value, data, "HatType")
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
*x = HatType(value)
|
||||
return nil
|
||||
}
|
||||
|
||||
// This enum represents days of the week.
|
||||
type Days int32
|
||||
|
||||
const (
|
||||
Days_MONDAY Days = 1
|
||||
Days_TUESDAY Days = 2
|
||||
Days_LUNDI Days = 1
|
||||
)
|
||||
|
||||
var Days_name = map[int32]string{
|
||||
1: "MONDAY",
|
||||
2: "TUESDAY",
|
||||
// Duplicate value: 1: "LUNDI",
|
||||
}
|
||||
var Days_value = map[string]int32{
|
||||
"MONDAY": 1,
|
||||
"TUESDAY": 2,
|
||||
"LUNDI": 1,
|
||||
}
|
||||
|
||||
func (x Days) Enum() *Days {
|
||||
p := new(Days)
|
||||
*p = x
|
||||
return p
|
||||
}
|
||||
func (x Days) String() string {
|
||||
return proto.EnumName(Days_name, int32(x))
|
||||
}
|
||||
func (x *Days) UnmarshalJSON(data []byte) error {
|
||||
value, err := proto.UnmarshalJSONEnum(Days_value, data, "Days")
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
*x = Days(value)
|
||||
return nil
|
||||
}
|
||||
|
||||
type Request_Color int32
|
||||
|
||||
const (
|
||||
Request_RED Request_Color = 0
|
||||
Request_GREEN Request_Color = 1
|
||||
Request_BLUE Request_Color = 2
|
||||
)
|
||||
|
||||
var Request_Color_name = map[int32]string{
|
||||
0: "RED",
|
||||
1: "GREEN",
|
||||
2: "BLUE",
|
||||
}
|
||||
var Request_Color_value = map[string]int32{
|
||||
"RED": 0,
|
||||
"GREEN": 1,
|
||||
"BLUE": 2,
|
||||
}
|
||||
|
||||
func (x Request_Color) Enum() *Request_Color {
|
||||
p := new(Request_Color)
|
||||
*p = x
|
||||
return p
|
||||
}
|
||||
func (x Request_Color) String() string {
|
||||
return proto.EnumName(Request_Color_name, int32(x))
|
||||
}
|
||||
func (x *Request_Color) UnmarshalJSON(data []byte) error {
|
||||
value, err := proto.UnmarshalJSONEnum(Request_Color_value, data, "Request_Color")
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
*x = Request_Color(value)
|
||||
return nil
|
||||
}
|
||||
|
||||
type Reply_Entry_Game int32
|
||||
|
||||
const (
|
||||
Reply_Entry_FOOTBALL Reply_Entry_Game = 1
|
||||
Reply_Entry_TENNIS Reply_Entry_Game = 2
|
||||
)
|
||||
|
||||
var Reply_Entry_Game_name = map[int32]string{
|
||||
1: "FOOTBALL",
|
||||
2: "TENNIS",
|
||||
}
|
||||
var Reply_Entry_Game_value = map[string]int32{
|
||||
"FOOTBALL": 1,
|
||||
"TENNIS": 2,
|
||||
}
|
||||
|
||||
func (x Reply_Entry_Game) Enum() *Reply_Entry_Game {
|
||||
p := new(Reply_Entry_Game)
|
||||
*p = x
|
||||
return p
|
||||
}
|
||||
func (x Reply_Entry_Game) String() string {
|
||||
return proto.EnumName(Reply_Entry_Game_name, int32(x))
|
||||
}
|
||||
func (x *Reply_Entry_Game) UnmarshalJSON(data []byte) error {
|
||||
value, err := proto.UnmarshalJSONEnum(Reply_Entry_Game_value, data, "Reply_Entry_Game")
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
*x = Reply_Entry_Game(value)
|
||||
return nil
|
||||
}
|
||||
|
||||
// This is a message that might be sent somewhere.
|
||||
type Request struct {
|
||||
Key []int64 `protobuf:"varint,1,rep,name=key" json:"key,omitempty"`
|
||||
// optional imp.ImportedMessage imported_message = 2;
|
||||
Hue *Request_Color `protobuf:"varint,3,opt,name=hue,enum=my.test.Request_Color" json:"hue,omitempty"`
|
||||
Hat *HatType `protobuf:"varint,4,opt,name=hat,enum=my.test.HatType,def=1" json:"hat,omitempty"`
|
||||
// optional imp.ImportedMessage.Owner owner = 6;
|
||||
Deadline *float32 `protobuf:"fixed32,7,opt,name=deadline,def=inf" json:"deadline,omitempty"`
|
||||
Somegroup *Request_SomeGroup `protobuf:"group,8,opt,name=SomeGroup,json=somegroup" json:"somegroup,omitempty"`
|
||||
// This is a map field. It will generate map[int32]string.
|
||||
NameMapping map[int32]string `protobuf:"bytes,14,rep,name=name_mapping,json=nameMapping" json:"name_mapping,omitempty" protobuf_key:"varint,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
|
||||
// This is a map field whose value type is a message.
|
||||
MsgMapping map[int64]*Reply `protobuf:"bytes,15,rep,name=msg_mapping,json=msgMapping" json:"msg_mapping,omitempty" protobuf_key:"zigzag64,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
|
||||
Reset_ *int32 `protobuf:"varint,12,opt,name=reset" json:"reset,omitempty"`
|
||||
// This field should not conflict with any getters.
|
||||
GetKey_ *string `protobuf:"bytes,16,opt,name=get_key,json=getKey" json:"get_key,omitempty"`
|
||||
XXX_unrecognized []byte `json:"-"`
|
||||
}
|
||||
|
||||
func (m *Request) Reset() { *m = Request{} }
|
||||
func (m *Request) String() string { return proto.CompactTextString(m) }
|
||||
func (*Request) ProtoMessage() {}
|
||||
|
||||
const Default_Request_Hat HatType = HatType_FEDORA
|
||||
|
||||
var Default_Request_Deadline float32 = float32(math.Inf(1))
|
||||
|
||||
func (m *Request) GetKey() []int64 {
|
||||
if m != nil {
|
||||
return m.Key
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (m *Request) GetHue() Request_Color {
|
||||
if m != nil && m.Hue != nil {
|
||||
return *m.Hue
|
||||
}
|
||||
return Request_RED
|
||||
}
|
||||
|
||||
func (m *Request) GetHat() HatType {
|
||||
if m != nil && m.Hat != nil {
|
||||
return *m.Hat
|
||||
}
|
||||
return Default_Request_Hat
|
||||
}
|
||||
|
||||
func (m *Request) GetDeadline() float32 {
|
||||
if m != nil && m.Deadline != nil {
|
||||
return *m.Deadline
|
||||
}
|
||||
return Default_Request_Deadline
|
||||
}
|
||||
|
||||
func (m *Request) GetSomegroup() *Request_SomeGroup {
|
||||
if m != nil {
|
||||
return m.Somegroup
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (m *Request) GetNameMapping() map[int32]string {
|
||||
if m != nil {
|
||||
return m.NameMapping
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (m *Request) GetMsgMapping() map[int64]*Reply {
|
||||
if m != nil {
|
||||
return m.MsgMapping
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (m *Request) GetReset_() int32 {
|
||||
if m != nil && m.Reset_ != nil {
|
||||
return *m.Reset_
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
func (m *Request) GetGetKey_() string {
|
||||
if m != nil && m.GetKey_ != nil {
|
||||
return *m.GetKey_
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
type Request_SomeGroup struct {
|
||||
GroupField *int32 `protobuf:"varint,9,opt,name=group_field,json=groupField" json:"group_field,omitempty"`
|
||||
XXX_unrecognized []byte `json:"-"`
|
||||
}
|
||||
|
||||
func (m *Request_SomeGroup) Reset() { *m = Request_SomeGroup{} }
|
||||
func (m *Request_SomeGroup) String() string { return proto.CompactTextString(m) }
|
||||
func (*Request_SomeGroup) ProtoMessage() {}
|
||||
|
||||
func (m *Request_SomeGroup) GetGroupField() int32 {
|
||||
if m != nil && m.GroupField != nil {
|
||||
return *m.GroupField
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
type Reply struct {
|
||||
Found []*Reply_Entry `protobuf:"bytes,1,rep,name=found" json:"found,omitempty"`
|
||||
CompactKeys []int32 `protobuf:"varint,2,rep,packed,name=compact_keys,json=compactKeys" json:"compact_keys,omitempty"`
|
||||
proto.XXX_InternalExtensions `json:"-"`
|
||||
XXX_unrecognized []byte `json:"-"`
|
||||
}
|
||||
|
||||
func (m *Reply) Reset() { *m = Reply{} }
|
||||
func (m *Reply) String() string { return proto.CompactTextString(m) }
|
||||
func (*Reply) ProtoMessage() {}
|
||||
|
||||
var extRange_Reply = []proto.ExtensionRange{
|
||||
{100, 536870911},
|
||||
}
|
||||
|
||||
func (*Reply) ExtensionRangeArray() []proto.ExtensionRange {
|
||||
return extRange_Reply
|
||||
}
|
||||
|
||||
func (m *Reply) GetFound() []*Reply_Entry {
|
||||
if m != nil {
|
||||
return m.Found
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (m *Reply) GetCompactKeys() []int32 {
|
||||
if m != nil {
|
||||
return m.CompactKeys
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
type Reply_Entry struct {
|
||||
KeyThatNeeds_1234Camel_CasIng *int64 `protobuf:"varint,1,req,name=key_that_needs_1234camel_CasIng,json=keyThatNeeds1234camelCasIng" json:"key_that_needs_1234camel_CasIng,omitempty"`
|
||||
Value *int64 `protobuf:"varint,2,opt,name=value,def=7" json:"value,omitempty"`
|
||||
XMyFieldName_2 *int64 `protobuf:"varint,3,opt,name=_my_field_name_2,json=MyFieldName2" json:"_my_field_name_2,omitempty"`
|
||||
XXX_unrecognized []byte `json:"-"`
|
||||
}
|
||||
|
||||
func (m *Reply_Entry) Reset() { *m = Reply_Entry{} }
|
||||
func (m *Reply_Entry) String() string { return proto.CompactTextString(m) }
|
||||
func (*Reply_Entry) ProtoMessage() {}
|
||||
|
||||
const Default_Reply_Entry_Value int64 = 7
|
||||
|
||||
func (m *Reply_Entry) GetKeyThatNeeds_1234Camel_CasIng() int64 {
|
||||
if m != nil && m.KeyThatNeeds_1234Camel_CasIng != nil {
|
||||
return *m.KeyThatNeeds_1234Camel_CasIng
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
func (m *Reply_Entry) GetValue() int64 {
|
||||
if m != nil && m.Value != nil {
|
||||
return *m.Value
|
||||
}
|
||||
return Default_Reply_Entry_Value
|
||||
}
|
||||
|
||||
func (m *Reply_Entry) GetXMyFieldName_2() int64 {
|
||||
if m != nil && m.XMyFieldName_2 != nil {
|
||||
return *m.XMyFieldName_2
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
type OtherBase struct {
|
||||
Name *string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
|
||||
proto.XXX_InternalExtensions `json:"-"`
|
||||
XXX_unrecognized []byte `json:"-"`
|
||||
}
|
||||
|
||||
func (m *OtherBase) Reset() { *m = OtherBase{} }
|
||||
func (m *OtherBase) String() string { return proto.CompactTextString(m) }
|
||||
func (*OtherBase) ProtoMessage() {}
|
||||
|
||||
var extRange_OtherBase = []proto.ExtensionRange{
|
||||
{100, 536870911},
|
||||
}
|
||||
|
||||
func (*OtherBase) ExtensionRangeArray() []proto.ExtensionRange {
|
||||
return extRange_OtherBase
|
||||
}
|
||||
|
||||
func (m *OtherBase) GetName() string {
|
||||
if m != nil && m.Name != nil {
|
||||
return *m.Name
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
type ReplyExtensions struct {
|
||||
XXX_unrecognized []byte `json:"-"`
|
||||
}
|
||||
|
||||
func (m *ReplyExtensions) Reset() { *m = ReplyExtensions{} }
|
||||
func (m *ReplyExtensions) String() string { return proto.CompactTextString(m) }
|
||||
func (*ReplyExtensions) ProtoMessage() {}
|
||||
|
||||
var E_ReplyExtensions_Time = &proto.ExtensionDesc{
|
||||
ExtendedType: (*Reply)(nil),
|
||||
ExtensionType: (*float64)(nil),
|
||||
Field: 101,
|
||||
Name: "my.test.ReplyExtensions.time",
|
||||
Tag: "fixed64,101,opt,name=time",
|
||||
Filename: "my_test/test.proto",
|
||||
}
|
||||
|
||||
var E_ReplyExtensions_Carrot = &proto.ExtensionDesc{
|
||||
ExtendedType: (*Reply)(nil),
|
||||
ExtensionType: (*ReplyExtensions)(nil),
|
||||
Field: 105,
|
||||
Name: "my.test.ReplyExtensions.carrot",
|
||||
Tag: "bytes,105,opt,name=carrot",
|
||||
Filename: "my_test/test.proto",
|
||||
}
|
||||
|
||||
var E_ReplyExtensions_Donut = &proto.ExtensionDesc{
|
||||
ExtendedType: (*OtherBase)(nil),
|
||||
ExtensionType: (*ReplyExtensions)(nil),
|
||||
Field: 101,
|
||||
Name: "my.test.ReplyExtensions.donut",
|
||||
Tag: "bytes,101,opt,name=donut",
|
||||
Filename: "my_test/test.proto",
|
||||
}
|
||||
|
||||
type OtherReplyExtensions struct {
|
||||
Key *int32 `protobuf:"varint,1,opt,name=key" json:"key,omitempty"`
|
||||
XXX_unrecognized []byte `json:"-"`
|
||||
}
|
||||
|
||||
func (m *OtherReplyExtensions) Reset() { *m = OtherReplyExtensions{} }
|
||||
func (m *OtherReplyExtensions) String() string { return proto.CompactTextString(m) }
|
||||
func (*OtherReplyExtensions) ProtoMessage() {}
|
||||
|
||||
func (m *OtherReplyExtensions) GetKey() int32 {
|
||||
if m != nil && m.Key != nil {
|
||||
return *m.Key
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
type OldReply struct {
|
||||
proto.XXX_InternalExtensions `json:"-"`
|
||||
XXX_unrecognized []byte `json:"-"`
|
||||
}
|
||||
|
||||
func (m *OldReply) Reset() { *m = OldReply{} }
|
||||
func (m *OldReply) String() string { return proto.CompactTextString(m) }
|
||||
func (*OldReply) ProtoMessage() {}
|
||||
|
||||
func (m *OldReply) Marshal() ([]byte, error) {
|
||||
return proto.MarshalMessageSet(&m.XXX_InternalExtensions)
|
||||
}
|
||||
func (m *OldReply) Unmarshal(buf []byte) error {
|
||||
return proto.UnmarshalMessageSet(buf, &m.XXX_InternalExtensions)
|
||||
}
|
||||
func (m *OldReply) MarshalJSON() ([]byte, error) {
|
||||
return proto.MarshalMessageSetJSON(&m.XXX_InternalExtensions)
|
||||
}
|
||||
func (m *OldReply) UnmarshalJSON(buf []byte) error {
|
||||
return proto.UnmarshalMessageSetJSON(buf, &m.XXX_InternalExtensions)
|
||||
}
|
||||
|
||||
// ensure OldReply satisfies proto.Marshaler and proto.Unmarshaler
|
||||
var _ proto.Marshaler = (*OldReply)(nil)
|
||||
var _ proto.Unmarshaler = (*OldReply)(nil)
|
||||
|
||||
var extRange_OldReply = []proto.ExtensionRange{
|
||||
{100, 2147483646},
|
||||
}
|
||||
|
||||
func (*OldReply) ExtensionRangeArray() []proto.ExtensionRange {
|
||||
return extRange_OldReply
|
||||
}
|
||||
|
||||
type Communique struct {
|
||||
MakeMeCry *bool `protobuf:"varint,1,opt,name=make_me_cry,json=makeMeCry" json:"make_me_cry,omitempty"`
|
||||
// This is a oneof, called "union".
|
||||
//
|
||||
// Types that are valid to be assigned to Union:
|
||||
// *Communique_Number
|
||||
// *Communique_Name
|
||||
// *Communique_Data
|
||||
// *Communique_TempC
|
||||
// *Communique_Height
|
||||
// *Communique_Today
|
||||
// *Communique_Maybe
|
||||
// *Communique_Delta_
|
||||
// *Communique_Msg
|
||||
// *Communique_Somegroup
|
||||
Union isCommunique_Union `protobuf_oneof:"union"`
|
||||
XXX_unrecognized []byte `json:"-"`
|
||||
}
|
||||
|
||||
func (m *Communique) Reset() { *m = Communique{} }
|
||||
func (m *Communique) String() string { return proto.CompactTextString(m) }
|
||||
func (*Communique) ProtoMessage() {}
|
||||
|
||||
type isCommunique_Union interface {
|
||||
isCommunique_Union()
|
||||
}
|
||||
|
||||
type Communique_Number struct {
|
||||
Number int32 `protobuf:"varint,5,opt,name=number,oneof"`
|
||||
}
|
||||
type Communique_Name struct {
|
||||
Name string `protobuf:"bytes,6,opt,name=name,oneof"`
|
||||
}
|
||||
type Communique_Data struct {
|
||||
Data []byte `protobuf:"bytes,7,opt,name=data,oneof"`
|
||||
}
|
||||
type Communique_TempC struct {
|
||||
TempC float64 `protobuf:"fixed64,8,opt,name=temp_c,json=tempC,oneof"`
|
||||
}
|
||||
type Communique_Height struct {
|
||||
Height float32 `protobuf:"fixed32,9,opt,name=height,oneof"`
|
||||
}
|
||||
type Communique_Today struct {
|
||||
Today Days `protobuf:"varint,10,opt,name=today,enum=my.test.Days,oneof"`
|
||||
}
|
||||
type Communique_Maybe struct {
|
||||
Maybe bool `protobuf:"varint,11,opt,name=maybe,oneof"`
|
||||
}
|
||||
type Communique_Delta_ struct {
|
||||
Delta int32 `protobuf:"zigzag32,12,opt,name=delta,oneof"`
|
||||
}
|
||||
type Communique_Msg struct {
|
||||
Msg *Reply `protobuf:"bytes,13,opt,name=msg,oneof"`
|
||||
}
|
||||
type Communique_Somegroup struct {
|
||||
Somegroup *Communique_SomeGroup `protobuf:"group,14,opt,name=SomeGroup,json=somegroup,oneof"`
|
||||
}
|
||||
|
||||
func (*Communique_Number) isCommunique_Union() {}
|
||||
func (*Communique_Name) isCommunique_Union() {}
|
||||
func (*Communique_Data) isCommunique_Union() {}
|
||||
func (*Communique_TempC) isCommunique_Union() {}
|
||||
func (*Communique_Height) isCommunique_Union() {}
|
||||
func (*Communique_Today) isCommunique_Union() {}
|
||||
func (*Communique_Maybe) isCommunique_Union() {}
|
||||
func (*Communique_Delta_) isCommunique_Union() {}
|
||||
func (*Communique_Msg) isCommunique_Union() {}
|
||||
func (*Communique_Somegroup) isCommunique_Union() {}
|
||||
|
||||
func (m *Communique) GetUnion() isCommunique_Union {
|
||||
if m != nil {
|
||||
return m.Union
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (m *Communique) GetMakeMeCry() bool {
|
||||
if m != nil && m.MakeMeCry != nil {
|
||||
return *m.MakeMeCry
|
||||
}
|
||||
return false
|
||||
}
|
||||
|
||||
func (m *Communique) GetNumber() int32 {
|
||||
if x, ok := m.GetUnion().(*Communique_Number); ok {
|
||||
return x.Number
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
func (m *Communique) GetName() string {
|
||||
if x, ok := m.GetUnion().(*Communique_Name); ok {
|
||||
return x.Name
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
func (m *Communique) GetData() []byte {
|
||||
if x, ok := m.GetUnion().(*Communique_Data); ok {
|
||||
return x.Data
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (m *Communique) GetTempC() float64 {
|
||||
if x, ok := m.GetUnion().(*Communique_TempC); ok {
|
||||
return x.TempC
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
func (m *Communique) GetHeight() float32 {
|
||||
if x, ok := m.GetUnion().(*Communique_Height); ok {
|
||||
return x.Height
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
func (m *Communique) GetToday() Days {
|
||||
if x, ok := m.GetUnion().(*Communique_Today); ok {
|
||||
return x.Today
|
||||
}
|
||||
return Days_MONDAY
|
||||
}
|
||||
|
||||
func (m *Communique) GetMaybe() bool {
|
||||
if x, ok := m.GetUnion().(*Communique_Maybe); ok {
|
||||
return x.Maybe
|
||||
}
|
||||
return false
|
||||
}
|
||||
|
||||
func (m *Communique) GetDelta() int32 {
|
||||
if x, ok := m.GetUnion().(*Communique_Delta_); ok {
|
||||
return x.Delta
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
func (m *Communique) GetMsg() *Reply {
|
||||
if x, ok := m.GetUnion().(*Communique_Msg); ok {
|
||||
return x.Msg
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (m *Communique) GetSomegroup() *Communique_SomeGroup {
|
||||
if x, ok := m.GetUnion().(*Communique_Somegroup); ok {
|
||||
return x.Somegroup
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// XXX_OneofFuncs is for the internal use of the proto package.
|
||||
func (*Communique) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) {
|
||||
return _Communique_OneofMarshaler, _Communique_OneofUnmarshaler, _Communique_OneofSizer, []interface{}{
|
||||
(*Communique_Number)(nil),
|
||||
(*Communique_Name)(nil),
|
||||
(*Communique_Data)(nil),
|
||||
(*Communique_TempC)(nil),
|
||||
(*Communique_Height)(nil),
|
||||
(*Communique_Today)(nil),
|
||||
(*Communique_Maybe)(nil),
|
||||
(*Communique_Delta_)(nil),
|
||||
(*Communique_Msg)(nil),
|
||||
(*Communique_Somegroup)(nil),
|
||||
}
|
||||
}
|
||||
|
||||
func _Communique_OneofMarshaler(msg proto.Message, b *proto.Buffer) error {
|
||||
m := msg.(*Communique)
|
||||
// union
|
||||
switch x := m.Union.(type) {
|
||||
case *Communique_Number:
|
||||
b.EncodeVarint(5<<3 | proto.WireVarint)
|
||||
b.EncodeVarint(uint64(x.Number))
|
||||
case *Communique_Name:
|
||||
b.EncodeVarint(6<<3 | proto.WireBytes)
|
||||
b.EncodeStringBytes(x.Name)
|
||||
case *Communique_Data:
|
||||
b.EncodeVarint(7<<3 | proto.WireBytes)
|
||||
b.EncodeRawBytes(x.Data)
|
||||
case *Communique_TempC:
|
||||
b.EncodeVarint(8<<3 | proto.WireFixed64)
|
||||
b.EncodeFixed64(math.Float64bits(x.TempC))
|
||||
case *Communique_Height:
|
||||
b.EncodeVarint(9<<3 | proto.WireFixed32)
|
||||
b.EncodeFixed32(uint64(math.Float32bits(x.Height)))
|
||||
case *Communique_Today:
|
||||
b.EncodeVarint(10<<3 | proto.WireVarint)
|
||||
b.EncodeVarint(uint64(x.Today))
|
||||
case *Communique_Maybe:
|
||||
t := uint64(0)
|
||||
if x.Maybe {
|
||||
t = 1
|
||||
}
|
||||
b.EncodeVarint(11<<3 | proto.WireVarint)
|
||||
b.EncodeVarint(t)
|
||||
case *Communique_Delta_:
|
||||
b.EncodeVarint(12<<3 | proto.WireVarint)
|
||||
b.EncodeZigzag32(uint64(x.Delta))
|
||||
case *Communique_Msg:
|
||||
b.EncodeVarint(13<<3 | proto.WireBytes)
|
||||
if err := b.EncodeMessage(x.Msg); err != nil {
|
||||
return err
|
||||
}
|
||||
case *Communique_Somegroup:
|
||||
b.EncodeVarint(14<<3 | proto.WireStartGroup)
|
||||
if err := b.Marshal(x.Somegroup); err != nil {
|
||||
return err
|
||||
}
|
||||
b.EncodeVarint(14<<3 | proto.WireEndGroup)
|
||||
case nil:
|
||||
default:
|
||||
return fmt.Errorf("Communique.Union has unexpected type %T", x)
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func _Communique_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) {
|
||||
m := msg.(*Communique)
|
||||
switch tag {
|
||||
case 5: // union.number
|
||||
if wire != proto.WireVarint {
|
||||
return true, proto.ErrInternalBadWireType
|
||||
}
|
||||
x, err := b.DecodeVarint()
|
||||
m.Union = &Communique_Number{int32(x)}
|
||||
return true, err
|
||||
case 6: // union.name
|
||||
if wire != proto.WireBytes {
|
||||
return true, proto.ErrInternalBadWireType
|
||||
}
|
||||
x, err := b.DecodeStringBytes()
|
||||
m.Union = &Communique_Name{x}
|
||||
return true, err
|
||||
case 7: // union.data
|
||||
if wire != proto.WireBytes {
|
||||
return true, proto.ErrInternalBadWireType
|
||||
}
|
||||
x, err := b.DecodeRawBytes(true)
|
||||
m.Union = &Communique_Data{x}
|
||||
return true, err
|
||||
case 8: // union.temp_c
|
||||
if wire != proto.WireFixed64 {
|
||||
return true, proto.ErrInternalBadWireType
|
||||
}
|
||||
x, err := b.DecodeFixed64()
|
||||
m.Union = &Communique_TempC{math.Float64frombits(x)}
|
||||
return true, err
|
||||
case 9: // union.height
|
||||
if wire != proto.WireFixed32 {
|
||||
return true, proto.ErrInternalBadWireType
|
||||
}
|
||||
x, err := b.DecodeFixed32()
|
||||
m.Union = &Communique_Height{math.Float32frombits(uint32(x))}
|
||||
return true, err
|
||||
case 10: // union.today
|
||||
if wire != proto.WireVarint {
|
||||
return true, proto.ErrInternalBadWireType
|
||||
}
|
||||
x, err := b.DecodeVarint()
|
||||
m.Union = &Communique_Today{Days(x)}
|
||||
return true, err
|
||||
case 11: // union.maybe
|
||||
if wire != proto.WireVarint {
|
||||
return true, proto.ErrInternalBadWireType
|
||||
}
|
||||
x, err := b.DecodeVarint()
|
||||
m.Union = &Communique_Maybe{x != 0}
|
||||
return true, err
|
||||
case 12: // union.delta
|
||||
if wire != proto.WireVarint {
|
||||
return true, proto.ErrInternalBadWireType
|
||||
}
|
||||
x, err := b.DecodeZigzag32()
|
||||
m.Union = &Communique_Delta_{int32(x)}
|
||||
return true, err
|
||||
case 13: // union.msg
|
||||
if wire != proto.WireBytes {
|
||||
return true, proto.ErrInternalBadWireType
|
||||
}
|
||||
msg := new(Reply)
|
||||
err := b.DecodeMessage(msg)
|
||||
m.Union = &Communique_Msg{msg}
|
||||
return true, err
|
||||
case 14: // union.somegroup
|
||||
if wire != proto.WireStartGroup {
|
||||
return true, proto.ErrInternalBadWireType
|
||||
}
|
||||
msg := new(Communique_SomeGroup)
|
||||
err := b.DecodeGroup(msg)
|
||||
m.Union = &Communique_Somegroup{msg}
|
||||
return true, err
|
||||
default:
|
||||
return false, nil
|
||||
}
|
||||
}
|
||||
|
||||
func _Communique_OneofSizer(msg proto.Message) (n int) {
|
||||
m := msg.(*Communique)
|
||||
// union
|
||||
switch x := m.Union.(type) {
|
||||
case *Communique_Number:
|
||||
n += proto.SizeVarint(5<<3 | proto.WireVarint)
|
||||
n += proto.SizeVarint(uint64(x.Number))
|
||||
case *Communique_Name:
|
||||
n += proto.SizeVarint(6<<3 | proto.WireBytes)
|
||||
n += proto.SizeVarint(uint64(len(x.Name)))
|
||||
n += len(x.Name)
|
||||
case *Communique_Data:
|
||||
n += proto.SizeVarint(7<<3 | proto.WireBytes)
|
||||
n += proto.SizeVarint(uint64(len(x.Data)))
|
||||
n += len(x.Data)
|
||||
case *Communique_TempC:
|
||||
n += proto.SizeVarint(8<<3 | proto.WireFixed64)
|
||||
n += 8
|
||||
case *Communique_Height:
|
||||
n += proto.SizeVarint(9<<3 | proto.WireFixed32)
|
||||
n += 4
|
||||
case *Communique_Today:
|
||||
n += proto.SizeVarint(10<<3 | proto.WireVarint)
|
||||
n += proto.SizeVarint(uint64(x.Today))
|
||||
case *Communique_Maybe:
|
||||
n += proto.SizeVarint(11<<3 | proto.WireVarint)
|
||||
n += 1
|
||||
case *Communique_Delta_:
|
||||
n += proto.SizeVarint(12<<3 | proto.WireVarint)
|
||||
n += proto.SizeVarint(uint64((uint32(x.Delta) << 1) ^ uint32((int32(x.Delta) >> 31))))
|
||||
case *Communique_Msg:
|
||||
s := proto.Size(x.Msg)
|
||||
n += proto.SizeVarint(13<<3 | proto.WireBytes)
|
||||
n += proto.SizeVarint(uint64(s))
|
||||
n += s
|
||||
case *Communique_Somegroup:
|
||||
n += proto.SizeVarint(14<<3 | proto.WireStartGroup)
|
||||
n += proto.Size(x.Somegroup)
|
||||
n += proto.SizeVarint(14<<3 | proto.WireEndGroup)
|
||||
case nil:
|
||||
default:
|
||||
panic(fmt.Sprintf("proto: unexpected type %T in oneof", x))
|
||||
}
|
||||
return n
|
||||
}
|
||||
|
||||
type Communique_SomeGroup struct {
|
||||
Member *string `protobuf:"bytes,15,opt,name=member" json:"member,omitempty"`
|
||||
XXX_unrecognized []byte `json:"-"`
|
||||
}
|
||||
|
||||
func (m *Communique_SomeGroup) Reset() { *m = Communique_SomeGroup{} }
|
||||
func (m *Communique_SomeGroup) String() string { return proto.CompactTextString(m) }
|
||||
func (*Communique_SomeGroup) ProtoMessage() {}
|
||||
|
||||
func (m *Communique_SomeGroup) GetMember() string {
|
||||
if m != nil && m.Member != nil {
|
||||
return *m.Member
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
type Communique_Delta struct {
|
||||
XXX_unrecognized []byte `json:"-"`
|
||||
}
|
||||
|
||||
func (m *Communique_Delta) Reset() { *m = Communique_Delta{} }
|
||||
func (m *Communique_Delta) String() string { return proto.CompactTextString(m) }
|
||||
func (*Communique_Delta) ProtoMessage() {}
|
||||
|
||||
var E_Tag = &proto.ExtensionDesc{
|
||||
ExtendedType: (*Reply)(nil),
|
||||
ExtensionType: (*string)(nil),
|
||||
Field: 103,
|
||||
Name: "my.test.tag",
|
||||
Tag: "bytes,103,opt,name=tag",
|
||||
Filename: "my_test/test.proto",
|
||||
}
|
||||
|
||||
var E_Donut = &proto.ExtensionDesc{
|
||||
ExtendedType: (*Reply)(nil),
|
||||
ExtensionType: (*OtherReplyExtensions)(nil),
|
||||
Field: 106,
|
||||
Name: "my.test.donut",
|
||||
Tag: "bytes,106,opt,name=donut",
|
||||
Filename: "my_test/test.proto",
|
||||
}
|
||||
|
||||
func init() {
|
||||
proto.RegisterType((*Request)(nil), "my.test.Request")
|
||||
proto.RegisterType((*Request_SomeGroup)(nil), "my.test.Request.SomeGroup")
|
||||
proto.RegisterType((*Reply)(nil), "my.test.Reply")
|
||||
proto.RegisterType((*Reply_Entry)(nil), "my.test.Reply.Entry")
|
||||
proto.RegisterType((*OtherBase)(nil), "my.test.OtherBase")
|
||||
proto.RegisterType((*ReplyExtensions)(nil), "my.test.ReplyExtensions")
|
||||
proto.RegisterType((*OtherReplyExtensions)(nil), "my.test.OtherReplyExtensions")
|
||||
proto.RegisterType((*OldReply)(nil), "my.test.OldReply")
|
||||
proto.RegisterType((*Communique)(nil), "my.test.Communique")
|
||||
proto.RegisterType((*Communique_SomeGroup)(nil), "my.test.Communique.SomeGroup")
|
||||
proto.RegisterType((*Communique_Delta)(nil), "my.test.Communique.Delta")
|
||||
proto.RegisterEnum("my.test.HatType", HatType_name, HatType_value)
|
||||
proto.RegisterEnum("my.test.Days", Days_name, Days_value)
|
||||
proto.RegisterEnum("my.test.Request_Color", Request_Color_name, Request_Color_value)
|
||||
proto.RegisterEnum("my.test.Reply_Entry_Game", Reply_Entry_Game_name, Reply_Entry_Game_value)
|
||||
proto.RegisterExtension(E_ReplyExtensions_Time)
|
||||
proto.RegisterExtension(E_ReplyExtensions_Carrot)
|
||||
proto.RegisterExtension(E_ReplyExtensions_Donut)
|
||||
proto.RegisterExtension(E_Tag)
|
||||
proto.RegisterExtension(E_Donut)
|
||||
}
|
870
vendor/github.com/golang/protobuf/protoc-gen-go/testdata/my_test/test.pb.go.golden
generated
vendored
Normal file
870
vendor/github.com/golang/protobuf/protoc-gen-go/testdata/my_test/test.pb.go.golden
generated
vendored
Normal file
@ -0,0 +1,870 @@
|
||||
// Code generated by protoc-gen-go. DO NOT EDIT.
|
||||
// source: my_test/test.proto
|
||||
|
||||
/*
|
||||
Package my_test is a generated protocol buffer package.
|
||||
|
||||
This package holds interesting messages.
|
||||
|
||||
It is generated from these files:
|
||||
my_test/test.proto
|
||||
|
||||
It has these top-level messages:
|
||||
Request
|
||||
Reply
|
||||
OtherBase
|
||||
ReplyExtensions
|
||||
OtherReplyExtensions
|
||||
OldReply
|
||||
Communique
|
||||
*/
|
||||
package my_test
|
||||
|
||||
import proto "github.com/golang/protobuf/proto"
|
||||
import fmt "fmt"
|
||||
import math "math"
|
||||
import _ "github.com/golang/protobuf/protoc-gen-go/testdata/multi"
|
||||
|
||||
// Reference imports to suppress errors if they are not otherwise used.
|
||||
var _ = proto.Marshal
|
||||
var _ = fmt.Errorf
|
||||
var _ = math.Inf
|
||||
|
||||
// This is a compile-time assertion to ensure that this generated file
|
||||
// is compatible with the proto package it is being compiled against.
|
||||
// A compilation error at this line likely means your copy of the
|
||||
// proto package needs to be updated.
|
||||
const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package
|
||||
|
||||
type HatType int32
|
||||
|
||||
const (
|
||||
// deliberately skipping 0
|
||||
HatType_FEDORA HatType = 1
|
||||
HatType_FEZ HatType = 2
|
||||
)
|
||||
|
||||
var HatType_name = map[int32]string{
|
||||
1: "FEDORA",
|
||||
2: "FEZ",
|
||||
}
|
||||
var HatType_value = map[string]int32{
|
||||
"FEDORA": 1,
|
||||
"FEZ": 2,
|
||||
}
|
||||
|
||||
func (x HatType) Enum() *HatType {
|
||||
p := new(HatType)
|
||||
*p = x
|
||||
return p
|
||||
}
|
||||
func (x HatType) String() string {
|
||||
return proto.EnumName(HatType_name, int32(x))
|
||||
}
|
||||
func (x *HatType) UnmarshalJSON(data []byte) error {
|
||||
value, err := proto.UnmarshalJSONEnum(HatType_value, data, "HatType")
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
*x = HatType(value)
|
||||
return nil
|
||||
}
|
||||
|
||||
// This enum represents days of the week.
|
||||
type Days int32
|
||||
|
||||
const (
|
||||
Days_MONDAY Days = 1
|
||||
Days_TUESDAY Days = 2
|
||||
Days_LUNDI Days = 1
|
||||
)
|
||||
|
||||
var Days_name = map[int32]string{
|
||||
1: "MONDAY",
|
||||
2: "TUESDAY",
|
||||
// Duplicate value: 1: "LUNDI",
|
||||
}
|
||||
var Days_value = map[string]int32{
|
||||
"MONDAY": 1,
|
||||
"TUESDAY": 2,
|
||||
"LUNDI": 1,
|
||||
}
|
||||
|
||||
func (x Days) Enum() *Days {
|
||||
p := new(Days)
|
||||
*p = x
|
||||
return p
|
||||
}
|
||||
func (x Days) String() string {
|
||||
return proto.EnumName(Days_name, int32(x))
|
||||
}
|
||||
func (x *Days) UnmarshalJSON(data []byte) error {
|
||||
value, err := proto.UnmarshalJSONEnum(Days_value, data, "Days")
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
*x = Days(value)
|
||||
return nil
|
||||
}
|
||||
|
||||
type Request_Color int32
|
||||
|
||||
const (
|
||||
Request_RED Request_Color = 0
|
||||
Request_GREEN Request_Color = 1
|
||||
Request_BLUE Request_Color = 2
|
||||
)
|
||||
|
||||
var Request_Color_name = map[int32]string{
|
||||
0: "RED",
|
||||
1: "GREEN",
|
||||
2: "BLUE",
|
||||
}
|
||||
var Request_Color_value = map[string]int32{
|
||||
"RED": 0,
|
||||
"GREEN": 1,
|
||||
"BLUE": 2,
|
||||
}
|
||||
|
||||
func (x Request_Color) Enum() *Request_Color {
|
||||
p := new(Request_Color)
|
||||
*p = x
|
||||
return p
|
||||
}
|
||||
func (x Request_Color) String() string {
|
||||
return proto.EnumName(Request_Color_name, int32(x))
|
||||
}
|
||||
func (x *Request_Color) UnmarshalJSON(data []byte) error {
|
||||
value, err := proto.UnmarshalJSONEnum(Request_Color_value, data, "Request_Color")
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
*x = Request_Color(value)
|
||||
return nil
|
||||
}
|
||||
|
||||
type Reply_Entry_Game int32
|
||||
|
||||
const (
|
||||
Reply_Entry_FOOTBALL Reply_Entry_Game = 1
|
||||
Reply_Entry_TENNIS Reply_Entry_Game = 2
|
||||
)
|
||||
|
||||
var Reply_Entry_Game_name = map[int32]string{
|
||||
1: "FOOTBALL",
|
||||
2: "TENNIS",
|
||||
}
|
||||
var Reply_Entry_Game_value = map[string]int32{
|
||||
"FOOTBALL": 1,
|
||||
"TENNIS": 2,
|
||||
}
|
||||
|
||||
func (x Reply_Entry_Game) Enum() *Reply_Entry_Game {
|
||||
p := new(Reply_Entry_Game)
|
||||
*p = x
|
||||
return p
|
||||
}
|
||||
func (x Reply_Entry_Game) String() string {
|
||||
return proto.EnumName(Reply_Entry_Game_name, int32(x))
|
||||
}
|
||||
func (x *Reply_Entry_Game) UnmarshalJSON(data []byte) error {
|
||||
value, err := proto.UnmarshalJSONEnum(Reply_Entry_Game_value, data, "Reply_Entry_Game")
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
*x = Reply_Entry_Game(value)
|
||||
return nil
|
||||
}
|
||||
|
||||
// This is a message that might be sent somewhere.
|
||||
type Request struct {
|
||||
Key []int64 `protobuf:"varint,1,rep,name=key" json:"key,omitempty"`
|
||||
// optional imp.ImportedMessage imported_message = 2;
|
||||
Hue *Request_Color `protobuf:"varint,3,opt,name=hue,enum=my.test.Request_Color" json:"hue,omitempty"`
|
||||
Hat *HatType `protobuf:"varint,4,opt,name=hat,enum=my.test.HatType,def=1" json:"hat,omitempty"`
|
||||
// optional imp.ImportedMessage.Owner owner = 6;
|
||||
Deadline *float32 `protobuf:"fixed32,7,opt,name=deadline,def=inf" json:"deadline,omitempty"`
|
||||
Somegroup *Request_SomeGroup `protobuf:"group,8,opt,name=SomeGroup,json=somegroup" json:"somegroup,omitempty"`
|
||||
// This is a map field. It will generate map[int32]string.
|
||||
NameMapping map[int32]string `protobuf:"bytes,14,rep,name=name_mapping,json=nameMapping" json:"name_mapping,omitempty" protobuf_key:"varint,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
|
||||
// This is a map field whose value type is a message.
|
||||
MsgMapping map[int64]*Reply `protobuf:"bytes,15,rep,name=msg_mapping,json=msgMapping" json:"msg_mapping,omitempty" protobuf_key:"zigzag64,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
|
||||
Reset_ *int32 `protobuf:"varint,12,opt,name=reset" json:"reset,omitempty"`
|
||||
// This field should not conflict with any getters.
|
||||
GetKey_ *string `protobuf:"bytes,16,opt,name=get_key,json=getKey" json:"get_key,omitempty"`
|
||||
XXX_unrecognized []byte `json:"-"`
|
||||
}
|
||||
|
||||
func (m *Request) Reset() { *m = Request{} }
|
||||
func (m *Request) String() string { return proto.CompactTextString(m) }
|
||||
func (*Request) ProtoMessage() {}
|
||||
|
||||
const Default_Request_Hat HatType = HatType_FEDORA
|
||||
|
||||
var Default_Request_Deadline float32 = float32(math.Inf(1))
|
||||
|
||||
func (m *Request) GetKey() []int64 {
|
||||
if m != nil {
|
||||
return m.Key
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (m *Request) GetHue() Request_Color {
|
||||
if m != nil && m.Hue != nil {
|
||||
return *m.Hue
|
||||
}
|
||||
return Request_RED
|
||||
}
|
||||
|
||||
func (m *Request) GetHat() HatType {
|
||||
if m != nil && m.Hat != nil {
|
||||
return *m.Hat
|
||||
}
|
||||
return Default_Request_Hat
|
||||
}
|
||||
|
||||
func (m *Request) GetDeadline() float32 {
|
||||
if m != nil && m.Deadline != nil {
|
||||
return *m.Deadline
|
||||
}
|
||||
return Default_Request_Deadline
|
||||
}
|
||||
|
||||
func (m *Request) GetSomegroup() *Request_SomeGroup {
|
||||
if m != nil {
|
||||
return m.Somegroup
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (m *Request) GetNameMapping() map[int32]string {
|
||||
if m != nil {
|
||||
return m.NameMapping
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (m *Request) GetMsgMapping() map[int64]*Reply {
|
||||
if m != nil {
|
||||
return m.MsgMapping
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (m *Request) GetReset_() int32 {
|
||||
if m != nil && m.Reset_ != nil {
|
||||
return *m.Reset_
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
func (m *Request) GetGetKey_() string {
|
||||
if m != nil && m.GetKey_ != nil {
|
||||
return *m.GetKey_
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
type Request_SomeGroup struct {
|
||||
GroupField *int32 `protobuf:"varint,9,opt,name=group_field,json=groupField" json:"group_field,omitempty"`
|
||||
XXX_unrecognized []byte `json:"-"`
|
||||
}
|
||||
|
||||
func (m *Request_SomeGroup) Reset() { *m = Request_SomeGroup{} }
|
||||
func (m *Request_SomeGroup) String() string { return proto.CompactTextString(m) }
|
||||
func (*Request_SomeGroup) ProtoMessage() {}
|
||||
|
||||
func (m *Request_SomeGroup) GetGroupField() int32 {
|
||||
if m != nil && m.GroupField != nil {
|
||||
return *m.GroupField
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
type Reply struct {
|
||||
Found []*Reply_Entry `protobuf:"bytes,1,rep,name=found" json:"found,omitempty"`
|
||||
CompactKeys []int32 `protobuf:"varint,2,rep,packed,name=compact_keys,json=compactKeys" json:"compact_keys,omitempty"`
|
||||
proto.XXX_InternalExtensions `json:"-"`
|
||||
XXX_unrecognized []byte `json:"-"`
|
||||
}
|
||||
|
||||
func (m *Reply) Reset() { *m = Reply{} }
|
||||
func (m *Reply) String() string { return proto.CompactTextString(m) }
|
||||
func (*Reply) ProtoMessage() {}
|
||||
|
||||
var extRange_Reply = []proto.ExtensionRange{
|
||||
{100, 536870911},
|
||||
}
|
||||
|
||||
func (*Reply) ExtensionRangeArray() []proto.ExtensionRange {
|
||||
return extRange_Reply
|
||||
}
|
||||
|
||||
func (m *Reply) GetFound() []*Reply_Entry {
|
||||
if m != nil {
|
||||
return m.Found
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (m *Reply) GetCompactKeys() []int32 {
|
||||
if m != nil {
|
||||
return m.CompactKeys
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
type Reply_Entry struct {
|
||||
KeyThatNeeds_1234Camel_CasIng *int64 `protobuf:"varint,1,req,name=key_that_needs_1234camel_CasIng,json=keyThatNeeds1234camelCasIng" json:"key_that_needs_1234camel_CasIng,omitempty"`
|
||||
Value *int64 `protobuf:"varint,2,opt,name=value,def=7" json:"value,omitempty"`
|
||||
XMyFieldName_2 *int64 `protobuf:"varint,3,opt,name=_my_field_name_2,json=MyFieldName2" json:"_my_field_name_2,omitempty"`
|
||||
XXX_unrecognized []byte `json:"-"`
|
||||
}
|
||||
|
||||
func (m *Reply_Entry) Reset() { *m = Reply_Entry{} }
|
||||
func (m *Reply_Entry) String() string { return proto.CompactTextString(m) }
|
||||
func (*Reply_Entry) ProtoMessage() {}
|
||||
|
||||
const Default_Reply_Entry_Value int64 = 7
|
||||
|
||||
func (m *Reply_Entry) GetKeyThatNeeds_1234Camel_CasIng() int64 {
|
||||
if m != nil && m.KeyThatNeeds_1234Camel_CasIng != nil {
|
||||
return *m.KeyThatNeeds_1234Camel_CasIng
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
func (m *Reply_Entry) GetValue() int64 {
|
||||
if m != nil && m.Value != nil {
|
||||
return *m.Value
|
||||
}
|
||||
return Default_Reply_Entry_Value
|
||||
}
|
||||
|
||||
func (m *Reply_Entry) GetXMyFieldName_2() int64 {
|
||||
if m != nil && m.XMyFieldName_2 != nil {
|
||||
return *m.XMyFieldName_2
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
type OtherBase struct {
|
||||
Name *string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
|
||||
proto.XXX_InternalExtensions `json:"-"`
|
||||
XXX_unrecognized []byte `json:"-"`
|
||||
}
|
||||
|
||||
func (m *OtherBase) Reset() { *m = OtherBase{} }
|
||||
func (m *OtherBase) String() string { return proto.CompactTextString(m) }
|
||||
func (*OtherBase) ProtoMessage() {}
|
||||
|
||||
var extRange_OtherBase = []proto.ExtensionRange{
|
||||
{100, 536870911},
|
||||
}
|
||||
|
||||
func (*OtherBase) ExtensionRangeArray() []proto.ExtensionRange {
|
||||
return extRange_OtherBase
|
||||
}
|
||||
|
||||
func (m *OtherBase) GetName() string {
|
||||
if m != nil && m.Name != nil {
|
||||
return *m.Name
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
type ReplyExtensions struct {
|
||||
XXX_unrecognized []byte `json:"-"`
|
||||
}
|
||||
|
||||
func (m *ReplyExtensions) Reset() { *m = ReplyExtensions{} }
|
||||
func (m *ReplyExtensions) String() string { return proto.CompactTextString(m) }
|
||||
func (*ReplyExtensions) ProtoMessage() {}
|
||||
|
||||
var E_ReplyExtensions_Time = &proto.ExtensionDesc{
|
||||
ExtendedType: (*Reply)(nil),
|
||||
ExtensionType: (*float64)(nil),
|
||||
Field: 101,
|
||||
Name: "my.test.ReplyExtensions.time",
|
||||
Tag: "fixed64,101,opt,name=time",
|
||||
Filename: "my_test/test.proto",
|
||||
}
|
||||
|
||||
var E_ReplyExtensions_Carrot = &proto.ExtensionDesc{
|
||||
ExtendedType: (*Reply)(nil),
|
||||
ExtensionType: (*ReplyExtensions)(nil),
|
||||
Field: 105,
|
||||
Name: "my.test.ReplyExtensions.carrot",
|
||||
Tag: "bytes,105,opt,name=carrot",
|
||||
Filename: "my_test/test.proto",
|
||||
}
|
||||
|
||||
var E_ReplyExtensions_Donut = &proto.ExtensionDesc{
|
||||
ExtendedType: (*OtherBase)(nil),
|
||||
ExtensionType: (*ReplyExtensions)(nil),
|
||||
Field: 101,
|
||||
Name: "my.test.ReplyExtensions.donut",
|
||||
Tag: "bytes,101,opt,name=donut",
|
||||
Filename: "my_test/test.proto",
|
||||
}
|
||||
|
||||
type OtherReplyExtensions struct {
|
||||
Key *int32 `protobuf:"varint,1,opt,name=key" json:"key,omitempty"`
|
||||
XXX_unrecognized []byte `json:"-"`
|
||||
}
|
||||
|
||||
func (m *OtherReplyExtensions) Reset() { *m = OtherReplyExtensions{} }
|
||||
func (m *OtherReplyExtensions) String() string { return proto.CompactTextString(m) }
|
||||
func (*OtherReplyExtensions) ProtoMessage() {}
|
||||
|
||||
func (m *OtherReplyExtensions) GetKey() int32 {
|
||||
if m != nil && m.Key != nil {
|
||||
return *m.Key
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
type OldReply struct {
|
||||
proto.XXX_InternalExtensions `json:"-"`
|
||||
XXX_unrecognized []byte `json:"-"`
|
||||
}
|
||||
|
||||
func (m *OldReply) Reset() { *m = OldReply{} }
|
||||
func (m *OldReply) String() string { return proto.CompactTextString(m) }
|
||||
func (*OldReply) ProtoMessage() {}
|
||||
|
||||
func (m *OldReply) Marshal() ([]byte, error) {
|
||||
return proto.MarshalMessageSet(&m.XXX_InternalExtensions)
|
||||
}
|
||||
func (m *OldReply) Unmarshal(buf []byte) error {
|
||||
return proto.UnmarshalMessageSet(buf, &m.XXX_InternalExtensions)
|
||||
}
|
||||
func (m *OldReply) MarshalJSON() ([]byte, error) {
|
||||
return proto.MarshalMessageSetJSON(&m.XXX_InternalExtensions)
|
||||
}
|
||||
func (m *OldReply) UnmarshalJSON(buf []byte) error {
|
||||
return proto.UnmarshalMessageSetJSON(buf, &m.XXX_InternalExtensions)
|
||||
}
|
||||
|
||||
// ensure OldReply satisfies proto.Marshaler and proto.Unmarshaler
|
||||
var _ proto.Marshaler = (*OldReply)(nil)
|
||||
var _ proto.Unmarshaler = (*OldReply)(nil)
|
||||
|
||||
var extRange_OldReply = []proto.ExtensionRange{
|
||||
{100, 2147483646},
|
||||
}
|
||||
|
||||
func (*OldReply) ExtensionRangeArray() []proto.ExtensionRange {
|
||||
return extRange_OldReply
|
||||
}
|
||||
|
||||
type Communique struct {
|
||||
MakeMeCry *bool `protobuf:"varint,1,opt,name=make_me_cry,json=makeMeCry" json:"make_me_cry,omitempty"`
|
||||
// This is a oneof, called "union".
|
||||
//
|
||||
// Types that are valid to be assigned to Union:
|
||||
// *Communique_Number
|
||||
// *Communique_Name
|
||||
// *Communique_Data
|
||||
// *Communique_TempC
|
||||
// *Communique_Height
|
||||
// *Communique_Today
|
||||
// *Communique_Maybe
|
||||
// *Communique_Delta_
|
||||
// *Communique_Msg
|
||||
// *Communique_Somegroup
|
||||
Union isCommunique_Union `protobuf_oneof:"union"`
|
||||
XXX_unrecognized []byte `json:"-"`
|
||||
}
|
||||
|
||||
func (m *Communique) Reset() { *m = Communique{} }
|
||||
func (m *Communique) String() string { return proto.CompactTextString(m) }
|
||||
func (*Communique) ProtoMessage() {}
|
||||
|
||||
type isCommunique_Union interface {
|
||||
isCommunique_Union()
|
||||
}
|
||||
|
||||
type Communique_Number struct {
|
||||
Number int32 `protobuf:"varint,5,opt,name=number,oneof"`
|
||||
}
|
||||
type Communique_Name struct {
|
||||
Name string `protobuf:"bytes,6,opt,name=name,oneof"`
|
||||
}
|
||||
type Communique_Data struct {
|
||||
Data []byte `protobuf:"bytes,7,opt,name=data,oneof"`
|
||||
}
|
||||
type Communique_TempC struct {
|
||||
TempC float64 `protobuf:"fixed64,8,opt,name=temp_c,json=tempC,oneof"`
|
||||
}
|
||||
type Communique_Height struct {
|
||||
Height float32 `protobuf:"fixed32,9,opt,name=height,oneof"`
|
||||
}
|
||||
type Communique_Today struct {
|
||||
Today Days `protobuf:"varint,10,opt,name=today,enum=my.test.Days,oneof"`
|
||||
}
|
||||
type Communique_Maybe struct {
|
||||
Maybe bool `protobuf:"varint,11,opt,name=maybe,oneof"`
|
||||
}
|
||||
type Communique_Delta_ struct {
|
||||
Delta int32 `protobuf:"zigzag32,12,opt,name=delta,oneof"`
|
||||
}
|
||||
type Communique_Msg struct {
|
||||
Msg *Reply `protobuf:"bytes,13,opt,name=msg,oneof"`
|
||||
}
|
||||
type Communique_Somegroup struct {
|
||||
Somegroup *Communique_SomeGroup `protobuf:"group,14,opt,name=SomeGroup,json=somegroup,oneof"`
|
||||
}
|
||||
|
||||
func (*Communique_Number) isCommunique_Union() {}
|
||||
func (*Communique_Name) isCommunique_Union() {}
|
||||
func (*Communique_Data) isCommunique_Union() {}
|
||||
func (*Communique_TempC) isCommunique_Union() {}
|
||||
func (*Communique_Height) isCommunique_Union() {}
|
||||
func (*Communique_Today) isCommunique_Union() {}
|
||||
func (*Communique_Maybe) isCommunique_Union() {}
|
||||
func (*Communique_Delta_) isCommunique_Union() {}
|
||||
func (*Communique_Msg) isCommunique_Union() {}
|
||||
func (*Communique_Somegroup) isCommunique_Union() {}
|
||||
|
||||
func (m *Communique) GetUnion() isCommunique_Union {
|
||||
if m != nil {
|
||||
return m.Union
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (m *Communique) GetMakeMeCry() bool {
|
||||
if m != nil && m.MakeMeCry != nil {
|
||||
return *m.MakeMeCry
|
||||
}
|
||||
return false
|
||||
}
|
||||
|
||||
func (m *Communique) GetNumber() int32 {
|
||||
if x, ok := m.GetUnion().(*Communique_Number); ok {
|
||||
return x.Number
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
func (m *Communique) GetName() string {
|
||||
if x, ok := m.GetUnion().(*Communique_Name); ok {
|
||||
return x.Name
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
func (m *Communique) GetData() []byte {
|
||||
if x, ok := m.GetUnion().(*Communique_Data); ok {
|
||||
return x.Data
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (m *Communique) GetTempC() float64 {
|
||||
if x, ok := m.GetUnion().(*Communique_TempC); ok {
|
||||
return x.TempC
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
func (m *Communique) GetHeight() float32 {
|
||||
if x, ok := m.GetUnion().(*Communique_Height); ok {
|
||||
return x.Height
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
func (m *Communique) GetToday() Days {
|
||||
if x, ok := m.GetUnion().(*Communique_Today); ok {
|
||||
return x.Today
|
||||
}
|
||||
return Days_MONDAY
|
||||
}
|
||||
|
||||
func (m *Communique) GetMaybe() bool {
|
||||
if x, ok := m.GetUnion().(*Communique_Maybe); ok {
|
||||
return x.Maybe
|
||||
}
|
||||
return false
|
||||
}
|
||||
|
||||
func (m *Communique) GetDelta() int32 {
|
||||
if x, ok := m.GetUnion().(*Communique_Delta_); ok {
|
||||
return x.Delta
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
func (m *Communique) GetMsg() *Reply {
|
||||
if x, ok := m.GetUnion().(*Communique_Msg); ok {
|
||||
return x.Msg
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (m *Communique) GetSomegroup() *Communique_SomeGroup {
|
||||
if x, ok := m.GetUnion().(*Communique_Somegroup); ok {
|
||||
return x.Somegroup
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// XXX_OneofFuncs is for the internal use of the proto package.
|
||||
func (*Communique) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) {
|
||||
return _Communique_OneofMarshaler, _Communique_OneofUnmarshaler, _Communique_OneofSizer, []interface{}{
|
||||
(*Communique_Number)(nil),
|
||||
(*Communique_Name)(nil),
|
||||
(*Communique_Data)(nil),
|
||||
(*Communique_TempC)(nil),
|
||||
(*Communique_Height)(nil),
|
||||
(*Communique_Today)(nil),
|
||||
(*Communique_Maybe)(nil),
|
||||
(*Communique_Delta_)(nil),
|
||||
(*Communique_Msg)(nil),
|
||||
(*Communique_Somegroup)(nil),
|
||||
}
|
||||
}
|
||||
|
||||
func _Communique_OneofMarshaler(msg proto.Message, b *proto.Buffer) error {
|
||||
m := msg.(*Communique)
|
||||
// union
|
||||
switch x := m.Union.(type) {
|
||||
case *Communique_Number:
|
||||
b.EncodeVarint(5<<3 | proto.WireVarint)
|
||||
b.EncodeVarint(uint64(x.Number))
|
||||
case *Communique_Name:
|
||||
b.EncodeVarint(6<<3 | proto.WireBytes)
|
||||
b.EncodeStringBytes(x.Name)
|
||||
case *Communique_Data:
|
||||
b.EncodeVarint(7<<3 | proto.WireBytes)
|
||||
b.EncodeRawBytes(x.Data)
|
||||
case *Communique_TempC:
|
||||
b.EncodeVarint(8<<3 | proto.WireFixed64)
|
||||
b.EncodeFixed64(math.Float64bits(x.TempC))
|
||||
case *Communique_Height:
|
||||
b.EncodeVarint(9<<3 | proto.WireFixed32)
|
||||
b.EncodeFixed32(uint64(math.Float32bits(x.Height)))
|
||||
case *Communique_Today:
|
||||
b.EncodeVarint(10<<3 | proto.WireVarint)
|
||||
b.EncodeVarint(uint64(x.Today))
|
||||
case *Communique_Maybe:
|
||||
t := uint64(0)
|
||||
if x.Maybe {
|
||||
t = 1
|
||||
}
|
||||
b.EncodeVarint(11<<3 | proto.WireVarint)
|
||||
b.EncodeVarint(t)
|
||||
case *Communique_Delta_:
|
||||
b.EncodeVarint(12<<3 | proto.WireVarint)
|
||||
b.EncodeZigzag32(uint64(x.Delta))
|
||||
case *Communique_Msg:
|
||||
b.EncodeVarint(13<<3 | proto.WireBytes)
|
||||
if err := b.EncodeMessage(x.Msg); err != nil {
|
||||
return err
|
||||
}
|
||||
case *Communique_Somegroup:
|
||||
b.EncodeVarint(14<<3 | proto.WireStartGroup)
|
||||
if err := b.Marshal(x.Somegroup); err != nil {
|
||||
return err
|
||||
}
|
||||
b.EncodeVarint(14<<3 | proto.WireEndGroup)
|
||||
case nil:
|
||||
default:
|
||||
return fmt.Errorf("Communique.Union has unexpected type %T", x)
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func _Communique_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) {
|
||||
m := msg.(*Communique)
|
||||
switch tag {
|
||||
case 5: // union.number
|
||||
if wire != proto.WireVarint {
|
||||
return true, proto.ErrInternalBadWireType
|
||||
}
|
||||
x, err := b.DecodeVarint()
|
||||
m.Union = &Communique_Number{int32(x)}
|
||||
return true, err
|
||||
case 6: // union.name
|
||||
if wire != proto.WireBytes {
|
||||
return true, proto.ErrInternalBadWireType
|
||||
}
|
||||
x, err := b.DecodeStringBytes()
|
||||
m.Union = &Communique_Name{x}
|
||||
return true, err
|
||||
case 7: // union.data
|
||||
if wire != proto.WireBytes {
|
||||
return true, proto.ErrInternalBadWireType
|
||||
}
|
||||
x, err := b.DecodeRawBytes(true)
|
||||
m.Union = &Communique_Data{x}
|
||||
return true, err
|
||||
case 8: // union.temp_c
|
||||
if wire != proto.WireFixed64 {
|
||||
return true, proto.ErrInternalBadWireType
|
||||
}
|
||||
x, err := b.DecodeFixed64()
|
||||
m.Union = &Communique_TempC{math.Float64frombits(x)}
|
||||
return true, err
|
||||
case 9: // union.height
|
||||
if wire != proto.WireFixed32 {
|
||||
return true, proto.ErrInternalBadWireType
|
||||
}
|
||||
x, err := b.DecodeFixed32()
|
||||
m.Union = &Communique_Height{math.Float32frombits(uint32(x))}
|
||||
return true, err
|
||||
case 10: // union.today
|
||||
if wire != proto.WireVarint {
|
||||
return true, proto.ErrInternalBadWireType
|
||||
}
|
||||
x, err := b.DecodeVarint()
|
||||
m.Union = &Communique_Today{Days(x)}
|
||||
return true, err
|
||||
case 11: // union.maybe
|
||||
if wire != proto.WireVarint {
|
||||
return true, proto.ErrInternalBadWireType
|
||||
}
|
||||
x, err := b.DecodeVarint()
|
||||
m.Union = &Communique_Maybe{x != 0}
|
||||
return true, err
|
||||
case 12: // union.delta
|
||||
if wire != proto.WireVarint {
|
||||
return true, proto.ErrInternalBadWireType
|
||||
}
|
||||
x, err := b.DecodeZigzag32()
|
||||
m.Union = &Communique_Delta_{int32(x)}
|
||||
return true, err
|
||||
case 13: // union.msg
|
||||
if wire != proto.WireBytes {
|
||||
return true, proto.ErrInternalBadWireType
|
||||
}
|
||||
msg := new(Reply)
|
||||
err := b.DecodeMessage(msg)
|
||||
m.Union = &Communique_Msg{msg}
|
||||
return true, err
|
||||
case 14: // union.somegroup
|
||||
if wire != proto.WireStartGroup {
|
||||
return true, proto.ErrInternalBadWireType
|
||||
}
|
||||
msg := new(Communique_SomeGroup)
|
||||
err := b.DecodeGroup(msg)
|
||||
m.Union = &Communique_Somegroup{msg}
|
||||
return true, err
|
||||
default:
|
||||
return false, nil
|
||||
}
|
||||
}
|
||||
|
||||
func _Communique_OneofSizer(msg proto.Message) (n int) {
|
||||
m := msg.(*Communique)
|
||||
// union
|
||||
switch x := m.Union.(type) {
|
||||
case *Communique_Number:
|
||||
n += proto.SizeVarint(5<<3 | proto.WireVarint)
|
||||
n += proto.SizeVarint(uint64(x.Number))
|
||||
case *Communique_Name:
|
||||
n += proto.SizeVarint(6<<3 | proto.WireBytes)
|
||||
n += proto.SizeVarint(uint64(len(x.Name)))
|
||||
n += len(x.Name)
|
||||
case *Communique_Data:
|
||||
n += proto.SizeVarint(7<<3 | proto.WireBytes)
|
||||
n += proto.SizeVarint(uint64(len(x.Data)))
|
||||
n += len(x.Data)
|
||||
case *Communique_TempC:
|
||||
n += proto.SizeVarint(8<<3 | proto.WireFixed64)
|
||||
n += 8
|
||||
case *Communique_Height:
|
||||
n += proto.SizeVarint(9<<3 | proto.WireFixed32)
|
||||
n += 4
|
||||
case *Communique_Today:
|
||||
n += proto.SizeVarint(10<<3 | proto.WireVarint)
|
||||
n += proto.SizeVarint(uint64(x.Today))
|
||||
case *Communique_Maybe:
|
||||
n += proto.SizeVarint(11<<3 | proto.WireVarint)
|
||||
n += 1
|
||||
case *Communique_Delta_:
|
||||
n += proto.SizeVarint(12<<3 | proto.WireVarint)
|
||||
n += proto.SizeVarint(uint64((uint32(x.Delta) << 1) ^ uint32((int32(x.Delta) >> 31))))
|
||||
case *Communique_Msg:
|
||||
s := proto.Size(x.Msg)
|
||||
n += proto.SizeVarint(13<<3 | proto.WireBytes)
|
||||
n += proto.SizeVarint(uint64(s))
|
||||
n += s
|
||||
case *Communique_Somegroup:
|
||||
n += proto.SizeVarint(14<<3 | proto.WireStartGroup)
|
||||
n += proto.Size(x.Somegroup)
|
||||
n += proto.SizeVarint(14<<3 | proto.WireEndGroup)
|
||||
case nil:
|
||||
default:
|
||||
panic(fmt.Sprintf("proto: unexpected type %T in oneof", x))
|
||||
}
|
||||
return n
|
||||
}
|
||||
|
||||
type Communique_SomeGroup struct {
|
||||
Member *string `protobuf:"bytes,15,opt,name=member" json:"member,omitempty"`
|
||||
XXX_unrecognized []byte `json:"-"`
|
||||
}
|
||||
|
||||
func (m *Communique_SomeGroup) Reset() { *m = Communique_SomeGroup{} }
|
||||
func (m *Communique_SomeGroup) String() string { return proto.CompactTextString(m) }
|
||||
func (*Communique_SomeGroup) ProtoMessage() {}
|
||||
|
||||
func (m *Communique_SomeGroup) GetMember() string {
|
||||
if m != nil && m.Member != nil {
|
||||
return *m.Member
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
type Communique_Delta struct {
|
||||
XXX_unrecognized []byte `json:"-"`
|
||||
}
|
||||
|
||||
func (m *Communique_Delta) Reset() { *m = Communique_Delta{} }
|
||||
func (m *Communique_Delta) String() string { return proto.CompactTextString(m) }
|
||||
func (*Communique_Delta) ProtoMessage() {}
|
||||
|
||||
var E_Tag = &proto.ExtensionDesc{
|
||||
ExtendedType: (*Reply)(nil),
|
||||
ExtensionType: (*string)(nil),
|
||||
Field: 103,
|
||||
Name: "my.test.tag",
|
||||
Tag: "bytes,103,opt,name=tag",
|
||||
Filename: "my_test/test.proto",
|
||||
}
|
||||
|
||||
var E_Donut = &proto.ExtensionDesc{
|
||||
ExtendedType: (*Reply)(nil),
|
||||
ExtensionType: (*OtherReplyExtensions)(nil),
|
||||
Field: 106,
|
||||
Name: "my.test.donut",
|
||||
Tag: "bytes,106,opt,name=donut",
|
||||
Filename: "my_test/test.proto",
|
||||
}
|
||||
|
||||
func init() {
|
||||
proto.RegisterType((*Request)(nil), "my.test.Request")
|
||||
proto.RegisterType((*Request_SomeGroup)(nil), "my.test.Request.SomeGroup")
|
||||
proto.RegisterType((*Reply)(nil), "my.test.Reply")
|
||||
proto.RegisterType((*Reply_Entry)(nil), "my.test.Reply.Entry")
|
||||
proto.RegisterType((*OtherBase)(nil), "my.test.OtherBase")
|
||||
proto.RegisterType((*ReplyExtensions)(nil), "my.test.ReplyExtensions")
|
||||
proto.RegisterType((*OtherReplyExtensions)(nil), "my.test.OtherReplyExtensions")
|
||||
proto.RegisterType((*OldReply)(nil), "my.test.OldReply")
|
||||
proto.RegisterType((*Communique)(nil), "my.test.Communique")
|
||||
proto.RegisterType((*Communique_SomeGroup)(nil), "my.test.Communique.SomeGroup")
|
||||
proto.RegisterType((*Communique_Delta)(nil), "my.test.Communique.Delta")
|
||||
proto.RegisterEnum("my.test.HatType", HatType_name, HatType_value)
|
||||
proto.RegisterEnum("my.test.Days", Days_name, Days_value)
|
||||
proto.RegisterEnum("my.test.Request_Color", Request_Color_name, Request_Color_value)
|
||||
proto.RegisterEnum("my.test.Reply_Entry_Game", Reply_Entry_Game_name, Reply_Entry_Game_value)
|
||||
proto.RegisterExtension(E_ReplyExtensions_Time)
|
||||
proto.RegisterExtension(E_ReplyExtensions_Carrot)
|
||||
proto.RegisterExtension(E_ReplyExtensions_Donut)
|
||||
proto.RegisterExtension(E_Tag)
|
||||
proto.RegisterExtension(E_Donut)
|
||||
}
|
156
vendor/github.com/golang/protobuf/protoc-gen-go/testdata/my_test/test.proto
generated
vendored
Normal file
156
vendor/github.com/golang/protobuf/protoc-gen-go/testdata/my_test/test.proto
generated
vendored
Normal file
@ -0,0 +1,156 @@
|
||||
// Go support for Protocol Buffers - Google's data interchange format
|
||||
//
|
||||
// Copyright 2010 The Go Authors. All rights reserved.
|
||||
// https://github.com/golang/protobuf
|
||||
//
|
||||
// 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.
|
||||
|
||||
syntax = "proto2";
|
||||
|
||||
// This package holds interesting messages.
|
||||
package my.test; // dotted package name
|
||||
|
||||
//import "imp.proto";
|
||||
import "multi/multi1.proto"; // unused import
|
||||
|
||||
enum HatType {
|
||||
// deliberately skipping 0
|
||||
FEDORA = 1;
|
||||
FEZ = 2;
|
||||
}
|
||||
|
||||
// This enum represents days of the week.
|
||||
enum Days {
|
||||
option allow_alias = true;
|
||||
|
||||
MONDAY = 1;
|
||||
TUESDAY = 2;
|
||||
LUNDI = 1; // same value as MONDAY
|
||||
}
|
||||
|
||||
// This is a message that might be sent somewhere.
|
||||
message Request {
|
||||
enum Color {
|
||||
RED = 0;
|
||||
GREEN = 1;
|
||||
BLUE = 2;
|
||||
}
|
||||
repeated int64 key = 1;
|
||||
// optional imp.ImportedMessage imported_message = 2;
|
||||
optional Color hue = 3; // no default
|
||||
optional HatType hat = 4 [default=FEDORA];
|
||||
// optional imp.ImportedMessage.Owner owner = 6;
|
||||
optional float deadline = 7 [default=inf];
|
||||
optional group SomeGroup = 8 {
|
||||
optional int32 group_field = 9;
|
||||
}
|
||||
|
||||
// These foreign types are in imp2.proto,
|
||||
// which is publicly imported by imp.proto.
|
||||
// optional imp.PubliclyImportedMessage pub = 10;
|
||||
// optional imp.PubliclyImportedEnum pub_enum = 13 [default=HAIR];
|
||||
|
||||
|
||||
// This is a map field. It will generate map[int32]string.
|
||||
map<int32, string> name_mapping = 14;
|
||||
// This is a map field whose value type is a message.
|
||||
map<sint64, Reply> msg_mapping = 15;
|
||||
|
||||
optional int32 reset = 12;
|
||||
// This field should not conflict with any getters.
|
||||
optional string get_key = 16;
|
||||
}
|
||||
|
||||
message Reply {
|
||||
message Entry {
|
||||
required int64 key_that_needs_1234camel_CasIng = 1;
|
||||
optional int64 value = 2 [default=7];
|
||||
optional int64 _my_field_name_2 = 3;
|
||||
enum Game {
|
||||
FOOTBALL = 1;
|
||||
TENNIS = 2;
|
||||
}
|
||||
}
|
||||
repeated Entry found = 1;
|
||||
repeated int32 compact_keys = 2 [packed=true];
|
||||
extensions 100 to max;
|
||||
}
|
||||
|
||||
message OtherBase {
|
||||
optional string name = 1;
|
||||
extensions 100 to max;
|
||||
}
|
||||
|
||||
message ReplyExtensions {
|
||||
extend Reply {
|
||||
optional double time = 101;
|
||||
optional ReplyExtensions carrot = 105;
|
||||
}
|
||||
extend OtherBase {
|
||||
optional ReplyExtensions donut = 101;
|
||||
}
|
||||
}
|
||||
|
||||
message OtherReplyExtensions {
|
||||
optional int32 key = 1;
|
||||
}
|
||||
|
||||
// top-level extension
|
||||
extend Reply {
|
||||
optional string tag = 103;
|
||||
optional OtherReplyExtensions donut = 106;
|
||||
// optional imp.ImportedMessage elephant = 107; // extend with message from another file.
|
||||
}
|
||||
|
||||
message OldReply {
|
||||
// Extensions will be encoded in MessageSet wire format.
|
||||
option message_set_wire_format = true;
|
||||
extensions 100 to max;
|
||||
}
|
||||
|
||||
message Communique {
|
||||
optional bool make_me_cry = 1;
|
||||
|
||||
// This is a oneof, called "union".
|
||||
oneof union {
|
||||
int32 number = 5;
|
||||
string name = 6;
|
||||
bytes data = 7;
|
||||
double temp_c = 8;
|
||||
float height = 9;
|
||||
Days today = 10;
|
||||
bool maybe = 11;
|
||||
sint32 delta = 12; // name will conflict with Delta below
|
||||
Reply msg = 13;
|
||||
group SomeGroup = 14 {
|
||||
optional string member = 15;
|
||||
}
|
||||
}
|
||||
|
||||
message Delta {}
|
||||
}
|
||||
|
53
vendor/github.com/golang/protobuf/protoc-gen-go/testdata/proto3.proto
generated
vendored
Normal file
53
vendor/github.com/golang/protobuf/protoc-gen-go/testdata/proto3.proto
generated
vendored
Normal file
@ -0,0 +1,53 @@
|
||||
// Go support for Protocol Buffers - Google's data interchange format
|
||||
//
|
||||
// Copyright 2014 The Go Authors. All rights reserved.
|
||||
// https://github.com/golang/protobuf
|
||||
//
|
||||
// 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.
|
||||
|
||||
syntax = "proto3";
|
||||
|
||||
package proto3;
|
||||
|
||||
message Request {
|
||||
enum Flavour {
|
||||
SWEET = 0;
|
||||
SOUR = 1;
|
||||
UMAMI = 2;
|
||||
GOPHERLICIOUS = 3;
|
||||
}
|
||||
string name = 1;
|
||||
repeated int64 key = 2;
|
||||
Flavour taste = 3;
|
||||
Book book = 4;
|
||||
repeated int64 unpacked = 5 [packed=false];
|
||||
}
|
||||
|
||||
message Book {
|
||||
string title = 1;
|
||||
bytes raw_data = 2;
|
||||
}
|
Reference in New Issue
Block a user