blob: 64cc0e95848e3be86a050fb2c4af0c1e35e94639 [file] [log] [blame]
Václav Kubernát96344a12018-05-28 16:33:39 +02001/*
2 * Copyright (C) 2018 CESNET, https://photonics.cesnet.cz/
3 * Copyright (C) 2018 FIT CVUT, https://fit.cvut.cz/
4 *
5 * Written by Václav Kubernát <kubervac@fit.cvut.cz>
6 *
7*/
8
9#pragma once
10
11#include <boost/variant/static_visitor.hpp>
12#include "parser.hpp"
13
14struct Interpreter : boost::static_visitor<void> {
Václav Kubernátb61336d2018-05-28 17:35:03 +020015 Interpreter(Parser& parser, Schema&);
Václav Kubernát96344a12018-05-28 16:33:39 +020016
Václav Kubernát07204242018-06-04 18:12:09 +020017 void operator()(const set_&) const;
Václav Kubernát96344a12018-05-28 16:33:39 +020018 void operator()(const cd_&) const;
Václav Kubernátb61336d2018-05-28 17:35:03 +020019 void operator()(const create_&) const;
20 void operator()(const delete_&) const;
21
Václav Kubernát96344a12018-05-28 16:33:39 +020022private:
23 Parser& m_parser;
24};