package jmate.io; public class PrintStream { public void println(String a) { // TODO: `a + "\n"' when StringBuilder is available printf(a); printf("\n"); } public PrintStream printf(String format, Object... args) { /* temporary workaround ;-) */ int len = args.length; if (len == 0) { this.printf_0(format); } else if (len == 1) { this.printf_1(format, args[0]); } else if (len == 2) { this.printf_2(format, args[0], args[1]); } else if (len == 3) { this.printf_3(format, args[0], args[1], args[2]); } else if (len == 4) { this.printf_4(format, args[0], args[1], args[2], args[3]); } else if (len == 5) { this.printf_5(format, args[0], args[1], args[2], args[3], args[4]); } return this; } public native void printf_0(String a); public native void printf_1(String a, Object b); public native void printf_2(String a, Object b, Object c); public native void printf_3(String a, Object b, Object c, Object d); public native void printf_4(String a, Object b, Object c, Object d, Object e); public native void printf_5(String a, Object b, Object c, Object d, Object e, Object f); }