#pragma once

#include <vector>

#include "Field.h"
#include "Function.h"
#include "Text.h"
#include "Type.h"

namespace Framework
{
    class Class : public Type
    {
    private:
        Text name;
        std::vector<Function> funktions;
        std::vector<Field> felder;

    public:
        Class(Text name)
        {
            this->name = name;
        }

        void addFunction(Function f)
        {
            this->funktions.push_back(f);
        }

        void addField(Field f)
        {
            this->felder.push_back(f);
        }
    };
}; // namespace Framework