aboutsummaryrefslogtreecommitdiffhomepage
path: root/csharp/src/ProtocolBuffers.Serialization/AbstractTextReader.cs
diff options
context:
space:
mode:
Diffstat (limited to 'csharp/src/ProtocolBuffers.Serialization/AbstractTextReader.cs')
-rw-r--r--csharp/src/ProtocolBuffers.Serialization/AbstractTextReader.cs175
1 files changed, 0 insertions, 175 deletions
diff --git a/csharp/src/ProtocolBuffers.Serialization/AbstractTextReader.cs b/csharp/src/ProtocolBuffers.Serialization/AbstractTextReader.cs
deleted file mode 100644
index 41578fab..00000000
--- a/csharp/src/ProtocolBuffers.Serialization/AbstractTextReader.cs
+++ /dev/null
@@ -1,175 +0,0 @@
-using System;
-using System.Globalization;
-using System.Xml;
-
-namespace Google.ProtocolBuffers.Serialization
-{
- /// <summary>
- /// Provides a base class for text-parsing readers
- /// </summary>
- public abstract class AbstractTextReader : AbstractReader
- {
- /// <summary> Constructs a new reader </summary>
- protected AbstractTextReader() { }
-
- /// <summary>
- /// Reads a typed field as a string
- /// </summary>
- protected abstract bool ReadAsText(ref string textValue, Type type);
-
- /// <summary>
- /// Returns true if it was able to read a String from the input
- /// </summary>
- protected override bool Read(ref string value)
- {
- string text = null;
- if (ReadAsText(ref text, typeof(string)))
- {
- value = text;
- return true;
- }
- return false;
- }
-
- /// <summary>
- /// Returns true if it was able to read a Boolean from the input
- /// </summary>
- protected override bool Read(ref bool value)
- {
- string text = null;
- if (ReadAsText(ref text, typeof(bool)))
- {
- value = XmlConvert.ToBoolean(text);
- return true;
- }
- return false;
- }
-
- /// <summary>
- /// Returns true if it was able to read a Int32 from the input
- /// </summary>
- protected override bool Read(ref int value)
- {
- string text = null;
- if (ReadAsText(ref text, typeof(int)))
- {
- value = XmlConvert.ToInt32(text);
- return true;
- }
- return false;
- }
-
- /// <summary>
- /// Returns true if it was able to read a UInt32 from the input
- /// </summary>
- protected override bool Read(ref uint value)
- {
- string text = null;
- if (ReadAsText(ref text, typeof(uint)))
- {
- value = XmlConvert.ToUInt32(text);
- return true;
- }
- return false;
- }
-
- /// <summary>
- /// Returns true if it was able to read a Int64 from the input
- /// </summary>
- protected override bool Read(ref long value)
- {
- string text = null;
- if (ReadAsText(ref text, typeof(long)))
- {
- value = XmlConvert.ToInt64(text);
- return true;
- }
- return false;
- }
-
- /// <summary>
- /// Returns true if it was able to read a UInt64 from the input
- /// </summary>
- protected override bool Read(ref ulong value)
- {
- string text = null;
- if (ReadAsText(ref text, typeof(ulong)))
- {
- value = XmlConvert.ToUInt64(text);
- return true;
- }
- return false;
- }
-
- /// <summary>
- /// Returns true if it was able to read a Single from the input
- /// </summary>
- protected override bool Read(ref float value)
- {
- string text = null;
- if (ReadAsText(ref text, typeof(float)))
- {
- value = XmlConvert.ToSingle(text);
- return true;
- }
- return false;
- }
-
- /// <summary>
- /// Returns true if it was able to read a Double from the input
- /// </summary>
- protected override bool Read(ref double value)
- {
- string text = null;
- if (ReadAsText(ref text, typeof(double)))
- {
- value = XmlConvert.ToDouble(text);
- return true;
- }
- return false;
- }
-
- /// <summary>
- /// Provides decoding of bytes read from the input stream
- /// </summary>
- protected virtual ByteString DecodeBytes(string bytes)
- {
- return ByteString.FromBase64(bytes);
- }
-
- /// <summary>
- /// Returns true if it was able to read a ByteString from the input
- /// </summary>
- protected override bool Read(ref ByteString value)
- {
- string text = null;
- if (ReadAsText(ref text, typeof(ByteString)))
- {
- value = DecodeBytes(text);
- return true;
- }
- return false;
- }
-
- /// <summary>
- /// returns true if it was able to read a single value into the value reference. The value
- /// stored may be of type System.String, System.Int32, or an IEnumLite from the IEnumLiteMap.
- /// </summary>
- protected override bool ReadEnum(ref object value)
- {
- string text = null;
- if (ReadAsText(ref text, typeof(Enum)))
- {
- int number;
- if (FrameworkPortability.TryParseInt32(text, NumberStyles.Integer, FrameworkPortability.InvariantCulture, out number))
- {
- value = number;
- return true;
- }
- value = text;
- return true;
- }
- return false;
- }
- }
-} \ No newline at end of file