|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--antlr.Tool
Field Summary | |
protected boolean |
genHashLines
|
protected String |
grammarFile
|
protected boolean |
hasError
Was there an error during parsing or analysis? |
protected static String |
literalsPrefix
|
protected NameSpace |
nameSpace
C++ file level options |
protected String |
namespaceAntlr
|
protected String |
namespaceStd
|
protected boolean |
noConstructors
|
protected static String |
outputDir
Current output directory for generated files |
protected static boolean |
upperCaseMangledLiterals
|
static String |
version
|
Constructor Summary | |
Tool()
Construct a new Tool. |
Method Summary | |
protected void |
checkForInvalidArguments(String[] args,
BitSet cmdLineArgValid)
|
void |
copyFile(String source_name,
String dest_name)
This example is from the book _Java in a Nutshell_ by David Flanagan. |
int |
doEverything(String[] args)
Process args and have ANTLR do it's stuff without calling System.exit. |
void |
doEverythingWrapper(String[] args)
Perform processing on the grammar file. |
void |
error(String s)
Issue an error |
void |
error(String s,
String file,
int line,
int column)
Issue an error with line number information |
Object |
factory(String p)
When we are 1.1 compatible... public static Object factory2 (String p, Object[] initargs) { Class c; Object o = null; try { int argslen = initargs.length; Class cl[] = new Class[argslen]; for (int i=0;i<argslen;i++) { cl[i] = Class.forName(initargs[i].getClass().getName()); } c = Class.forName (p); Constructor con = c.getConstructor (cl); o = con.newInstance (initargs); } catch (Exception e) { System.err.println ("Can't make a " + p); } return o; } |
void |
fatalError(String message)
An error occured that should stop the Tool from doing any work. |
String |
fileMinusPath(String f)
|
boolean |
getGenHashLines()
|
String |
getGrammarFile()
|
Reader |
getGrammarReader()
|
String |
getLanguage(MakeGrammar behavior)
Determine the language used for this run of ANTLR This was made a method so the subclass can override it |
String |
getLiteralsPrefix()
|
NameSpace |
getNameSpace()
|
String |
getNamespaceAntlr()
|
String |
getNamespaceStd()
|
String |
getOutputDirectory()
|
boolean |
getUpperCaseMangledLiterals()
|
boolean |
hasError()
|
static void |
main(String[] args)
|
PrintWriter |
openOutputFile(String f)
This method is used by all code generators to create new output files. |
void |
panic()
Deprecated. as of 2.7.2 use fatalError(String) . By default
this method executes fatalError("panic"); . |
void |
panic(String s)
Deprecated. as of 2.7.2 use fatalError(String) . By defaykt
this method executes fatalError("panic: " + s); . |
File |
parent(File f)
|
static Vector |
parseSeparatedList(String list,
char separator)
Parse a list such as "f1.g;f2.g;..." and return a Vector of the elements. |
String |
pathToFile(String f)
given a filename, strip off the directory prefix (if any) and return it. |
protected void |
processArguments(String[] args)
Process the command-line arguments. |
void |
reportException(Exception e,
String message)
|
void |
reportProgress(String message)
|
void |
setArgOK(int i)
|
void |
setFileLineFormatter(FileLineFormatter formatter)
|
void |
setNameSpace(String name)
Support C++ & C# namespaces (for now). |
void |
setOutputDirectory(String o)
|
void |
toolError(String s)
Issue an error; used for general tool errors not for grammar stuff |
void |
warning(String s)
Issue a warning |
void |
warning(String[] s,
String file,
int line,
int column)
Issue a warning with line number information |
void |
warning(String s,
String file,
int line,
int column)
Issue a warning with line number information |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
public static String version
protected boolean hasError
protected static String outputDir
protected String grammarFile
protected static String literalsPrefix
protected static boolean upperCaseMangledLiterals
protected NameSpace nameSpace
protected String namespaceAntlr
protected String namespaceStd
protected boolean genHashLines
protected boolean noConstructors
Constructor Detail |
public Tool()
Method Detail |
public String getGrammarFile()
public boolean hasError()
public NameSpace getNameSpace()
public String getNamespaceStd()
public String getNamespaceAntlr()
public boolean getGenHashLines()
public String getLiteralsPrefix()
public boolean getUpperCaseMangledLiterals()
public void setFileLineFormatter(FileLineFormatter formatter)
protected void checkForInvalidArguments(String[] args, BitSet cmdLineArgValid)
public void copyFile(String source_name, String dest_name) throws IOException
IOException
public void doEverythingWrapper(String[] args)
public int doEverything(String[] args)
public void error(String s)
s
- The messagepublic void error(String s, String file, int line, int column)
s
- The messagefile
- The file that has the error (or null)line
- The grammar file line number on which the error occured (or -1)column
- The grammar file column number on which the error occured (or -1)public Object factory(String p)
public String fileMinusPath(String f)
public String getLanguage(MakeGrammar behavior)
public String getOutputDirectory()
public static void main(String[] args)
public PrintWriter openOutputFile(String f) throws IOException
IOException
public Reader getGrammarReader()
public void reportException(Exception e, String message)
public void reportProgress(String message)
public void fatalError(String message)
java.lang.System.exit(int)
after printing an error message to
stderr. However, the tools should expect that a subclass
will override this to throw an unchecked exception such as
IllegalStateException
or another subclass of
RuntimeException
. If this method is overriden,
it must never return normally; i.e. it must always
throw an exception or call System.exit.
public void panic()
fatalError(String)
. By default
this method executes fatalError("panic");
.
public void panic(String s)
fatalError(String)
. By defaykt
this method executes fatalError("panic: " + s);
.
s
- The messagepublic File parent(File f)
public static Vector parseSeparatedList(String list, char separator)
public String pathToFile(String f)
protected void processArguments(String[] args)
Process the command-line arguments. Can only be called by Tool. A bitset is collected of all correct arguments via setArgOk.
args
- The command-line arguments passed to main()public void setArgOK(int i)
public void setOutputDirectory(String o)
public void toolError(String s)
s
- The messagepublic void warning(String s)
s
- the messagepublic void warning(String s, String file, int line, int column)
s
- The messagefile
- The file that has the warning (or null)line
- The grammar file line number on which the warning occured (or -1)column
- The grammar file line number on which the warning occured (or -1)public void warning(String[] s, String file, int line, int column)
s
- The lines of the messagefile
- The file that has the warningline
- The grammar file line number on which the warning occuredpublic void setNameSpace(String name)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |