Exemplo n.º 1
0
 public override object this[FieldDescriptor field]
 {
     get
     {
         if (field.IsExtension)
         {
             VerifyContainingType(field);
             object value = extensions[field];
             if (value == null)
             {
                 // Lacking an ExtensionRegistry, we have no way to determine the
                 // extension's real type, so we return a DynamicMessage.
                 // TODO(jonskeet): Work out what this means
                 return(DynamicMessage.GetDefaultInstance(field.MessageType));
             }
             else
             {
                 return(value);
             }
         }
         else
         {
             return(base[field]);
         }
     }
 }
Exemplo n.º 2
0
 public void DynamicMessageDefaults()
 {
     reflectionTester.AssertClearViaReflection(DynamicMessage.GetDefaultInstance(TestAllTypes.Descriptor));
     reflectionTester.AssertClearViaReflection(DynamicMessage.CreateBuilder(TestAllTypes.Descriptor).Build());
 }