static byte[] toByteArray(ByteArrayOutputStream baos) { ret baos == null ? null : baos.toByteArray(); } static byte[] toByteArray(Iterator it) { new ByteBuffer buf; while (it.hasNext()) buf.add((byte) it.next().intValue()); ret buf.toByteArray(); } static byte[] toByteArray(Cl it) { int n = l(it), i = 0; byte[] a = new[n]; for (x : it) a[i++] = (byte) x.intValue(); ret a; } static byte[] toByteArray(O o) { if (o == null) null; if (o cast byte[]) ret o; if (o instanceof Iterator) ret toByteArray((Iterator) o); if (o cast Cl) ret toByteArray((Cl) o); // not sure what else to put here fail("toByteArray", o); } // Note: Does not rewind the buffer static byte[] toByteArray(java.nio.ByteBuffer buf) { if (buf == null) null; byte[] a = new[buf.remaining()]; buf.get(a); ret a; }