aboutsummaryrefslogtreecommitdiff
path: root/csharp/src
diff options
context:
space:
mode:
authorJan Tattermusch <jtattermusch@users.noreply.github.com>2015-08-13 09:23:29 -0700
committerJan Tattermusch <jtattermusch@users.noreply.github.com>2015-08-13 09:23:29 -0700
commit2093749caf6add1f1be63194e585fffd5ef98ecb (patch)
treee08353c9677af5b1b200cb8189b45e91dc0840a3 /csharp/src
parentf818183f9b0c0c8838dd99c54923d8dd6c11d4ed (diff)
parenta39ababb7cf8839d96b3347e0da87fbcc3d512e8 (diff)
downloadprotobuf-2093749caf6add1f1be63194e585fffd5ef98ecb.tar.gz
protobuf-2093749caf6add1f1be63194e585fffd5ef98ecb.tar.bz2
protobuf-2093749caf6add1f1be63194e585fffd5ef98ecb.zip
Merge pull request #718 from jskeet/descriptor-descriptor
Allow public access to descriptor.proto as a dependency.
Diffstat (limited to 'csharp/src')
-rw-r--r--csharp/src/Google.Protobuf/Reflection/FileDescriptor.cs15
1 files changed, 15 insertions, 0 deletions
diff --git a/csharp/src/Google.Protobuf/Reflection/FileDescriptor.cs b/csharp/src/Google.Protobuf/Reflection/FileDescriptor.cs
index 500e467c..bad58faa 100644
--- a/csharp/src/Google.Protobuf/Reflection/FileDescriptor.cs
+++ b/csharp/src/Google.Protobuf/Reflection/FileDescriptor.cs
@@ -368,5 +368,20 @@ namespace Google.Protobuf.Reflection
{
return "FileDescriptor for " + proto.Name;
}
+
+ /// <summary>
+ /// Returns the file descriptor for descriptor.proto.
+ /// </summary>
+ /// <remarks>
+ /// This is used for protos which take a direct dependency on <c>descriptor.proto</c>, typically for
+ /// annotations. While <c>descriptor.proto</c> is a proto2 file, it is built into the Google.Protobuf
+ /// runtime for reflection purposes. The messages are internal to the runtime as they would require
+ /// proto2 semantics for full support, but the file descriptor is available via this property. The
+ /// C# codegen in protoc automatically uses this property when it detects a dependency on <c>descriptor.proto</c>.
+ /// </remarks>
+ /// <value>
+ /// The file descriptor for <c>descriptor.proto</c>.
+ /// </value>
+ public static FileDescriptor DescriptorProtoFileDescriptor { get { return DescriptorProtoFile.Descriptor; } }
}
} \ No newline at end of file