Package antlr

Class Tool

java.lang.Object
antlr.Tool

public class Tool extends Object
  • Field Details

    • version

      public static String version
    • errorHandler

      ToolErrorHandler errorHandler
      Object that handles analysis errors
    • hasError

      protected boolean hasError
      Was there an error during parsing or analysis?
    • genDiagnostics

      boolean genDiagnostics
      Generate diagnostics? (vs code)
    • genDocBook

      boolean genDocBook
      Generate DocBook vs code?
    • genHTML

      boolean genHTML
      Generate HTML vs code?
    • outputDir

      protected String outputDir
      Current output directory for generated files
    • grammarFile

      protected String grammarFile
    • f

      transient Reader f
    • literalsPrefix

      protected String literalsPrefix
    • upperCaseMangledLiterals

      protected boolean upperCaseMangledLiterals
    • nameSpace

      protected NameSpace nameSpace
      C++ file level options
    • namespaceAntlr

      protected String namespaceAntlr
    • namespaceStd

      protected String namespaceStd
    • genHashLines

      protected boolean genHashLines
    • noConstructors

      protected boolean noConstructors
  • Constructor Details

    • Tool

      public Tool()
      Construct a new Tool.
  • Method Details

    • getGrammarFile

      public String getGrammarFile()
    • hasError

      public boolean hasError()
    • getNameSpace

      public NameSpace getNameSpace()
    • getNamespaceStd

      public String getNamespaceStd()
    • getNamespaceAntlr

      public String getNamespaceAntlr()
    • getGenHashLines

      public boolean getGenHashLines()
    • getLiteralsPrefix

      public String getLiteralsPrefix()
    • getUpperCaseMangledLiterals

      public boolean getUpperCaseMangledLiterals()
    • setFileLineFormatter

      public void setFileLineFormatter(FileLineFormatter formatter)
    • checkForInvalidArguments

      protected void checkForInvalidArguments(String[] args, BitSet cmdLineArgValid)
    • copyFile

      public void copyFile(String source_name, String dest_name) throws IOException
      This example is from the book _Java in a Nutshell_ by David Flanagan. Written by David Flanagan. Copyright (c) 1996 O'Reilly invalid input: '&' Associates. You may study, use, modify, and distribute this example for any purpose. This example is provided WITHOUT WARRANTY either expressed or implied.
      Throws:
      IOException
    • doEverythingWrapper

      public void doEverythingWrapper(String[] args)
      Perform processing on the grammar file. Can only be called from main() @param args The command-line arguments passed to main(). This wrapper does the System.exit for use with command-line.
    • doEverything

      public int doEverything(String[] args)
      Process args and have ANTLR do it's stuff without calling System.exit. Just return the result code. Makes it easy for ANT build tool.
    • error

      public void error(String s)
      Issue an error
      Parameters:
      s - The message
    • error

      public void error(String s, String file, int line, int column)
      Issue an error with line number information
      Parameters:
      s - The message
      file - 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)
    • fileMinusPath

      public String fileMinusPath(String f)
    • getLanguage

      public String getLanguage(MakeGrammar behavior)
      Determine the language used for this run of ANTLR This was made a method so the subclass can override it
    • getOutputDirectory

      public String getOutputDirectory()
    • main

      public static void main(String[] args)
    • openOutputFile

      public PrintWriter openOutputFile(String f) throws IOException
      This method is used by all code generators to create new output files. If the outputDir set by -o is not present it will be created here.
      Throws:
      IOException
    • getGrammarReader

      public Reader getGrammarReader()
    • reportException

      public void reportException(Exception e, String message)
      Since:
      2.7.2
    • reportProgress

      public void reportProgress(String message)
      Since:
      2.7.2
    • fatalError

      public void fatalError(String message)
      An error occured that should stop the Tool from doing any work. The default implementation currently exits (via
      invalid @link
      {@link 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.
      Parameters:
      s - The message
      Since:
      2.7.2
    • panic

      public void panic()
      Deprecated.
      as of 2.7.2 use fatalError(String). By default this method executes fatalError("panic");.
      Issue an unknown fatal error. If this method is overriden, it must never return normally; i.e. it must always throw an exception or call System.exit.
    • panic

      public void panic(String s)
      Deprecated.
      as of 2.7.2 use fatalError(String). By defaykt this method executes fatalError("panic: " + s);.
      Issue a fatal error message. If this method is overriden, it must never return normally; i.e. it must always throw an exception or call System.exit.
      Parameters:
      s - The message
    • parent

      public File parent(File f)
    • parseSeparatedList

      public static Vector parseSeparatedList(String list, char separator)
      Parse a list such as "f1.g;f2.g;..." and return a Vector of the elements.
    • pathToFile

      public String pathToFile(String f)
      given a filename, strip off the directory prefix (if any) and return it. Return "./" if f has no dir prefix.
    • processArguments

      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.

      Parameters:
      args - The command-line arguments passed to main()
    • setArgOK

      public void setArgOK(int i)
    • setOutputDirectory

      public void setOutputDirectory(String o)
    • toolError

      public void toolError(String s)
      Issue an error; used for general tool errors not for grammar stuff
      Parameters:
      s - The message
    • warning

      public void warning(String s)
      Issue a warning
      Parameters:
      s - the message
    • warning

      public void warning(String s, String file, int line, int column)
      Issue a warning with line number information
      Parameters:
      s - The message
      file - 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)
    • warning

      public void warning(String[] s, String file, int line, int column)
      Issue a warning with line number information
      Parameters:
      s - The lines of the message
      file - The file that has the warning
      line - The grammar file line number on which the warning occured
    • setNameSpace

      public void setNameSpace(String name)
      Support C++ invalid input: '&' C# namespaces (for now). C++: Add a nested namespace name to the current namespace. C# : Specify an enclosing namespace for the generated code. DAW: David Wagner -- C# support by kunle odutola