123456789101112131415161718192021222324252627282930313233343536 |
- #ifndef AFUN_CORE_ACTIVATION_H
- #define AFUN_CORE_ACTIVATION_H
- #include "aFuntool.h"
- #include "aFunCoreExport.h"
- #include "core-message-stream.h"
- #include "aFuncode.h"
- namespace aFuncore {
- class Activation {
- public:
- typedef enum ActivationStatus {
- as_run = 0,
- as_end = 1,
- as_end_run = 2,
- } ActivationStatus;
- Activation() = default;
- virtual ~Activation() = default;
- Activation(const Activation &) = delete;
- Activation &operator=(Activation &) = delete;
- virtual ActivationStatus getCode(const aFuncode::Code::ByteCode *&code) = 0;
- virtual void runCode(const aFuncode::Code::ByteCode *code) = 0;
- virtual void endRun() = 0;
- [[nodiscard]] virtual UpMessageStream &getUpStream() = 0;
- [[nodiscard]] virtual DownMessageStream &getDownStream() = 0;
- [[nodiscard]] virtual aFuntool::FileLine getFileLine() = 0;
- [[nodiscard]] virtual const aFuntool::FilePath &getFilePath() = 0;
- };
- }
- #endif //AFUN_CORE_ACTIVATION_H
|