Invocation context from Ruby package in C# app
Calling any method on Runtime Context creates new instance of Invocation Context.
// use Activate only once in your app
Javonet.Activate("your-license-key");
// create called runtime context
var calledRuntime = Javonet.InMemory().Ruby();
// construct an invocation context - this invocationContext in non-materialized
var invocationContext = calledRuntime.GetType("Math").
InvokeStaticMethod("sqrt", 2500);
// execute invocation context - this will materialize the invocationContext
var response = invocationContext.Execute();
Navigation through the methods on different variations of Invocation Context allows to construct the chain of invocations. Those chains of invocation represent the non-materialized expression of interaction with libraries, types, and any programming entities in target technology.
In order to materialize expression, a call to called technology needs to be invoked with Execute method
Was this article helpful?