/* * This file is part of the Jikes RVM project (http://jikesrvm.org). * * This file is licensed to You under the Eclipse Public License (EPL); * You may not use this file except in compliance with the License. You * may obtain a copy of the License at * * http://www.opensource.org/licenses/eclipse-1.0.php * * See the COPYRIGHT.txt file distributed with this work for information * regarding copyright ownership. */ package java.lang; import java.io.InputStream; import java.io.PrintStream; import java.util.List; import org.jikesrvm.VM; import org.jikesrvm.objectmodel.ObjectModel; import org.jikesrvm.runtime.Time; /** * Library support interface of Jikes RVM */ public final class VMSystem { static void arraycopy(Object src, int srcPos, Object dst, int dstPos, int len) { VMCommonLibrarySupport.arraycopy(src, srcPos, dst, dstPos, len); } static int identityHashCode(Object o) { return o == null ? 0 : ObjectModel.getObjectHashCode(o); } static boolean isWordsBigEndian() { return !VM.LittleEndian; } public static long currentTimeMillis() { return Time.currentTimeMillis(); } public static long nanoTime() { return Time.nanoTime(); } static void setIn(InputStream in) { VMCommonLibrarySupport.setSystemStreamField("in", in); } static void setOut(PrintStream out) { VMCommonLibrarySupport.setSystemStreamField("out", out); } static void setErr(PrintStream err) { VMCommonLibrarySupport.setSystemStreamField("err", err); } static InputStream makeStandardInputStream() { return null; } static PrintStream makeStandardOutputStream() { return null; } static PrintStream makeStandardErrorStream() { return null; } /** * Get the value of an environment variable. */ static String getenv(String envarName) { return VMCommonLibrarySupport.getenv(envarName); } static native List<?> environ(); }