2 * Back 2 Browser Bytecode Translator
3 * Copyright (C) 2012 Jaroslav Tulach <jaroslav.tulach@apidesign.org>
5 * This program is free software: you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation, version 2 of the License.
9 * This program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
14 * You should have received a copy of the GNU General Public License
15 * along with this program. Look for COPYING file in the top folder.
16 * If not, see http://opensource.org/licenses/GPL-2.0.
19 Java 4 Browser Bytecode Translator
20 Copyright (C) 2012-2012 Jaroslav Tulach <jaroslav.tulach@apidesign.org>
22 This program is free software: you can redistribute it and/or modify
23 it under the terms of the GNU General Public License as published by
24 the Free Software Foundation, version 2 of the License.
26 This program is distributed in the hope that it will be useful,
27 but WITHOUT ANY WARRANTY; without even the implied warranty of
28 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
29 GNU General Public License for more details.
31 You should have received a copy of the GNU General Public License
32 along with this program. Look for COPYING file in the top folder.
33 If not, see http://opensource.org/licenses/GPL-2.0.
35 package org.apidesign.vm4brwsr;
37 import org.apidesign.bck2brwsr.core.JavaScriptBody;
41 * @author Jaroslav Tulach <jtulach@netbeans.org>
43 public class StaticMethod {
44 private static int cnt;
46 public static int minusOne() {
50 public static Object none(int x, int y) {
52 for (int i = x; i < y; i++) {
62 public static int sum(int x, int y) {
65 public static float power(float x) {
68 public static double minus(double x, long y) {
71 public static int div(byte c, double d) {
74 public static int mix(int a, long b, byte c, double d) {
75 return (int)((b / a + c) * d);
77 public static long xor(int a, long b) {
80 public static long orOrAnd(boolean doOr, int a, int b) {
81 return doOr ? a | b : a & b;
83 public static int shiftLeft(int what, int much) {
86 public static int shiftArithmRight(int what, int much, boolean signed) {
93 public static long factRec(int n) {
97 return n * factRec(n - 1);
100 public static long factIter(int n) {
102 for (int i = 2; i <= n; i++) {
107 public static int inc4() {
115 args={"i","j"}, body="return (i + j).toString();"
117 public static String i2s(int i, int j) {
118 throw new IllegalStateException();
122 // check order of initializers
123 StaticUse.NON_NULL.equals(new Object());