package scanner; import java.io.IOException; import error.CriticalLispException; public interface LispInputStream { int read(); void unreadLastCharacter(); public static class MaximumUnreadsExceededException extends CriticalLispException { private static final long serialVersionUID = 1L; } public static class UncheckedIOException extends CriticalLispException { private static final long serialVersionUID = 1L; private IOException ioException; public UncheckedIOException(IOException ioException) { this.ioException = ioException; } @Override public String getMessage() { return ioException.getMessage(); } } }