aboutsummaryrefslogtreecommitdiffstats
path: root/src/runtime.h
blob: a3aa139a8837cbe0c5b50a7b48d89c334ea66b08 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#pragma once
#include <vector>
#include <stack>
#include "token.h"

class Runtime {
    private:
        std::vector<int> m_values;
        void runCommand(const Token& token);

        void doSum();
        void doPrint() const;
        void doPrintAscii() const;
        void doSplice();

    public:
        Runtime();
        void initValues(const std::vector<int>& values);
        void run(std::vector<Token>& tokens);
};