parent
3c2a32a75f
commit
2b0b838528
10 changed files with 438 additions and 13 deletions
@ -0,0 +1,12 @@ |
||||
syntax = "proto3"; |
||||
|
||||
option csharp_namespace = "Google.Protobuf.TestProtos.Extensions"; |
||||
|
||||
// This file is used as part of a unit test for issue 6936 |
||||
// We don't need to use it, we just have to import it in both b and c |
||||
|
||||
import "google/protobuf/descriptor.proto"; |
||||
|
||||
extend google.protobuf.MessageOptions { |
||||
string opt = 50000; |
||||
} |
@ -0,0 +1,12 @@ |
||||
syntax = "proto3"; |
||||
|
||||
import "extensions_a.proto"; |
||||
|
||||
option csharp_namespace = "Google.Protobuf.TestProtos.Extensions"; |
||||
|
||||
// This file is used as part of a unit test for issue 6936 |
||||
// We don't need to use it, we just have to import it in c |
||||
|
||||
message Foo { |
||||
option (opt) = "bar"; |
||||
} |
@ -0,0 +1,14 @@ |
||||
syntax = "proto3"; |
||||
|
||||
import "extensions_a.proto"; |
||||
import "extensions_b.proto"; |
||||
|
||||
option csharp_namespace = "Google.Protobuf.TestProtos.Extensions"; |
||||
|
||||
// This file is used as part of a unit test for issue 6936 |
||||
// We don't need to use it, we just have to load it at runtime |
||||
|
||||
message Bar { |
||||
option (opt) = "foo"; |
||||
Foo foo = 1; |
||||
} |
@ -0,0 +1,46 @@ |
||||
// <auto-generated> |
||||
// Generated by the protocol buffer compiler. DO NOT EDIT! |
||||
// source: extensions_a.proto |
||||
// </auto-generated> |
||||
#pragma warning disable 1591, 0612, 3021 |
||||
#region Designer generated code |
||||
|
||||
using pb = global::Google.Protobuf; |
||||
using pbc = global::Google.Protobuf.Collections; |
||||
using pbr = global::Google.Protobuf.Reflection; |
||||
using scg = global::System.Collections.Generic; |
||||
namespace Google.Protobuf.TestProtos.Extensions { |
||||
|
||||
/// <summary>Holder for reflection information generated from extensions_a.proto</summary> |
||||
public static partial class ExtensionsAReflection { |
||||
|
||||
#region Descriptor |
||||
/// <summary>File descriptor for extensions_a.proto</summary> |
||||
public static pbr::FileDescriptor Descriptor { |
||||
get { return descriptor; } |
||||
} |
||||
private static pbr::FileDescriptor descriptor; |
||||
|
||||
static ExtensionsAReflection() { |
||||
byte[] descriptorData = global::System.Convert.FromBase64String( |
||||
string.Concat( |
||||
"ChJleHRlbnNpb25zX2EucHJvdG8aIGdvb2dsZS9wcm90b2J1Zi9kZXNjcmlw", |
||||
"dG9yLnByb3RvOi4KA29wdBIfLmdvb2dsZS5wcm90b2J1Zi5NZXNzYWdlT3B0", |
||||
"aW9ucxjQhgMgASgJQiiqAiVHb29nbGUuUHJvdG9idWYuVGVzdFByb3Rvcy5F", |
||||
"eHRlbnNpb25zYgZwcm90bzM=")); |
||||
descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData, |
||||
new pbr::FileDescriptor[] { global::Google.Protobuf.Reflection.DescriptorReflection.Descriptor, }, |
||||
new pbr::GeneratedClrTypeInfo(null, new pb::Extension[] { ExtensionsAExtensions.Opt }, null)); |
||||
} |
||||
#endregion |
||||
|
||||
} |
||||
/// <summary>Holder for extension identifiers generated from the top level of extensions_a.proto</summary> |
||||
public static partial class ExtensionsAExtensions { |
||||
public static readonly pb::Extension<global::Google.Protobuf.Reflection.MessageOptions, string> Opt = |
||||
new pb::Extension<global::Google.Protobuf.Reflection.MessageOptions, string>(50000, pb::FieldCodec.ForString(400002, "")); |
||||
} |
||||
|
||||
} |
||||
|
||||
#endregion Designer generated code |
@ -0,0 +1,145 @@ |
||||
// <auto-generated> |
||||
// Generated by the protocol buffer compiler. DO NOT EDIT! |
||||
// source: extensions_b.proto |
||||
// </auto-generated> |
||||
#pragma warning disable 1591, 0612, 3021 |
||||
#region Designer generated code |
||||
|
||||
using pb = global::Google.Protobuf; |
||||
using pbc = global::Google.Protobuf.Collections; |
||||
using pbr = global::Google.Protobuf.Reflection; |
||||
using scg = global::System.Collections.Generic; |
||||
namespace Google.Protobuf.TestProtos.Extensions { |
||||
|
||||
/// <summary>Holder for reflection information generated from extensions_b.proto</summary> |
||||
public static partial class ExtensionsBReflection { |
||||
|
||||
#region Descriptor |
||||
/// <summary>File descriptor for extensions_b.proto</summary> |
||||
public static pbr::FileDescriptor Descriptor { |
||||
get { return descriptor; } |
||||
} |
||||
private static pbr::FileDescriptor descriptor; |
||||
|
||||
static ExtensionsBReflection() { |
||||
byte[] descriptorData = global::System.Convert.FromBase64String( |
||||
string.Concat( |
||||
"ChJleHRlbnNpb25zX2IucHJvdG8aEmV4dGVuc2lvbnNfYS5wcm90byIOCgNG", |
||||
"b286B4K1GANiYXJCKKoCJUdvb2dsZS5Qcm90b2J1Zi5UZXN0UHJvdG9zLkV4", |
||||
"dGVuc2lvbnNiBnByb3RvMw==")); |
||||
descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData, |
||||
new pbr::FileDescriptor[] { global::Google.Protobuf.TestProtos.Extensions.ExtensionsAReflection.Descriptor, }, |
||||
new pbr::GeneratedClrTypeInfo(null, null, new pbr::GeneratedClrTypeInfo[] { |
||||
new pbr::GeneratedClrTypeInfo(typeof(global::Google.Protobuf.TestProtos.Extensions.Foo), global::Google.Protobuf.TestProtos.Extensions.Foo.Parser, null, null, null, null, null) |
||||
})); |
||||
} |
||||
#endregion |
||||
|
||||
} |
||||
#region Messages |
||||
public sealed partial class Foo : pb::IMessage<Foo> { |
||||
private static readonly pb::MessageParser<Foo> _parser = new pb::MessageParser<Foo>(() => new Foo()); |
||||
private pb::UnknownFieldSet _unknownFields; |
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute] |
||||
public static pb::MessageParser<Foo> Parser { get { return _parser; } } |
||||
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute] |
||||
public static pbr::MessageDescriptor Descriptor { |
||||
get { return global::Google.Protobuf.TestProtos.Extensions.ExtensionsBReflection.Descriptor.MessageTypes[0]; } |
||||
} |
||||
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute] |
||||
pbr::MessageDescriptor pb::IMessage.Descriptor { |
||||
get { return Descriptor; } |
||||
} |
||||
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute] |
||||
public Foo() { |
||||
OnConstruction(); |
||||
} |
||||
|
||||
partial void OnConstruction(); |
||||
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute] |
||||
public Foo(Foo other) : this() { |
||||
_unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); |
||||
} |
||||
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute] |
||||
public Foo Clone() { |
||||
return new Foo(this); |
||||
} |
||||
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute] |
||||
public override bool Equals(object other) { |
||||
return Equals(other as Foo); |
||||
} |
||||
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute] |
||||
public bool Equals(Foo other) { |
||||
if (ReferenceEquals(other, null)) { |
||||
return false; |
||||
} |
||||
if (ReferenceEquals(other, this)) { |
||||
return true; |
||||
} |
||||
return Equals(_unknownFields, other._unknownFields); |
||||
} |
||||
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute] |
||||
public override int GetHashCode() { |
||||
int hash = 1; |
||||
if (_unknownFields != null) { |
||||
hash ^= _unknownFields.GetHashCode(); |
||||
} |
||||
return hash; |
||||
} |
||||
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute] |
||||
public override string ToString() { |
||||
return pb::JsonFormatter.ToDiagnosticString(this); |
||||
} |
||||
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute] |
||||
public void WriteTo(pb::CodedOutputStream output) { |
||||
if (_unknownFields != null) { |
||||
_unknownFields.WriteTo(output); |
||||
} |
||||
} |
||||
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute] |
||||
public int CalculateSize() { |
||||
int size = 0; |
||||
if (_unknownFields != null) { |
||||
size += _unknownFields.CalculateSize(); |
||||
} |
||||
return size; |
||||
} |
||||
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute] |
||||
public void MergeFrom(Foo other) { |
||||
if (other == null) { |
||||
return; |
||||
} |
||||
_unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); |
||||
} |
||||
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute] |
||||
public void MergeFrom(pb::CodedInputStream input) { |
||||
uint tag; |
||||
while ((tag = input.ReadTag()) != 0) { |
||||
switch(tag) { |
||||
default: |
||||
_unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); |
||||
break; |
||||
} |
||||
} |
||||
} |
||||
|
||||
} |
||||
|
||||
#endregion |
||||
|
||||
} |
||||
|
||||
#endregion Designer generated code |
@ -0,0 +1,180 @@ |
||||
// <auto-generated> |
||||
// Generated by the protocol buffer compiler. DO NOT EDIT! |
||||
// source: extensions_c.proto |
||||
// </auto-generated> |
||||
#pragma warning disable 1591, 0612, 3021 |
||||
#region Designer generated code |
||||
|
||||
using pb = global::Google.Protobuf; |
||||
using pbc = global::Google.Protobuf.Collections; |
||||
using pbr = global::Google.Protobuf.Reflection; |
||||
using scg = global::System.Collections.Generic; |
||||
namespace Google.Protobuf.TestProtos.Extensions { |
||||
|
||||
/// <summary>Holder for reflection information generated from extensions_c.proto</summary> |
||||
public static partial class ExtensionsCReflection { |
||||
|
||||
#region Descriptor |
||||
/// <summary>File descriptor for extensions_c.proto</summary> |
||||
public static pbr::FileDescriptor Descriptor { |
||||
get { return descriptor; } |
||||
} |
||||
private static pbr::FileDescriptor descriptor; |
||||
|
||||
static ExtensionsCReflection() { |
||||
byte[] descriptorData = global::System.Convert.FromBase64String( |
||||
string.Concat( |
||||
"ChJleHRlbnNpb25zX2MucHJvdG8aEmV4dGVuc2lvbnNfYS5wcm90bxoSZXh0", |
||||
"ZW5zaW9uc19iLnByb3RvIiEKA0JhchIRCgNmb28YASABKAsyBC5Gb286B4K1", |
||||
"GANmb29CKKoCJUdvb2dsZS5Qcm90b2J1Zi5UZXN0UHJvdG9zLkV4dGVuc2lv", |
||||
"bnNiBnByb3RvMw==")); |
||||
descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData, |
||||
new pbr::FileDescriptor[] { global::Google.Protobuf.TestProtos.Extensions.ExtensionsAReflection.Descriptor, global::Google.Protobuf.TestProtos.Extensions.ExtensionsBReflection.Descriptor, }, |
||||
new pbr::GeneratedClrTypeInfo(null, null, new pbr::GeneratedClrTypeInfo[] { |
||||
new pbr::GeneratedClrTypeInfo(typeof(global::Google.Protobuf.TestProtos.Extensions.Bar), global::Google.Protobuf.TestProtos.Extensions.Bar.Parser, new[]{ "Foo" }, null, null, null, null) |
||||
})); |
||||
} |
||||
#endregion |
||||
|
||||
} |
||||
#region Messages |
||||
public sealed partial class Bar : pb::IMessage<Bar> { |
||||
private static readonly pb::MessageParser<Bar> _parser = new pb::MessageParser<Bar>(() => new Bar()); |
||||
private pb::UnknownFieldSet _unknownFields; |
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute] |
||||
public static pb::MessageParser<Bar> Parser { get { return _parser; } } |
||||
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute] |
||||
public static pbr::MessageDescriptor Descriptor { |
||||
get { return global::Google.Protobuf.TestProtos.Extensions.ExtensionsCReflection.Descriptor.MessageTypes[0]; } |
||||
} |
||||
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute] |
||||
pbr::MessageDescriptor pb::IMessage.Descriptor { |
||||
get { return Descriptor; } |
||||
} |
||||
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute] |
||||
public Bar() { |
||||
OnConstruction(); |
||||
} |
||||
|
||||
partial void OnConstruction(); |
||||
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute] |
||||
public Bar(Bar other) : this() { |
||||
foo_ = other.foo_ != null ? other.foo_.Clone() : null; |
||||
_unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); |
||||
} |
||||
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute] |
||||
public Bar Clone() { |
||||
return new Bar(this); |
||||
} |
||||
|
||||
/// <summary>Field number for the "foo" field.</summary> |
||||
public const int FooFieldNumber = 1; |
||||
private global::Google.Protobuf.TestProtos.Extensions.Foo foo_; |
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute] |
||||
public global::Google.Protobuf.TestProtos.Extensions.Foo Foo { |
||||
get { return foo_; } |
||||
set { |
||||
foo_ = value; |
||||
} |
||||
} |
||||
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute] |
||||
public override bool Equals(object other) { |
||||
return Equals(other as Bar); |
||||
} |
||||
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute] |
||||
public bool Equals(Bar other) { |
||||
if (ReferenceEquals(other, null)) { |
||||
return false; |
||||
} |
||||
if (ReferenceEquals(other, this)) { |
||||
return true; |
||||
} |
||||
if (!object.Equals(Foo, other.Foo)) return false; |
||||
return Equals(_unknownFields, other._unknownFields); |
||||
} |
||||
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute] |
||||
public override int GetHashCode() { |
||||
int hash = 1; |
||||
if (foo_ != null) hash ^= Foo.GetHashCode(); |
||||
if (_unknownFields != null) { |
||||
hash ^= _unknownFields.GetHashCode(); |
||||
} |
||||
return hash; |
||||
} |
||||
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute] |
||||
public override string ToString() { |
||||
return pb::JsonFormatter.ToDiagnosticString(this); |
||||
} |
||||
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute] |
||||
public void WriteTo(pb::CodedOutputStream output) { |
||||
if (foo_ != null) { |
||||
output.WriteRawTag(10); |
||||
output.WriteMessage(Foo); |
||||
} |
||||
if (_unknownFields != null) { |
||||
_unknownFields.WriteTo(output); |
||||
} |
||||
} |
||||
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute] |
||||
public int CalculateSize() { |
||||
int size = 0; |
||||
if (foo_ != null) { |
||||
size += 1 + pb::CodedOutputStream.ComputeMessageSize(Foo); |
||||
} |
||||
if (_unknownFields != null) { |
||||
size += _unknownFields.CalculateSize(); |
||||
} |
||||
return size; |
||||
} |
||||
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute] |
||||
public void MergeFrom(Bar other) { |
||||
if (other == null) { |
||||
return; |
||||
} |
||||
if (other.foo_ != null) { |
||||
if (foo_ == null) { |
||||
Foo = new global::Google.Protobuf.TestProtos.Extensions.Foo(); |
||||
} |
||||
Foo.MergeFrom(other.Foo); |
||||
} |
||||
_unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); |
||||
} |
||||
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute] |
||||
public void MergeFrom(pb::CodedInputStream input) { |
||||
uint tag; |
||||
while ((tag = input.ReadTag()) != 0) { |
||||
switch(tag) { |
||||
default: |
||||
_unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); |
||||
break; |
||||
case 10: { |
||||
if (foo_ == null) { |
||||
Foo = new global::Google.Protobuf.TestProtos.Extensions.Foo(); |
||||
} |
||||
input.ReadMessage(Foo); |
||||
break; |
||||
} |
||||
} |
||||
} |
||||
} |
||||
|
||||
} |
||||
|
||||
#endregion |
||||
|
||||
} |
||||
|
||||
#endregion Designer generated code |
Binary file not shown.
Loading…
Reference in new issue