Parser xref

View Javadoc
1 /**
2  * BSD-style license; for more info see http://pmd.sourceforge.net/license.html 
3  */
4 package net.sourceforge.pmd.lang;
5 
6 import java.io.Reader;
7 import java.util.Map;
8 
9 import net.sourceforge.pmd.lang.ast.Node;
10 import net.sourceforge.pmd.lang.ast.ParseException;
11 
12 /**
13  * Common interface for calling tree-building parsers or source files.
14  *
15  * @author Pieter_Van_Raemdonck - Application Engineers NV/SA - www.ae.be
16  */
17 public interface Parser {
18 /**
19  * Get the ParserOptions used by this Parser.
20  */
21 ParserOptions getParserOptions();
22 
23 /**
24  * Get a TokenManager for the given source.
25  * @param fileName The file name being parsed (may be <code>null</code>).
26  * @param source Reader that provides the source code to tokenize.
27  * @return A TokenManager for reading token.
28  */
29 TokenManager getTokenManager(String fileName, Reader source);
30 
31 /**
32  * Indicates if this parser can actual parse, or if it can only tokenize.
33  */
34 boolean canParse();
35 
36 /**
37  * Parse source code and return the root node of the AST.
38  *
39  * @param fileName The file name being parsed (may be <code>null</code>).
40  * @param source Reader that provides the source code of a compilation unit
41  * @return the root node of the AST that is built from the source code
42  * @throws ParseException In case the source code could not be parsed, probably
43  * due to syntactical errors.
44  */
45 Node parse(String fileName, Reader source) throws ParseException;
46 
47 // TODO Document
48 Map<Integer, String> getSuppressMap();
49 }

AltStyle によって変換されたページ (->オリジナル) /