view mde/test.d @ 2:78eb491bd642

mergetag: partially redesigned dataset and text reader classes. Changed text format. committer: Diggory Hardy <diggory.hardy@gmail.com>
author Diggory Hardy <diggory.hardy@gmail.com>
date Sat, 03 Nov 2007 15:15:43 +0000
parents d547009c104c
children 485c98ecbd91
line wrap: on
line source

/// Contains some functions for testing stuff.
module mde.test;

import mde.mergetag.dataset;

import tango.io.Stdout;

/// Prints $(I some) of the dataset.
void printDataSet (DataSet ds) {
    foreach (ID sec_id, DefaultData dd; ds.getSections!(DefaultData)()) {
        Stdout ("Section:  ")(cast(uint) sec_id).newline;
        foreach (ID i, int x; dd._int) {
            Stdout (cast(uint) i)('\t')(x).newline;
        }
        foreach (ID i, int[] x; dd._intA) {
            Stdout (cast(uint) i);
            foreach (int y; x)
                Stdout ('\t')(y);
            Stdout.newline;
        }
        foreach (ID i, ubyte[] x; dd._binary) {
            Stdout (cast(uint) i);
            foreach (ubyte y; x)
                Stdout ('\t')(y);
            Stdout.newline;
        }
        foreach (ID i, char x; dd._char) {
            Stdout (cast(uint) i)('\t')(x).newline;
        }
        foreach (ID i, char[] x; dd._string) {
            Stdout (cast(uint) i)('\t')(x).newline;
        }
    }
}

class DataPrinter : DataSection
{
    this () {
        Stdout ("New section (can't get ID from here).").newline;
    }
    void addTag (TypeInfo ti, ID id, char[] dt) {
        Stdout ("\tData item (")(id)("):\t")(ti)("\t")(dt).newline;
    }
}