Beispiel #1
0
        private static double Cosine(double x)
        {
            var radians = GoFunctions.Cosine(x);

            Console.WriteLine($"[C#] Cosine({x}) = {radians}");
            return(radians);
        }
Beispiel #2
0
        private static int Add(int x, int y)
        {
            var sum = GoFunctions.Add(x, y);

            Console.WriteLine($"[C#] Add {x} + {y} = {sum}");
            return(sum);
        }
        private void button1_Click(object sender, EventArgs e)
        {
            var encrypted = GoFunctions.Encrypt(System.Text.Encoding.UTF8.GetBytes("hello"));
            var decrypted = GoFunctions.Decrypt(System.Text.Encoding.UTF8.GetBytes(Marshal.PtrToStringAnsi(encrypted)));

            label1.Text = Marshal.PtrToStringAnsi(encrypted);
            label2.Text = Marshal.PtrToStringAnsi(decrypted);
        }
Beispiel #4
0
        private static string GetOrganizationAsJson(WebWindow window, string organizationId)
        {
            var orgPtr = GoFunctions.GetOrganizationAsJson(new GoString(organizationId));
            var org    = Marshal.PtrToStringAnsi(orgPtr);

            GoFunctions.FreeString(orgPtr);
            Console.WriteLine($"[C#] GetOrganizationAsJson {organizationId} -> {org}");
            return(org);
        }
Beispiel #5
0
        private static void GoLangDoThrow()
        {
            Console.WriteLine($"[C#] GoLangDoThrow");
            var r     = GoFunctions.DoThrow();
            var error = Marshal.PtrToStringAnsi(r);

            GoFunctions.FreeString(r);
            throw JsonConvert.DeserializeObject <RemoteException>(error);
        }
Beispiel #6
0
        private static long[] Sort(long[] numbers)
        {
            long[] unsorted = new long[numbers.Length];
            numbers.CopyTo(unsorted, 0);
            var array = new GoSlice(numbers);

            GoFunctions.Sort(array);
            Console.WriteLine($"[C#] Sort({string.Join(",", unsorted)}) = {string.Join(",", numbers)}");
            return(numbers);
        }
Beispiel #7
0
        private static Organization GetOrganizationAsCtype(WebWindow window, string organizationId)
        {
            var orgPtr = GoFunctions.GetOrganizationAsCtype(new GoString(organizationId));
            var goOrg  = (GoOrganization)Marshal.PtrToStructure(orgPtr, typeof(GoOrganization));
            var org    = Organization.fromGoOrganizaton(goOrg);

            var goEmploee = goOrg.employees;

            while (goEmploee != IntPtr.Zero)
            {
                var emp     = (GoEmploee)Marshal.PtrToStructure(goEmploee, typeof(GoEmploee));
                var emploee = Emploee.FromGoEmploee(emp);
                org.Employees.Add(emploee);
                goEmploee = emp.nextEmployee;
            }
            GoFunctions.FreeOrganizationAsCtype(orgPtr);
            Console.WriteLine($"[C#] GetOrganizationAsCtype {organizationId} -> {org}");
            return(org);
        }
Beispiel #8
0
        private static void Log(string message)
        {
            var msgId = GoFunctions.Log(new GoString(message));

            Console.WriteLine($"[C#] msgid {msgId}");
        }