2021-10-10 21:26:30 +01:00
|
|
|
#pragma once
|
|
|
|
|
2021-10-20 21:44:43 +01:00
|
|
|
#include "simdjson/simdjson.h"
|
2021-10-11 19:13:05 +01:00
|
|
|
|
2021-10-22 13:10:23 +01:00
|
|
|
#include "element_t.h"
|
2021-10-18 11:54:01 +01:00
|
|
|
#include "cycles_t.h"
|
2021-10-10 21:26:30 +01:00
|
|
|
#include "state_t.h"
|
|
|
|
|
2021-10-22 13:10:23 +01:00
|
|
|
class test_t final : public element_t {
|
2021-10-18 11:54:01 +01:00
|
|
|
public:
|
2021-10-25 18:40:21 +01:00
|
|
|
test_t() noexcept;
|
2021-10-21 22:43:16 +01:00
|
|
|
test_t(simdjson::dom::element input) noexcept;
|
2021-10-11 19:13:05 +01:00
|
|
|
|
2021-10-21 22:03:07 +01:00
|
|
|
[[nodiscard]] auto name() const noexcept { return at("name"); }
|
2021-10-22 11:24:45 +01:00
|
|
|
[[nodiscard]] auto initial() const noexcept { return state_t(at("initial")); }
|
|
|
|
[[nodiscard]] auto final() const noexcept { return state_t(at("final")); }
|
2021-10-21 22:03:07 +01:00
|
|
|
[[nodiscard]] auto cycles() const noexcept { return cycles_t(array_at("cycles")); }
|
2021-10-18 11:54:01 +01:00
|
|
|
};
|