Class ScopeUtil
- java.lang.Object
-
- com.puppycrawl.tools.checkstyle.utils.ScopeUtil
-
public final class ScopeUtil extends java.lang.Object
Contains utility methods for working on scope.
-
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static Scope
getScopeFromMods(DetailAST aMods)
Returns the Scope specified by the modifier set.static Scope
getSurroundingScope(DetailAST node)
Returns the scope of the surrounding "block".static boolean
isClassFieldDef(DetailAST node)
Determines whether a node is a class field definition.static boolean
isInAnnotationBlock(DetailAST node)
Returns whether a node is directly contained within an annotation block.static boolean
isInClassBlock(DetailAST node)
Returns whether a node is directly contained within a class block.static boolean
isInCodeBlock(DetailAST node)
Returns whether the scope of a node is restricted to a code block.static boolean
isInEnumBlock(DetailAST node)
Returns whether a node is directly contained within an enum block.static boolean
isInInterfaceBlock(DetailAST node)
Returns whether a node is directly contained within an interface block.static boolean
isInInterfaceOrAnnotationBlock(DetailAST node)
Returns whether a node is directly contained within an interface or annotation block.static boolean
isInRecordBlock(DetailAST node)
Returns whether a node is directly contained within a record block.static boolean
isInScope(DetailAST ast, Scope scope)
Checks whether ast node is in a specific scope.static boolean
isLocalVariableDef(DetailAST node)
Determines whether a node is a local variable definition.static boolean
isOuterMostType(DetailAST node)
Returns whether a node is contained in the outer most type block.
-
-
-
Method Detail
-
getScopeFromMods
public static Scope getScopeFromMods(DetailAST aMods)
Returns the Scope specified by the modifier set.- Parameters:
aMods
- root node of a modifier set- Returns:
- a
Scope
value
-
getSurroundingScope
public static Scope getSurroundingScope(DetailAST node)
Returns the scope of the surrounding "block".- Parameters:
node
- the node to return the scope for- Returns:
- the Scope of the surrounding block
-
isInClassBlock
public static boolean isInClassBlock(DetailAST node)
Returns whether a node is directly contained within a class block.- Parameters:
node
- the node to check if directly contained within a class block.- Returns:
- a
boolean
value
-
isInRecordBlock
public static boolean isInRecordBlock(DetailAST node)
Returns whether a node is directly contained within a record block.- Parameters:
node
- the node to check if directly contained within a record block.- Returns:
- a
boolean
value
-
isInInterfaceBlock
public static boolean isInInterfaceBlock(DetailAST node)
Returns whether a node is directly contained within an interface block.- Parameters:
node
- the node to check if directly contained within an interface block.- Returns:
- a
boolean
value
-
isInAnnotationBlock
public static boolean isInAnnotationBlock(DetailAST node)
Returns whether a node is directly contained within an annotation block.- Parameters:
node
- the node to check if directly contained within an annotation block.- Returns:
- a
boolean
value
-
isInInterfaceOrAnnotationBlock
public static boolean isInInterfaceOrAnnotationBlock(DetailAST node)
Returns whether a node is directly contained within an interface or annotation block.- Parameters:
node
- the node to check if directly contained within an interface or annotation block.- Returns:
- a
boolean
value
-
isInEnumBlock
public static boolean isInEnumBlock(DetailAST node)
Returns whether a node is directly contained within an enum block.- Parameters:
node
- the node to check if directly contained within an enum block.- Returns:
- a
boolean
value
-
isInCodeBlock
public static boolean isInCodeBlock(DetailAST node)
Returns whether the scope of a node is restricted to a code block. A code block is a method or constructor body, an initializer block, or lambda body.- Parameters:
node
- the node to check- Returns:
- a
boolean
value
-
isOuterMostType
public static boolean isOuterMostType(DetailAST node)
Returns whether a node is contained in the outer most type block.- Parameters:
node
- the node to check- Returns:
- a
boolean
value
-
isLocalVariableDef
public static boolean isLocalVariableDef(DetailAST node)
Determines whether a node is a local variable definition. I.e. if it is declared in a code block, a for initializer, or a catch parameter.- Parameters:
node
- the node to check.- Returns:
- whether aAST is a local variable definition.
-
isClassFieldDef
public static boolean isClassFieldDef(DetailAST node)
Determines whether a node is a class field definition. I.e. if a variable is not declared in a code block, a for initializer, or a catch parameter.- Parameters:
node
- the node to check.- Returns:
- whether a node is a class field definition.
-
-