|
Eclipse JDT Release 3.0 |
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||
java.lang.Objectorg.eclipse.jdt.core.ToolFactory
Factory for creating various compiler tools, such as scanners, parsers and compilers.
This class provides static methods only; it is not intended to be instantiated or subclassed by clients.
| Constructor Summary | |
ToolFactory()
|
|
| Method Summary | |
static ICodeFormatter |
createCodeFormatter()
Deprecated. - should use #createCodeFormatter(Map) instead. Extension point is discontinued |
static CodeFormatter |
createCodeFormatter(Map options)
Create an instance of the built-in code formatter. |
static ClassFileBytesDisassembler |
createDefaultClassFileBytesDisassembler()
Create a classfile bytecode disassembler, able to produce a String representation of a given classfile. |
static IClassFileDisassembler |
createDefaultClassFileDisassembler()
Deprecated. - should use factory method creating ClassFileBytesDisassembler instead |
static IClassFileReader |
createDefaultClassFileReader(IClassFile classfile,
int decodingFlag)
Create a classfile reader onto a classfile Java element. |
static IClassFileReader |
createDefaultClassFileReader(String fileName,
int decodingFlag)
Create a default classfile reader, able to expose the internal representation of a given classfile according to the decoding flag used to initialize the reader. |
static IClassFileReader |
createDefaultClassFileReader(String zipFileName,
String zipEntryName,
int decodingFlag)
Create a default classfile reader, able to expose the internal representation of a given classfile according to the decoding flag used to initialize the reader. |
static ICodeFormatter |
createDefaultCodeFormatter(Map options)
Deprecated. - use #createCodeFormatter(Map) instead |
static IScanner |
createScanner(boolean tokenizeComments,
boolean tokenizeWhiteSpace,
boolean assertMode,
boolean recordLineSeparator)
Create a scanner, indicating the level of detail requested for tokenizing. |
static IScanner |
createScanner(boolean tokenizeComments,
boolean tokenizeWhiteSpace,
boolean recordLineSeparator,
String sourceLevel)
Create a scanner, indicating the level of detail requested for tokenizing. |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
public ToolFactory()
| Method Detail |
public static ICodeFormatter createCodeFormatter()
ICodeFormatter,
createDefaultCodeFormatter(Map)public static CodeFormatter createCodeFormatter(Map options)
options - - the options map to use for formatting with the default code formatter. Recognized options
are documented on JavaCore#getDefaultOptions(). If set to null, then use
the current settings from JavaCore#getOptions.
CodeFormatter,
JavaCore.getOptions()public static ICodeFormatter createDefaultCodeFormatter(Map options)
options - - the options map to use for formatting with the default code formatter. Recognized options
are documented on JavaCore#getDefaultOptions(). If set to null, then use
the current settings from JavaCore#getOptions.
ICodeFormatter,
createCodeFormatter(),
JavaCore.getOptions()public static IClassFileDisassembler createDefaultClassFileDisassembler()
IClassFileDisassemblerpublic static ClassFileBytesDisassembler createDefaultClassFileBytesDisassembler()
ClassFileBytesDisassembler
public static IClassFileReader createDefaultClassFileReader(String fileName,
int decodingFlag)
fileName - the name of the file to be readdecodingFlag - the flag used to decode the class file reader.
IClassFileReader
public static IClassFileReader createDefaultClassFileReader(IClassFile classfile,
int decodingFlag)
classfile - the classfile element to introspectdecodingFlag - the flag used to decode the class file reader.
IClassFileReader
public static IClassFileReader createDefaultClassFileReader(String zipFileName,
String zipEntryName,
int decodingFlag)
zipFileName - the name of the zip filezipEntryName - the name of the entry in the zip file to be readdecodingFlag - the flag used to decode the class file reader.
IClassFileReader
public static IScanner createScanner(boolean tokenizeComments,
boolean tokenizeWhiteSpace,
boolean assertMode,
boolean recordLineSeparator)
IScanner scanner = ToolFactory.createScanner(false, false, false, false);
scanner.setSource("int i = 0;".toCharArray());
while (true) {
int token = scanner.getNextToken();
if (token == ITerminalSymbols.TokenNameEOF) break;
System.out.println(token + " : " + new String(scanner.getCurrentTokenSource()));
}
The returned scanner will tolerate unterminated line comments (missing line separator). It can be made stricter
by using API with extra boolean parameter (strictCommentMode).
tokenizeComments - if set to false, comments will be silently consumedtokenizeWhiteSpace - if set to false, white spaces will be silently consumed,assertMode - if set to false, occurrences of 'assert' will be reported as identifiers
(ITerminalSymbols#TokenNameIdentifier), whereas if set to true, it
would report assert keywords (ITerminalSymbols#TokenNameassert). Java 1.4 has introduced
a new 'assert' keyword.recordLineSeparator - if set to true, the scanner will record positions of encountered line
separator ends. In case of multi-character line separators, the last character position is considered. These positions
can then be extracted using IScanner#getLineEnds. Only non-unicode escape sequences are
considered as valid line separators.
IScanner
public static IScanner createScanner(boolean tokenizeComments,
boolean tokenizeWhiteSpace,
boolean recordLineSeparator,
String sourceLevel)
IScanner scanner = ToolFactory.createScanner(false, false, false, false);
scanner.setSource("int i = 0;".toCharArray());
while (true) {
int token = scanner.getNextToken();
if (token == ITerminalSymbols.TokenNameEOF) break;
System.out.println(token + " : " + new String(scanner.getCurrentTokenSource()));
}
The returned scanner will tolerate unterminated line comments (missing line separator). It can be made stricter
by using API with extra boolean parameter (strictCommentMode).
tokenizeComments - if set to false, comments will be silently consumedtokenizeWhiteSpace - if set to false, white spaces will be silently consumed,recordLineSeparator - if set to true, the scanner will record positions of encountered line
separator ends. In case of multi-character line separators, the last character position is considered. These positions
can then be extracted using IScanner#getLineEnds. Only non-unicode escape sequences are
considered as valid line separators.sourceLevel - if set to "1.3" or null, occurrences of 'assert' will be reported as identifiers
(ITerminalSymbols#TokenNameIdentifier), whereas if set to "1.4", it
would report assert keywords (ITerminalSymbols#TokenNameassert). Java 1.4 has introduced
a new 'assert' keyword.
IScanner
|
Eclipse JDT Release 3.0 |
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||