#ifndef PW_SCRIPTING_SCRIPT_HPP
#define PW_SCRIPTING_SCRIPT_HPP

#include <pw/core/globals.hpp>

#include <string>

namespace pw {

class script {
public:

    script();
    ~script();

    int run(const std::string& s);

    struct state {
        virtual int run(const std::string& script) = 0;
        virtual ~state() = default;
    };

protected:

    std::unique_ptr<state> _state;

};

}

#endif
