001    // Copyright 2007 Regents of the University of California.  May be used 
002    // under the terms of the revised BSD license.  See LICENSING for details.
003    /**
004     * @author Tyler Close
005     */
006    package org.joe_e;
007    
008    /**
009     * This is the interface for custom implementations to handle 
010     * <code>java.lang.Error</code>s in a Joe-E program.  The error handler should
011     * abort the computation of the current thread so as to prevent recovery from
012     * the error.
013     */
014    public interface ErrorHandler extends Powerless {
015    
016        /**
017         * Handles an error.
018         * @param err error to handle
019         * @return error to throw
020         */
021        Error handle(Error err);
022    }