2
* STANDARD ML OF NEW JERSEY COPYRIGHT NOTICE, LICENSE AND DISCLAIMER.
4
* Copyright (c) 1989-1998 by Lucent Technologies
6
* Permission to use, copy, modify, and distribute this software and its
7
* documentation for any purpose and without fee is hereby granted, provided
8
* that the above copyright notice appear in all copies and that both the
9
* copyright notice and this permission notice and warranty disclaimer appear
10
* in supporting documentation, and that the name of Lucent Technologies, Bell
11
* Labs or any Lucent entity not be used in advertising or publicity pertaining
12
* to distribution of the software without specific, written prior permission.
14
* Lucent disclaims all warranties with regard to this software, including all
15
* implied warranties of merchantability and fitness. In no event shall Lucent
16
* be liable for any special, indirect or consequential damages or any damages
17
* whatsoever resulting from loss of use, data or profits, whether in an action
18
* of contract, negligence or other tortious action, arising out of or in
19
* connection with the use or performance of this software.
21
* Taken from this URL:
22
* http://www.smlnj.org/license.html
24
* This license is compatible with the GNU GPL (see section "Standard ML of New
25
* Jersey Copyright License"):
26
* http://www.gnu.org/licenses/license-list.html#StandardMLofNJ
30
* Copyright 1996-1999 by Scott Hudson, Frank Flannery, C. Scott Ananian
33
package weka.core.parser.java_cup.runtime;
36
* Creates the Symbols interface, which CUP uses as default
38
* @version last updated 27-03-2006
39
* @author Michael Petter
42
/* *************************************************
43
Interface SymbolFactory
45
interface for creating new symbols
46
You can also use this interface for your own callback hooks
47
Declare Your own factory methods for creation of Objects in Your scanner!
48
***************************************************/
49
public interface SymbolFactory {
52
* Construction with left/right propagation switched on
54
public Symbol newSymbol(String name, int id, Symbol left, Symbol right, Object value);
55
public Symbol newSymbol(String name, int id, Symbol left, Symbol right);
57
* Construction with left/right propagation switched off
59
public Symbol newSymbol(String name, int id, Object value);
60
public Symbol newSymbol(String name, int id);
62
* Construction of start symbol
64
public Symbol startSymbol(String name, int id, int state);