FazBrowse GitHub Viewer | Trending |
URL:
| Home
Tools: [Download Repo ZIP]   [Original HTTPS Page]

GitHub Viewer

#include "daScript/daScript.h" using namespace das; const char * tutorial_text = R""""( [export] def test print("this is nano tutorial\n") )""""; int main( int, char * [] ) { // request all da-script built in modules NEED_ALL_DEFAULT_MODULES; // Initialize modules Module::Initialize(); // make file access, introduce string as if it was a file auto fAccess = make_smart(); auto fileInfo = make_unique(tutorial_text, uint32_t(strlen(tutorial_text)), false); fAccess->setFileInfo("dummy.das", das::move(fileInfo)); // compile script TextPrinter tout; ModuleGroup dummyLibGroup; auto program = compileDaScript("dummy.das", fAccess, tout, dummyLibGroup); if ( program->failed() ) return -1; // create context Context ctx(program->getContextStackSize()); if ( !program->simulate(ctx, tout) ) return -2; // find function. its up to application to check, if function is not null auto function = ctx.findFunction("test"); if ( !function ) return -3; // call context function ctx.evalWithCatch(function, nullptr); // shut-down daScript, free all memory Module::Shutdown(); return 0; }

Back | FazBrowse Home | New Git URL