Package VASSAL.tools
Class RecursionLimiter
java.lang.Object
VASSAL.tools.RecursionLimiter
public class RecursionLimiter extends Object
Utility class to detect and report Infinite Loops within
Vassal components
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interfaceRecursionLimiter.Loopable -
Field Summary
Fields Modifier and Type Field Description protected static intRECURSION_LIMITprotected static intrecursionDepthprotected static booleanreporting -
Constructor Summary
Constructors Constructor Description RecursionLimiter() -
Method Summary
Modifier and Type Method Description static voidendExecution()static voidinfiniteLoop(RecursionLimitException e)Report an Infinite Loopstatic booleanisReportingInfiniteLoop()static voidstartExecution(RecursionLimiter.Loopable looper)
-
Field Details
-
RECURSION_LIMIT
protected static final int RECURSION_LIMIT- See Also:
- Constant Field Values
-
recursionDepth
protected static int recursionDepth -
reporting
protected static boolean reporting
-
-
Constructor Details
-
RecursionLimiter
public RecursionLimiter()
-
-
Method Details
-
startExecution
- Throws:
RecursionLimitException
-
endExecution
public static void endExecution() -
infiniteLoop
Report an Infinite Loop- Parameters:
e-
-
isReportingInfiniteLoop
public static boolean isReportingInfiniteLoop()
-