aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorcsharptest <roger@csharptest.net>2011-08-05 16:51:49 -0500
committerrogerk <devnull@localhost>2011-08-05 16:51:49 -0500
commit304ff3a83823fdfce6e2eac40cc44e2b4b1fd3c3 (patch)
treea81e39cd39dee19d06b1f8c9d0091a94cd5ad73f /src
parent9b3de692248b6e522f544f8100a06d7a14c98eff (diff)
downloadprotobuf-304ff3a83823fdfce6e2eac40cc44e2b4b1fd3c3.tar.gz
protobuf-304ff3a83823fdfce6e2eac40cc44e2b4b1fd3c3.tar.bz2
protobuf-304ff3a83823fdfce6e2eac40cc44e2b4b1fd3c3.zip
Changes from review e805fdfd3a6b
Diffstat (limited to 'src')
-rw-r--r--src/ProtoGen/FieldGeneratorBase.cs4
-rw-r--r--src/ProtocolBuffers/CodedOutputStream.cs2
-rw-r--r--src/ProtocolBuffers/Collections/PopsicleList.cs7
-rw-r--r--src/ProtocolBuffers/ProtocolBuffers.csproj1
4 files changed, 10 insertions, 4 deletions
diff --git a/src/ProtoGen/FieldGeneratorBase.cs b/src/ProtoGen/FieldGeneratorBase.cs
index c64608d7..54294196 100644
--- a/src/ProtoGen/FieldGeneratorBase.cs
+++ b/src/ProtoGen/FieldGeneratorBase.cs
@@ -72,6 +72,10 @@ namespace Google.ProtocolBuffers.ProtoGen
return true;
}
+ /// <summary>
+ /// This returns true if the field has a non-default default value. For instance this returns
+ /// false for numerics with a default of zero '0', or booleans with a default of false.
+ /// </summary>
protected bool HasDefaultValue
{
get
diff --git a/src/ProtocolBuffers/CodedOutputStream.cs b/src/ProtocolBuffers/CodedOutputStream.cs
index 5b1d2ce9..c14f5e0d 100644
--- a/src/ProtocolBuffers/CodedOutputStream.cs
+++ b/src/ProtocolBuffers/CodedOutputStream.cs
@@ -370,7 +370,7 @@ namespace Google.ProtocolBuffers
WriteRawVarint32(value);
}
- public void WriteEnum(int fieldNumber, string fieldName, int value, object textValue)
+ public void WriteEnum(int fieldNumber, string fieldName, int value, object rawValue)
{
WriteTag(fieldNumber, WireFormat.WireType.Varint);
WriteRawVarint32((uint) value);
diff --git a/src/ProtocolBuffers/Collections/PopsicleList.cs b/src/ProtocolBuffers/Collections/PopsicleList.cs
index 6cabb448..dc5c5836 100644
--- a/src/ProtocolBuffers/Collections/PopsicleList.cs
+++ b/src/ProtocolBuffers/Collections/PopsicleList.cs
@@ -42,7 +42,7 @@ namespace Google.ProtocolBuffers.Collections
/// </summary>
public sealed class PopsicleList<T> : IPopsicleList<T>, ICastArray
{
- private static readonly IEnumerable<T> EmptySet = new T[0];
+ private static readonly T[] EmptySet = new T[0];
private List<T> items;
private bool readOnly;
@@ -134,7 +134,8 @@ namespace Google.ProtocolBuffers.Collections
public IEnumerator<T> GetEnumerator()
{
- return items == null ? EmptySet.GetEnumerator() : items.GetEnumerator();
+ IEnumerable<T> tenum = (IEnumerable<T>)items ?? EmptySet;
+ return tenum.GetEnumerator();
}
IEnumerator IEnumerable.GetEnumerator()
@@ -171,7 +172,7 @@ namespace Google.ProtocolBuffers.Collections
{
if (items == null)
{
- return new TItemType[0];
+ return PopsicleList<TItemType>.EmptySet;
}
return (TItemType[]) (object) items.ToArray();
}
diff --git a/src/ProtocolBuffers/ProtocolBuffers.csproj b/src/ProtocolBuffers/ProtocolBuffers.csproj
index 22f3c139..d278d8a3 100644
--- a/src/ProtocolBuffers/ProtocolBuffers.csproj
+++ b/src/ProtocolBuffers/ProtocolBuffers.csproj
@@ -88,6 +88,7 @@
<ItemGroup>
<Reference Include="mscorlib" />
<Reference Include="System" />
+ <Reference Include="System.Data" />
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>