/******************************************************************************* * Copyright © 2012, 2013 IBM Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * IBM Corporation - initial API and implementation * *******************************************************************************/ package java_cup.runtime; /** * Defines the Scanner interface, which CUP uses in the default * implementation of <code>lr_parser.scan()</code>. Integration * of scanners implementing <code>Scanner</code> is facilitated. * * @version last updated 23-Jul-1999 * @author David MacMahon <davidm@smartsc.com> */ /* ************************************************* Interface Scanner Declares the next_token() method that should be implemented by scanners. This method is typically called by lr_parser.scan(). End-of-file can be indicated either by returning <code>new Symbol(lr_parser.EOF_sym())</code> or <code>null</code>. ***************************************************/ public interface Scanner { /** Return the next token, or <code>null</code> on end-of-file. */ public Symbol next_token() throws java.lang.Exception; }