Skip to content

Commit 12ecce8

Browse files
committed
Use new "LangNativeModule" methods to call function pointers in the "ExampleModule" class
1 parent 86469ad commit 12ecce8

File tree

1 file changed

+6
-5
lines changed

1 file changed

+6
-5
lines changed

src/main/java/me/jddev0/ExampleModule.java

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -24,13 +24,14 @@ public DataObject load(List<DataObject> args, final int SCOPE_ID) {
2424
for(DataObject arg:combinedArgs)
2525
System.out.println(" " + arg);
2626
System.out.println();
27-
28-
LangPredefinedFunctionObject funcPrintln = lii.getPredefinedFunctions().get("println");
27+
28+
//Calling a predefined function
29+
DataObject funcPrintln = getPredefinedFunctionAsDataObject("println");
2930

3031
List<DataObject> funcPrintlnArgs = new ArrayList<>();
3132
funcPrintlnArgs.add(new DataObject("Hello world! From this module!"));
3233

33-
lii.callFunctionPointer(new FunctionPointerObject(funcPrintln), "println", funcPrintlnArgs, SCOPE_ID);
34+
callFunctionPointer(funcPrintln, funcPrintlnArgs, SCOPE_ID);
3435

3536
exportFunction("exampleFunction", (argumentList, INNER_SCOPE_ID) -> {
3637
List<DataObject> innerCombinedArgs = LangUtils.combineArgumentsWithoutArgumentSeparators(argumentList);
@@ -77,14 +78,14 @@ public DataObject load(List<DataObject> args, final int SCOPE_ID) {
7778
return new DataObject().setInt(-42);
7879
})));
7980

80-
LangPredefinedFunctionObject linkerInclude = lii.getPredefinedFunctions().get("include");
81+
DataObject linkerInclude = getPredefinedFunctionAsDataObject("include");
8182

8283
List<DataObject> linkerIncludeArgs = new ArrayList<>();
8384
linkerIncludeArgs.add(new DataObject("lib.lang"));
8485
linkerIncludeArgs.add(new DataObject("Argument1 from ExampleModule"));
8586
linkerIncludeArgs = LangUtils.separateArgumentsWithArgumentSeparators(linkerIncludeArgs);
8687

87-
DataObject ret = lii.callFunctionPointer(new FunctionPointerObject(linkerInclude), "include", linkerIncludeArgs, SCOPE_ID);
88+
DataObject ret = callFunctionPointer(linkerInclude, linkerIncludeArgs, SCOPE_ID);
8889

8990
//Accessing exported module variables within the module (The module name must be used [Use lmc.getName()])
9091
Map<String, DataObject> exportedVars = lii.getModuleExportedVariables(lmc.getName());

0 commit comments

Comments
 (0)