MayaFlux 0.1.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches

◆ eval()

bool Lila::Lila::eval ( const std::string &  code)

Evaluates a C++ code snippet directly.

Parameters
codeCode to execute
Returns
True if evaluation succeeded, false otherwise

Definition at line 91 of file Lila.cpp.

92{
93 if (!m_interpreter) {
94 LILA_ERROR(Emitter::SYSTEM, "Cannot eval: interpreter not initialized");
95 return false;
96 }
97
98 auto result = m_interpreter->eval(code);
99
100 if (result.success && m_success_callback) {
102 } else if (!result.success && m_error_callback) {
103 m_error_callback(result.error);
104 }
105
106 return result.success;
107}
#define LILA_ERROR(emitter, msg)
std::function< void()> m_success_callback
Success callback.
Definition Lila.hpp:169
std::unique_ptr< ClangInterpreter > m_interpreter
Embedded Clang interpreter.
Definition Lila.hpp:165
std::function< void(const std::string &)> m_error_callback
Error callback.
Definition Lila.hpp:170

References LILA_ERROR.