gnu.jel.debug
Class Debug

java.lang.Object
  extended by gnu.jel.debug.Debug

public final class Debug
extends Object

This class used for incorporating internal checks and assertions into the code.
None of these functions does anything if Debug.enabled is false.
If you really want to throw ALL debug messages from the final, compiler generated, code -- wrap calls to Debug methods into the if statement, checking Debug.enabled constant. As shown in the example :

 import cz.fzu.metlov.jel.*;
 ..... BLA BLA BLA ...
 if (Debug.enabled) {
  Debug.println("I want this message to disappear in the optimized version");
  Debug.check(foo==superTimeConsumingFunction(bar), 
 "I do not want to evaluate superTimeConsumingFunction(), when optimized."); 
 }; 


Field Summary
static boolean enabled
          Determines if debugging is enabled in current compilation.
 
Constructor Summary
Debug()
           
 
Method Summary
static void check(boolean condition)
          Checks for the condition.
static void check(boolean condition, String message)
          Checks for the condition.
static void println(String message)
          Prints a line of the debug output.
static void reportThrowable(Throwable t)
          Reports an exception, which should not occur(i.e.
static void reportThrowable(Throwable t, String message)
          Reports an exception, which should not occur(i.e.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

enabled

public static final boolean enabled
Determines if debugging is enabled in current compilation.

See Also:
Constant Field Values
Constructor Detail

Debug

public Debug()
Method Detail

println

public static final void println(String message)
Prints a line of the debug output. The resulting line goes to System.err and is prefixed by "[DEBUG] ".

Parameters:
message - message to print.

check

public static final void check(boolean condition,
                               String message)
Checks for the condition. If condition is false this function prints a given message to the System.err along with the stack trace.

Parameters:
condition - is the condition to check.
message - is the message to print if condition is false.

check

public static final void check(boolean condition)
Checks for the condition. If condition is false this function prints a "Assertion failed." to the System.err along with the stack trace.

Parameters:
condition - is the condition to check.

reportThrowable

public static final void reportThrowable(Throwable t,
                                         String message)
Reports an exception, which should not occur(i.e. handled improperly).

Parameters:
t - is what was thrown.
message - is algorithm specific message.

reportThrowable

public static final void reportThrowable(Throwable t)
Reports an exception, which should not occur(i.e. handled improperly).

Parameters:
t - is what was thrown.


Copyright © 1998-2009 Konstantin L. Metlov All Rights Reserved.

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the JEL manual.