You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

74 lines
1.5 KiB
Java

/*
* This class is public domain because it is standalone and
* is potentially useful to other projects.
*
* If this cannot be placed in the public domain, it is licensed under
* the Creative Commons Zero license.
*
* Feel free to use it however you wish!
*/
package net.apocalypselabs.symat;
/**
* This class handles debug logging, so it's easy to disable.
*
* @author Skylar
*/
public class Debug {
// If output should be on or off
public static boolean debug = true;
/**
* Turn debug output on and off.
*
* @param b
*/
public static void setDebug(boolean b) {
debug = b;
}
/**
* Check if debug output is enabled.
*
* @return true if it is.
*/
public static boolean getDebug() {
return debug;
}
/**
* Call System.out.println(data) if debug output enabled.
*
* @param data Data to print.
*/
public static void println(Object data) {
if (debug) {
System.out.println(data);
}
}
/**
* Call System.err.println(data) if debug output enabled.
*
* @param data Data to print.
*/
public static void printerr(Object data) {
if (debug) {
System.err.println(data);
}
}
/**
* Call e.printStackTrace() if debug output enabled.
*
* @param e an Exception.
*/
@SuppressWarnings(value = {"CallToPrintStackTrace"})
public static void stacktrace(Exception e) {
if (debug) {
e.printStackTrace();
}
}
}