diff options
author | Jon Skeet <jonskeet@google.com> | 2018-08-30 14:53:06 +0100 |
---|---|---|
committer | Jon Skeet <skeet@pobox.com> | 2018-09-22 09:09:15 +0100 |
commit | 1711999078ca1d435de3958bf963e95a742e972f (patch) | |
tree | 6ea6797a824da7cf26b2535ea4e3a9be9cd5ec95 /protoc-artifacts/build-zip.sh | |
parent | a6e1cc7e328c45a0cb9856c530c8f6cd23314163 (diff) | |
download | protobuf-1711999078ca1d435de3958bf963e95a742e972f.tar.gz protobuf-1711999078ca1d435de3958bf963e95a742e972f.tar.bz2 protobuf-1711999078ca1d435de3958bf963e95a742e972f.zip |
Provide simple access to descriptor declarations in C#
This is primarily for access to comments, which would be expected to be available in a protoc plugin.
The implementation has two fiddly aspects:
- We use a Lazy<T> to avoid building the map before cross-linking. An alternative would be to crosslink at the end of the constructor, and remove the calls to CrossLink elsewhere. This would be generally better IMO, but deviate from the Java code.
- The casts to IReadOnlyList<DescriptorBase> are unfortunate. They'll always work, because these lists are always ReadOnlyCollection<T> for a descriptor type... but we can't use IList<DescriptorBase> as that's not covariant, and it's annoyingly fiddly to change the field to be of type ReadOnlyCollection<T>.
Diffstat (limited to 'protoc-artifacts/build-zip.sh')
0 files changed, 0 insertions, 0 deletions