|
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Apolyton.FastJson.Serialization
{
/// <summary>
/// Represents a base class for a custom type serializer
/// </summary>
public abstract class CustomTypeSerializer : ICustomTypeSerializer
{
/// <summary>
/// Gets the type for which serializer is responsible for.
/// </summary>
public abstract Type Type
{
get;
}
/// <summary>
/// Gets the name of the type.
/// </summary>
public virtual string TypeName
{
get { return null; }
}
/// <summary>
/// Gets the bool which indicates whether the custom type serializer implements a serialization method.
/// </summary>
public virtual bool CanSerialize
{
get { return false; }
}
/// <summary>
/// Gets the bool which indicates whether the custom type serializer implements a deserialization method.
/// </summary>
public virtual bool CanDeserialize
{
get { return false; }
}
/// <summary>
/// Returns the custom serialized string value.
/// </summary>
/// <param name="data"></param>
/// <returns></returns>
public abstract String Serialize(object data);
/// <summary>
/// Returns the custom object instance which represents the given string.
/// </summary>
/// <param name="jsonString"></param>
/// <returns></returns>
public abstract Object Deserialize(String jsonString);
}
}
|
By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.
If a file you wish to view isn't highlighted, and is a text file (not binary), please
let us know and we'll add colourisation support for it.
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.