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