1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1.2 +++ b/vm/src/test/java/org/apidesign/vm4brwsr/StaticMethod.java Mon Sep 24 11:07:38 2012 +0200
1.3 @@ -0,0 +1,68 @@
1.4 +/*
1.5 +Java 4 Browser Bytecode Translator
1.6 +Copyright (C) 2012-2012 Jaroslav Tulach <jaroslav.tulach@apidesign.org>
1.7 +
1.8 +This program is free software: you can redistribute it and/or modify
1.9 +it under the terms of the GNU General Public License as published by
1.10 +the Free Software Foundation, version 2 of the License.
1.11 +
1.12 +This program is distributed in the hope that it will be useful,
1.13 +but WITHOUT ANY WARRANTY; without even the implied warranty of
1.14 +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1.15 +GNU General Public License for more details.
1.16 +
1.17 +You should have received a copy of the GNU General Public License
1.18 +along with this program. Look for COPYING file in the top folder.
1.19 +If not, see http://opensource.org/licenses/GPL-2.0.
1.20 +*/
1.21 +package org.apidesign.vm4brwsr;
1.22 +
1.23 +/**
1.24 + *
1.25 + * @author Jaroslav Tulach <jtulach@netbeans.org>
1.26 + */
1.27 +public class StaticMethod {
1.28 + private static int cnt;
1.29 +
1.30 + public static int sum(int x, int y) {
1.31 + return x + y;
1.32 + }
1.33 + public static float power(float x) {
1.34 + return x * x;
1.35 + }
1.36 + public static double minus(double x, long y) {
1.37 + return x - y;
1.38 + }
1.39 + public static int div(byte c, double d) {
1.40 + return (int)(d / c);
1.41 + }
1.42 + public static int mix(int a, long b, byte c, double d) {
1.43 + return (int)((b / a + c) * d);
1.44 + }
1.45 + public static long xor(int a, long b) {
1.46 + return a ^ b;
1.47 + }
1.48 + public static long orOrAnd(boolean doOr, int a, int b) {
1.49 + return doOr ? a | b : a & b;
1.50 + }
1.51 + public static long factRec(int n) {
1.52 + if (n <= 1) {
1.53 + return 1;
1.54 + } else {
1.55 + return n * factRec(n - 1);
1.56 + }
1.57 + }
1.58 + public static long factIter(int n) {
1.59 + long res = 1;
1.60 + for (int i = 2; i <= n; i++) {
1.61 + res *= i;
1.62 + }
1.63 + return res;
1.64 + }
1.65 + public static int inc4() {
1.66 + cnt++;
1.67 + cnt+=2;
1.68 + cnt++;
1.69 + return cnt;
1.70 + }
1.71 +}