using Jint.Native; namespace Jint.Tests.Runtime.Domain { public class A { public int Call1() { return 0; } public int Call1(int x) { return x; } public string Call2(string x) { return x; } public string Call3(object x) { return x.ToString(); } public string Call4(IPerson x) { return x.ToString(); } public string Call5(Delegate callback) { var thisArg = JsValue.Undefined; var arguments = new JsValue[] { 1, "foo" }; return callback.DynamicInvoke(thisArg, arguments).ToString(); } public string Call6(Func callback) { var thisArg = new JsString("bar"); var arguments = new JsValue[] { 1, "foo" }; return callback(thisArg, arguments).ToString(); } public bool Call7(string str, Func predicate) { return predicate(str); } public string Call8(Func predicate) { return predicate(); } public void Call9(Action predicate) { predicate(); } public void Call10(string str, Action predicate) { predicate(str); } public void Call11(string str, string str2, Action predicate) { predicate(str, str2); } public int Call12(int value, Func map) { return map(value); } public string Call13(params object[] values) { return String.Join(",", values); } public string Call14(string firstParam, params object[] values) { return String.Format("{0}:{1}", firstParam, String.Join(",", values)); } public void Call15(string x) { } public string Call16(params JsValue[] values) { return String.Join(",", (System.Collections.Generic.IEnumerable)values); } public int Call17(Func callback) { return callback(17); } public void Call18(Action callback) { callback(18); } public int Call19(int a = 0) { return a; } public static int Call19Static(int a = 0) { return a; } public int Call20(int a, int b = 1, int c = 2) { return a + b + c; } public static int Call20Static(int a, int b = 1, int c = 2) { return a + b + c; } } }