/* * 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; using System.IO; using Com.Xagasoft.Gats; public class Test { public static void Write( GatsObject o, Stream s ) { o.Write( s ); Console.WriteLine("Wrote: " + o ); } public static void Read( Stream s ) { GatsObject o = GatsObject.Read( s ); Console.WriteLine("Read type: " + o.GetType() ); Console.WriteLine("Read vlaue: " + o ); } public static void Main() { MemoryStream ms = new MemoryStream(); GatsDictionary d = new GatsDictionary(); GatsList l = new GatsList(); l.Add( new GatsFloat( Math.PI ) ); l.Add( new GatsInteger( 1337 ) ); l.Add( new GatsString("Hello") ); d.Add("list", l ); d.Add("int", new GatsInteger( 998877 ) ); d.Add("float", new GatsFloat( 87.332 ) ); d.Add("string", new GatsString("Yup, a string") ); d.Add("bool", new GatsBoolean( false ) ); d.Add("long", 998877665544L ); d.Add("int2", 998877 ); d.Add("short", (short)9988 ); d.Add("byte", (byte)99 ); d.Add("float2", 87.332F ); d.Add("double", 87.332D ); d.Add("string2", "Yup, a string" ); d.Add("bool2", false ); Write( d, ms ); ms.Seek( 0, SeekOrigin.Begin ); Read( ms ); try { FileStream fs = new FileStream("dictionary.gats", FileMode.Open, FileAccess.Read ); Read( fs ); } catch( Exception e ) { Console.WriteLine("Can't test files: " + e.Message ); } } }