/* * Copyright (C) 2007-2013 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' ); } } }