aboutsummaryrefslogtreecommitdiff
path: root/csharp/src/Google.Protobuf/Reflection/FileDescriptor.cs
Commit message (Collapse)AuthorAgeFilesLines
* Change where we rename Descriptor.cs to DescriptorProtoFile.cs.Jon Skeet2015-08-251-2/+3
| | | | | | | | | | | We now do this in protoc instead of the generation simpler. Benefits: - Generation script is simpler - Detection is simpler as we now only need to care about one filename - The embedded descriptor knows itself as "google/protobuf/descriptor.proto" avoiding dependency issues This PR also makes the "invalid dependency" exception clearer in terms of expected and actual dependencies.
* Allow public access to descriptor.proto as a dependency.Jon Skeet2015-08-131-0/+15
| | | | | With this in place, generating APIs on github.com/google/googleapis works - previously annotations.proto failed. Currently there's no access to the annotations (stored as extensions) but we could potentially expose those at a later date.
* Tidying up - fix a bunch of TODOs and remove outdated ones.Jon Skeet2015-08-081-17/+17
|
* Document everything, and turn on errors if we fail to document anything in ↵Jon Skeet2015-08-041-13/+8
| | | | the future.
* expose original binary data for filedescriptorJan Tattermusch2015-07-241-4/+19
|
* First pass at making field access simpler.Jon Skeet2015-07-221-1/+1
| | | | This is definitely not ready to ship - I'm "troubled" by the disconnect between a list of fields in declaration order, and a mapping of field accessors by field number/name. Discussion required, but I find that easier when we've got code to look at :)
* Remove the usage of attributes for field/method discovery.Jon Skeet2015-07-221-24/+12
| | | | Instead, introduce GeneratedCodeInfo which passes in what we need, and adjust the codegen to take account of this.
* Fix comment typoJon Skeet2015-07-211-1/+1
|
* Revamp to reflection.Jon Skeet2015-07-211-7/+29
| | | | | | | | | | | | | | | | | Changes in brief: 1. Descriptor is now the entry point for all reflection. 2. IReflectedMessage has gone; there's now a Descriptor property in IMessage, which is explicitly implemented (due to the static property). 3. FieldAccessorTable has gone away 4. IFieldAccessor and OneofFieldAccessor still exist; we *could* put the functionality straight into FieldDescriptor and OneofDescriptor... I'm unsure about that. 5. There's a temporary property MessageDescriptor.FieldAccessorsByFieldNumber to make the test changes small - we probably want this to go away 6. Discovery for delegates is now via attributes applied to properties and the Clear method of a oneof I'm happy with 1-3. 4 I'm unsure about - feedback welcome. 5 will go away 6 I'm unsure about, both in design and implementation. Should we have a ProtobufMessageAttribute too? Should we find all the relevant attributes in MessageDescriptor and pass them down, to avoid an O(N^2) scenario? Generated code changes coming in the next commit.
* First pass at the big rename from ProtocolBuffers to Google.Protobuf.Jon Skeet2015-07-171-0/+352
We'll see what I've missed when CI fails...