• Jon Skeet's avatar
    Provide simple access to descriptor declarations in C# · 17119990
    Jon Skeet authored
    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>.
    17119990
Name
Last commit
Last update
..
Collections Loading commit data...
Compatibility Loading commit data...
Properties Loading commit data...
Reflection Loading commit data...
WellKnownTypes Loading commit data...
ByteArray.cs Loading commit data...
ByteString.cs Loading commit data...
CodedInputStream.cs Loading commit data...
CodedOutputStream.ComputeSize.cs Loading commit data...
CodedOutputStream.cs Loading commit data...
FieldCodec.cs Loading commit data...
FrameworkPortability.cs Loading commit data...
Google.Protobuf.csproj Loading commit data...
ICustomDiagnosticMessage.cs Loading commit data...
IDeepCloneable.cs Loading commit data...
IMessage.cs Loading commit data...
InvalidJsonException.cs Loading commit data...
InvalidProtocolBufferException.cs Loading commit data...
JsonFormatter.cs Loading commit data...
JsonParser.cs Loading commit data...
JsonToken.cs Loading commit data...
JsonTokenizer.cs Loading commit data...
LimitedInputStream.cs Loading commit data...
MessageExtensions.cs Loading commit data...
MessageParser.cs Loading commit data...
ProtoPreconditions.cs Loading commit data...
UnknownField.cs Loading commit data...
UnknownFieldSet.cs Loading commit data...
WireFormat.cs Loading commit data...