use of com.puppycrawl.tools.checkstyle.api.DetailAST in project checkstyle by checkstyle.
the class PackageDefHandler method checkIndentation.
@Override
public void checkIndentation() {
final int columnNo = expandedTabsColumnNo(getMainAst());
if (!getIndent().isAcceptable(columnNo) && isOnStartOfLine(getMainAst())) {
logError(getMainAst(), "", columnNo);
}
final DetailAST semi = getMainAst().findFirstToken(TokenTypes.SEMI);
checkWrappingIndentation(getMainAst(), semi);
}
use of com.puppycrawl.tools.checkstyle.api.DetailAST in project checkstyle by checkstyle.
the class SynchronizedHandler method checkSynchronizedExpr.
/**
* Check indentation of expression we synchronized on.
*/
private void checkSynchronizedExpr() {
final DetailAST syncAst = getMainAst().findFirstToken(TokenTypes.LPAREN).getNextSibling();
final IndentLevel expected = new IndentLevel(getIndent(), getBasicOffset());
checkExpressionSubtree(syncAst, expected, false, false);
}
use of com.puppycrawl.tools.checkstyle.api.DetailAST in project checkstyle by checkstyle.
the class WhileHandler method checkCondExpr.
/**
* Check the indentation of the conditional expression.
*/
private void checkCondExpr() {
final DetailAST condAst = getMainAst().findFirstToken(TokenTypes.EXPR);
final IndentLevel expected = new IndentLevel(getIndent(), getBasicOffset());
checkExpressionSubtree(condAst, expected, false, false);
}
use of com.puppycrawl.tools.checkstyle.api.DetailAST in project checkstyle by checkstyle.
the class JavadocMethodCheck method hasAllowedAnnotations.
/**
* Some javadoc.
* @param methodDef Some javadoc.
* @return Some javadoc.
*/
private boolean hasAllowedAnnotations(DetailAST methodDef) {
final DetailAST modifiersNode = methodDef.findFirstToken(TokenTypes.MODIFIERS);
DetailAST annotationNode = modifiersNode.findFirstToken(TokenTypes.ANNOTATION);
while (annotationNode != null && annotationNode.getType() == TokenTypes.ANNOTATION) {
DetailAST identNode = annotationNode.findFirstToken(TokenTypes.IDENT);
if (identNode == null) {
identNode = annotationNode.findFirstToken(TokenTypes.DOT).findFirstToken(TokenTypes.IDENT);
}
if (allowedAnnotations.contains(identNode.getText())) {
return true;
}
annotationNode = annotationNode.getNextSibling();
}
return false;
}
use of com.puppycrawl.tools.checkstyle.api.DetailAST in project checkstyle by checkstyle.
the class JavadocMethodCheck method calculateScope.
/**
* Returns the scope for the method/constructor at the specified AST. If
* the method is in an interface or annotation block, the scope is assumed
* to be public.
*
* @param ast the token of the method/constructor
* @return the scope of the method/constructor
*/
private static Scope calculateScope(final DetailAST ast) {
final DetailAST mods = ast.findFirstToken(TokenTypes.MODIFIERS);
final Scope declaredScope = ScopeUtils.getScopeFromMods(mods);
if (ScopeUtils.isInInterfaceOrAnnotationBlock(ast)) {
return Scope.PUBLIC;
} else {
return declaredScope;
}
}
Aggregations