1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 package io.github.prolobjectlink.prolog.tuprolog;
23
24 import java.util.Iterator;
25
26 import javax.script.ScriptEngineFactory;
27
28 import io.github.prolobjectlink.prolog.ArrayIterator;
29 import io.github.prolobjectlink.prolog.PrologScriptEngineFactory;
30
31 public final class TuPrologScriptFactory extends PrologScriptEngineFactory implements ScriptEngineFactory {
32
33 public TuPrologScriptFactory() {
34 super(new TuProlog().newEngine());
35 }
36
37 public String getMethodCallSyntax(String obj, String m, String... args) {
38 StringBuilder result = new StringBuilder();
39 result.append(obj + " <- " + m);
40 result.append('(');
41 Iterator<String> i = new ArrayIterator<String>(args);
42 if (i.hasNext()) {
43 while (i.hasNext()) {
44 result.append(i.next());
45 if (i.hasNext()) {
46 result.append(',');
47 }
48 }
49 }
50 result.append(')');
51 return "" + result + "";
52 }
53
54 }