MayaFlux 0.2.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 96 of file Lila.cpp.

97{
98 if (!m_interpreter) {
99 LILA_ERROR(Emitter::SYSTEM, "Cannot eval: interpreter not initialized");
100 return false;
101 }
102
103 auto result = m_interpreter->eval(code);
104
105 if (result.success && m_success_callback) {
107 } else if (!result.success && m_error_callback) {
108 m_error_callback(result.error);
109 }
110
111 return result.success;
112}
#define LILA_ERROR(emitter, msg)
std::function< void()> m_success_callback
Success callback.
Definition Lila.hpp:204
std::unique_ptr< ClangInterpreter > m_interpreter
Embedded Clang interpreter.
Definition Lila.hpp:200
std::function< void(const std::string &)> m_error_callback
Error callback.
Definition Lila.hpp:205

References LILA_ERROR.