Class FileContents
- java.lang.Object
-
- com.puppycrawl.tools.checkstyle.api.FileContents
-
- All Implemented Interfaces:
CommentListener
public final class FileContents extends java.lang.Object implements CommentListener
Represents the contents of a file.
-
-
Constructor Summary
Constructors Constructor Description FileContents(FileText text)Creates a newFileContentsinstance.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.util.Map<java.lang.Integer,java.util.List<TextBlock>>getBlockComments()Returns a map of all block comments.java.lang.StringgetFileName()Gets the name of the file.TextBlockgetJavadocBefore(int lineNoBefore)Returns the Javadoc comment before the specified line.java.lang.StringgetLine(int index)Get the line from text of the file.java.lang.String[]getLines()Gets the lines in the file.java.util.Map<java.lang.Integer,TextBlock>getSingleLineComments()Returns a map of all the single line comments.FileTextgetText()Get the full text of the file.booleanhasIntersectionWithComment(int startLineNo, int startColNo, int endLineNo, int endColNo)Checks if the specified position intersects with a comment.booleaninPackageInfo()Checks if the current file is a package-info.java file.booleanlineIsBlank(int lineNo)Checks if the specified line is blank.booleanlineIsComment(int lineNo)Checks if the specified line is a single-line comment without code.voidreportBlockComment(int startLineNo, int startColNo, int endLineNo, int endColNo)Report the location of a block comment.voidreportBlockComment(java.lang.String type, int startLineNo, int startColNo, int endLineNo, int endColNo)Report the location of a block comment that can span multiple lines.voidreportSingleLineComment(int startLineNo, int startColNo)Report the location of a single line comment.voidreportSingleLineComment(java.lang.String type, int startLineNo, int startColNo)Report the location of a single line comment that extends from the given point to the end of the line.
-
-
-
Constructor Detail
-
FileContents
public FileContents(FileText text)
Creates a newFileContentsinstance.- Parameters:
text- the contents of the file
-
-
Method Detail
-
getText
public FileText getText()
Get the full text of the file.- Returns:
- an object containing the full text of the file
-
getLines
public java.lang.String[] getLines()
Gets the lines in the file.- Returns:
- the lines in the file
-
getLine
public java.lang.String getLine(int index)
Get the line from text of the file.- Parameters:
index- index of the line- Returns:
- line from text of the file
-
getFileName
public java.lang.String getFileName()
Gets the name of the file.- Returns:
- the name of the file
-
reportSingleLineComment
public void reportSingleLineComment(java.lang.String type, int startLineNo, int startColNo)Description copied from interface:CommentListenerReport the location of a single line comment that extends from the given point to the end of the line. The type of comment is identified by a String whose value depends on the language being parsed, but would typically be the delimiter for the comment.- Specified by:
reportSingleLineCommentin interfaceCommentListener- Parameters:
type- an identifier for what type of comment it is.startLineNo- the starting line numberstartColNo- the starting column number
-
reportSingleLineComment
public void reportSingleLineComment(int startLineNo, int startColNo)Report the location of a single line comment.- Parameters:
startLineNo- the starting line numberstartColNo- the starting column number
-
reportBlockComment
public void reportBlockComment(java.lang.String type, int startLineNo, int startColNo, int endLineNo, int endColNo)Description copied from interface:CommentListenerReport the location of a block comment that can span multiple lines. The type of comment is identified by a String whose value depends on the language being parsed, but would typically be the delimiter for the comment.- Specified by:
reportBlockCommentin interfaceCommentListener- Parameters:
type- an identifier for what type of comment it is.startLineNo- the starting line numberstartColNo- the starting column numberendLineNo- the ending line numberendColNo- the ending column number
-
reportBlockComment
public void reportBlockComment(int startLineNo, int startColNo, int endLineNo, int endColNo)Report the location of a block comment.- Parameters:
startLineNo- the starting line numberstartColNo- the starting column numberendLineNo- the ending line numberendColNo- the ending column number
-
getJavadocBefore
public TextBlock getJavadocBefore(int lineNoBefore)
Returns the Javadoc comment before the specified line. A return value ofnullmeans there is no such comment.- Parameters:
lineNoBefore- the line number to check before- Returns:
- the Javadoc comment, or
nullif none
-
lineIsBlank
public boolean lineIsBlank(int lineNo)
Checks if the specified line is blank.- Parameters:
lineNo- the line number to check- Returns:
- if the specified line consists only of tabs and spaces.
-
lineIsComment
public boolean lineIsComment(int lineNo)
Checks if the specified line is a single-line comment without code.- Parameters:
lineNo- the line number to check- Returns:
- if the specified line consists of only a single line comment without code.
-
hasIntersectionWithComment
public boolean hasIntersectionWithComment(int startLineNo, int startColNo, int endLineNo, int endColNo)Checks if the specified position intersects with a comment.- Parameters:
startLineNo- the starting line numberstartColNo- the starting column numberendLineNo- the ending line numberendColNo- the ending column number- Returns:
- true if the positions intersects with a comment.
-
getSingleLineComments
public java.util.Map<java.lang.Integer,TextBlock> getSingleLineComments()
Returns a map of all the single line comments. The key is a line number, the value is the commentTextBlockat the line.- Returns:
- the Map of comments
-
getBlockComments
public java.util.Map<java.lang.Integer,java.util.List<TextBlock>> getBlockComments()
Returns a map of all block comments. The key is the line number, the value is aListof block commentTextBlocks that start at that line.- Returns:
- the map of comments
-
inPackageInfo
public boolean inPackageInfo()
Checks if the current file is a package-info.java file.- Returns:
- true if the package file.
-
-