Phasor 3.3.0
Stack VM based Programming Language
Loading...
Searching...
No Matches
ScriptingRuntime.hpp
Go to the documentation of this file.
1#pragma once
2
3#include <memory>
4#include <string>
5#include <vector>
7namespace Phasor
8{
9class VM;
10}
11
12namespace Phasor
13{
14
22{
23 public:
24 ScriptingRuntime(int argc, char *argv[]);
25 int run();
26
27 int runSource();
28 int runSourceString(const std::string &source, VM &vm);
29
30 std::unique_ptr<VM> createVm();
31
32 private:
33 struct Args
34 {
35 std::string inputFile;
36 bool verbose = false;
37 int scriptArgc = 0;
38 char **scriptArgv = nullptr;
40
41 void parseArguments(int argc, char *argv[]);
42 void showHelp(const std::string &programName);
43};
44
45} // namespace Phasor
std::unique_ptr< VM > createVm()
void showHelp(const std::string &programName)
struct Phasor::ScriptingRuntime::Args m_args
ScriptingRuntime(int argc, char *argv[])
void parseArguments(int argc, char *argv[])
int runSourceString(const std::string &source, VM &vm)
Virtual Machine.
Definition VM.hpp:33
The Phasor Programming Language and Runtime.
Definition AST.hpp:12