MeasurementSeries

Data for one measurement

struct MeasurementSeries {
string name
string[] columns
string[][] values
}

Examples

1 
2 import std.datetime: SysTime, DateTime, UTC;
3 import std.array: array;
4 
5 auto series = MeasurementSeries("coolness",
6                                 ["time", "foo", "bar"],
7                                 [
8                                     ["2015-06-11T20:46:02Z", "red", "blue"],
9                                     ["2013-02-09T12:34:56Z", "green", "yellow"],
10                                 ]);
11 
12 series.rows[0]["foo"].shouldEqual("red");
13 series.rows[0]["time"].shouldEqual("2015-06-11T20:46:02Z");
14 series.rows[0].time.shouldEqual(SysTime(DateTime(2015, 06, 11, 20, 46, 2), UTC()));
15 
16 series.rows[1]["bar"].shouldEqual("yellow");
17 series.rows[1]["time"].shouldEqual("2013-02-09T12:34:56Z");
18 series.rows[1].time.shouldEqual(SysTime(DateTime(2013, 2, 9, 12, 34, 56), UTC()));
19 
20 series.rows["time"][0].shouldEqual("2015-06-11T20:46:02Z");
21 series.rows["bar"][1].shouldEqual("yellow");
22 
23 series.rows.array.shouldEqual(
24     [
25         MeasurementSeries.Rows.Row(["time", "foo", "bar"],
26                                    ["2015-06-11T20:46:02Z", "red", "blue"],
27                                    ),
28         MeasurementSeries.Rows.Row(["time", "foo", "bar"],
29                                    ["2013-02-09T12:34:56Z", "green", "yellow"],
30                                    ),
31     ]
32 );
1 auto series = MeasurementSeries("coolness",
2                                 ["time", "foo", "bar"],
3                                 [["2015-06-11T20:46:02Z", "red", "blue"]]);
4 series.rows[0].get("foo", "oops").shouldEqual("red");
5 series.rows[0].get("quux", "oops").shouldEqual("oops");
1 import std.conv: to;
2 auto series = MeasurementSeries("coolness",
3                                 ["time", "foo", "bar"],
4                                 [["2015-06-11T20:46:02Z", "red", "blue"]]);
5 series.rows[0].to!string.shouldEqual("Row(time: 2015-06-11T20:46:02Z, foo: red, bar: blue)");
1 
2 import std.datetime: SysTime, DateTime, UTC, usecs;
3 import std.array: array;
4 
5 auto series = MeasurementSeries("coolness",
6                                 ["time", "foo", "bar"],
7                                 [
8                                     ["2017-05-10T14:47:38.82524801Z", "red", "blue"],
9                                 ]);
10 
11 series.rows[0].time.shouldEqual(SysTime(DateTime(2017, 05, 10, 14, 47, 38), 825248.usecs, UTC()));

Meta