From cd85190847a9d66d01cc7b91a5e162c8979e77e0 Mon Sep 17 00:00:00 2001 From: Jon Skeet Date: Thu, 14 Aug 2008 20:35:15 +0100 Subject: [PATCH] Two more which should have been in the last commit --- csharp/ProtocolBuffers/Descriptors/FieldDescriptor.cs | 9 +++++++-- .../ProtocolBuffers/Descriptors/IndexedDescriptorBase.cs | 4 +++- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/csharp/ProtocolBuffers/Descriptors/FieldDescriptor.cs b/csharp/ProtocolBuffers/Descriptors/FieldDescriptor.cs index 1750ce1d..650d9973 100644 --- a/csharp/ProtocolBuffers/Descriptors/FieldDescriptor.cs +++ b/csharp/ProtocolBuffers/Descriptors/FieldDescriptor.cs @@ -321,7 +321,6 @@ namespace Google.ProtocolBuffers.Descriptors { } try { - // TODO(jonskeet): Check signage for Int32 and Int64. switch (FieldType) { case FieldType.Int32: case FieldType.SInt32: @@ -348,7 +347,13 @@ namespace Google.ProtocolBuffers.Descriptors { defaultValue = double.Parse(Proto.DefaultValue); break; case FieldType.Bool: - defaultValue = bool.Parse(Proto.DefaultValue); // TODO(jonskeet): Check this will work + if (Proto.DefaultValue == "true") { + defaultValue = true; + } else if (Proto.DefaultValue == "false") { + defaultValue = false; + } else { + throw new FormatException("Boolean values must be \"true\" or \"false\""); + } break; case FieldType.String: defaultValue = Proto.DefaultValue; diff --git a/csharp/ProtocolBuffers/Descriptors/IndexedDescriptorBase.cs b/csharp/ProtocolBuffers/Descriptors/IndexedDescriptorBase.cs index 5415357d..04fd3e62 100644 --- a/csharp/ProtocolBuffers/Descriptors/IndexedDescriptorBase.cs +++ b/csharp/ProtocolBuffers/Descriptors/IndexedDescriptorBase.cs @@ -22,7 +22,9 @@ namespace Google.ProtocolBuffers.Descriptors { /// The index of this descriptor within its parent descriptor. /// /// - /// TODO(jonskeet): Transcribe appropriately. + /// This returns the index of this descriptor within its parent, for + /// this descriptor's type. (There can be duplicate values for different + /// types, e.g. one enum type with index 0 and one message type with index 0.) /// public int Index { get { return index; }