Package com.puppycrawl.tools.checkstyle
Class DetailNodeTreeStringPrinter
- java.lang.Object
-
- com.puppycrawl.tools.checkstyle.DetailNodeTreeStringPrinter
-
public final class DetailNodeTreeStringPrinter extends Object
Parses file as javadoc DetailNode tree and prints to system output stream.
-
-
Field Summary
Fields Modifier and Type Field Description private static String
LINE_SEPARATOR
OS specific line separator.
-
Constructor Summary
Constructors Modifier Constructor Description private
DetailNodeTreeStringPrinter()
Prevent instances.
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description private static String
getIndentation(DetailNode node)
Get indentation for a node.private static String
getParseErrorMessage(JavadocDetailNodeParser.ParseErrorMessage parseErrorMessage)
Builds violation base on ParseErrorMessage's violation key, its arguments, etc.private static DetailNode
parseFile(File file)
Parse a file and return the parse tree.static DetailNode
parseJavadocAsDetailNode(DetailAST blockComment)
Parse block comment DetailAST as Javadoc DetailNode tree.private static DetailNode
parseJavadocAsDetailNode(String javadocComment)
Parse javadoc comment to DetailNode tree.static String
printFileAst(File file)
Parse a file and print the parse tree.static String
printTree(DetailNode ast, String rootPrefix, String prefix)
Print AST.
-
-
-
Field Detail
-
LINE_SEPARATOR
private static final String LINE_SEPARATOR
OS specific line separator.
-
-
Constructor Detail
-
DetailNodeTreeStringPrinter
private DetailNodeTreeStringPrinter()
Prevent instances.
-
-
Method Detail
-
printFileAst
public static String printFileAst(File file) throws IOException
Parse a file and print the parse tree.- Parameters:
file
- the file to print.- Returns:
- parse tree as a string
- Throws:
IOException
- if the file could not be read.
-
parseJavadocAsDetailNode
public static DetailNode parseJavadocAsDetailNode(DetailAST blockComment)
Parse block comment DetailAST as Javadoc DetailNode tree.- Parameters:
blockComment
- DetailAST- Returns:
- DetailNode tree
- Throws:
IllegalArgumentException
- if there is an error parsing the Javadoc.
-
parseJavadocAsDetailNode
private static DetailNode parseJavadocAsDetailNode(String javadocComment)
Parse javadoc comment to DetailNode tree.- Parameters:
javadocComment
- javadoc comment content- Returns:
- tree
-
getParseErrorMessage
private static String getParseErrorMessage(JavadocDetailNodeParser.ParseErrorMessage parseErrorMessage)
Builds violation base on ParseErrorMessage's violation key, its arguments, etc.- Parameters:
parseErrorMessage
- ParseErrorMessage- Returns:
- error violation
-
printTree
public static String printTree(DetailNode ast, String rootPrefix, String prefix)
Print AST.- Parameters:
ast
- the root AST node.rootPrefix
- prefix for the root nodeprefix
- prefix for other nodes- Returns:
- string AST.
-
getIndentation
private static String getIndentation(DetailNode node)
Get indentation for a node.- Parameters:
node
- the DetailNode to get the indentation for.- Returns:
- the indentation in String format.
-
parseFile
private static DetailNode parseFile(File file) throws IOException
Parse a file and return the parse tree.- Parameters:
file
- the file to parse.- Returns:
- the root node of the parse tree.
- Throws:
IOException
- if the file could not be read.
-
-