/*
* Copyright (C) 2007-2012 Xagasoft, All rights reserved.
*
* This file is part of the libgats library and is released under the
* terms of the license contained in the file LICENSE.
*/
using System.IO;
namespace Com.Xagasoft.Gats
{
///
/// Encapsulates a single bool value.
///
///
/// The boolean type is one of the simpler ones encoding-wise. Instead of
/// a single type specfiier in the encoded GATS format, it uses two, and
/// no payload. A '1' type specifier indicates a boolean value of true, and
/// a '0' type specfiier indicates a false.
///
public class GatsBoolean : GatsObject
{
public bool Value { get; set; }
public GatsBoolean()
{
}
public GatsBoolean( bool val )
{
Value = val;
}
public override string ToString()
{
return Value.ToString();
}
public override void Read( Stream s, char type )
{
if( type == '0' )
Value = false;
else
Value = true;
}
public override void Write( Stream s )
{
if( Value )
s.WriteByte( (int)'1' );
else
s.WriteByte( (int)'0' );
}
}
}