## com.puppycrawl.tools.checkstyle.checks.indentation
Class SlistHandler

    java.lang.Object
      com.puppycrawl.tools.checkstyle.checks.indentation.ExpressionHandler
          com.puppycrawl.tools.checkstyle.checks.indentation.BlockParentHandler
              com.puppycrawl.tools.checkstyle.checks.indentation.SlistHandler

public class SlistHandler
extends BlockParentHandler

Handler for a list of statements.

Author:
  jrichard

Constructor Summary
`SlistHandler(IndentationCheck aIndentCheck, DetailAST aAst, ExpressionHandler aParent)` Construct an instance of this handler with the given indentation check, abstract syntax tree, and parent handler.

Method Summary
`void` `checkIndentation()` Check the indentation of the expression we are handling.
`protected DetailAST` `getLCurly()` Get the left curly brace portion of the expression we are handling.
`protected DetailAST` `getListChild()` Get the child element representing the list of statements.
`protected DetailAST` `getNonlistChild()` Get the child element that is not a list of statements.
`protected DetailAST` `getRCurly()` Get the right curly brace portion of the expression we are handling.
`protected DetailAST` `getToplevelAST()` There is no top level expression for this handler.
`IndentLevel` `suggestedChildLevel(ExpressionHandler aChild)` Indentation level suggested for a child element.

Methods inherited from class com.puppycrawl.tools.checkstyle.checks.indentation.BlockParentHandler
`checkLCurly, checkLParen, checkRCurly, checkRParen, checkToplevelToken, childrenMayNest, getChildrenExpectedLevel, getLParen, getRParen, hasCurlys, rcurlyMustStart, toplevelMustStartLine`

Methods inherited from class com.puppycrawl.tools.checkstyle.checks.indentation.ExpressionHandler
`checkChildren, checkExpressionSubtree, checkLinesIndent, checkModifiers, expandedTabsColumnNo, findSubtreeLines, getBasicOffset, getBraceAdjustement, getFirstLine, getIndentCheck, getLevel, getLevelImpl, getLineStart, getLineStart, getMainAst, getParent, logError, logError, shouldIncreaseIndent, startsLine`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### SlistHandler

    public SlistHandler(IndentationCheck aIndentCheck,
                        DetailAST aAst,
                        ExpressionHandler aParent)

  Construct an instance of this handler with the given indentation check, abstract syntax tree, and parent handler.

Parameters:
  `aIndentCheck` - the indentation check
  `aAst` - the abstract syntax tree
  `aParent` - the parent handler

Method Detail

### suggestedChildLevel

    public IndentLevel suggestedChildLevel(ExpressionHandler aChild)

  Indentation level suggested for a child element. Children don't have to respect this, but most do.

  Overrides:
    `suggestedChildLevel` in class `ExpressionHandler`
  Parameters:
    `aChild` - child AST (so suggestion level can differ based on child type)
  Returns:
    suggested indentation for child

### getNonlistChild

    protected DetailAST getNonlistChild()

  Get the child element that is not a list of statements.

  Overrides:
    `getNonlistChild` in class `BlockParentHandler`
  Returns:
    the non-list child element

### getListChild

    protected DetailAST getListChild()

  Get the child element representing the list of statements.

  Overrides:
    `getListChild` in class `BlockParentHandler`
  Returns:
    the statement list child

### getLCurly

    protected DetailAST getLCurly()

  Get the left curly brace portion of the expression we are handling.

  Overrides:
    `getLCurly` in class `BlockParentHandler`
  Returns:
    the left curly brace expression

### getRCurly

    protected DetailAST getRCurly()

  Get the right curly brace portion of the expression we are handling.

  Overrides:
    `getRCurly` in class `BlockParentHandler`
  Returns:
    the right curly brace expression

### getToplevelAST

    protected DetailAST getToplevelAST()

  There is no top level expression for this handler.

  Overrides:
    `getToplevelAST` in class `BlockParentHandler`
  Returns:
    null

### checkIndentation

    public void checkIndentation()

  Check the indentation of the expression we are handling.

  Overrides:
    `checkIndentation` in class `BlockParentHandler`

Back to the Checkstyle Home Page