Skip to content

Repository files navigation

Scriptify Kotlin Script

This library adds Kotlin Script implementation for the Scriptify library.

Example of usage

Kotlin example

importcom.instancify.scriptify.common.script.constant.CommonConstantManagerimportcom.instancify.scriptify.common.script.function.CommonFunctionManagerimportkotlin.script.experimental.api.ResultValuefunmain() {
val script =KtsScript()
script.functionManager =CommonFunctionManager()
script.constantManager =CommonConstantManager()
val result = script.eval("randomInt(min = 1, max = 5)")
if (result?.returnValue isResultValue.Value) {
println("Random value: ${result.returnValue}")
}
}

Java example

importcom.instancify.scriptify.api.exception.ScriptException;
importcom.instancify.scriptify.common.script.constant.CommonConstantManager;
importcom.instancify.scriptify.common.script.function.CommonFunctionManager;
importkotlin.script.experimental.api.EvaluationResult;
importkotlin.script.experimental.api.ResultValue;
publicclassTest {
publicstaticvoidmain(String[] args) throwsScriptException {
KtsScriptscript = newKtsScript();
script.setFunctionManager(newCommonFunctionManager());
script.setConstantManager(newCommonConstantManager());
EvaluationResultresult = script.eval("randomInt(min = 1, max = 5)");
if (result != null) {
if (result.getReturnValue() instanceofResultValue.Valuevalue) {
System.out.println("Random value: " + value.getValue());
}
}
}
}

This is a simple example of using the random number function. You can register your own functions and constants, or use ready-made ones from the common module.

Maven

Adding repo:

<repositories>
<repository>
<id>instancify-repository-snapshots</id>
<url>https://repo.instancify.app/snapshots</url>
</repository>
</repositories>

Adding dependency:

<dependency>
<groupId>com.instancify.scriptify.kts</groupId>
<artifactId>script</artifactId>
<version>1.0.0-SNAPSHOT</version>
</dependency>

Gradle

Adding repo:

maven {
name "instancifyRepositorySnapshots"
url "https://repo.instancify.app/snapshots"
}

Adding dependency:

implementation "com.instancify.scriptify.kts:script:1.0.0-SNAPSHOT"

About

This library adds Kotlin Script implementation for the Scriptify library.

Resources

Stars

3 stars

Watchers

0 watching

Forks

Contributors

Languages