Class BlockStatement
- java.lang.Object
-
- com.strobel.core.Freezable
-
- com.strobel.decompiler.languages.java.ast.AstNode
-
- com.strobel.decompiler.languages.java.ast.Statement
-
- com.strobel.decompiler.languages.java.ast.BlockStatement
-
- All Implemented Interfaces:
UserDataStore
,IFreezable
,INode
,java.lang.Cloneable
,java.lang.Iterable<Statement>
- Direct Known Subclasses:
BlockStatement.NullBlockStatement
,BlockStatement.PatternPlaceholder
public class BlockStatement extends Statement implements java.lang.Iterable<Statement>
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static class
BlockStatement.NullBlockStatement
private static class
BlockStatement.PatternPlaceholder
-
Field Summary
Fields Modifier and Type Field Description static BlockStatement
NULL
static Role<Statement>
STATEMENT_ROLE
-
Fields inherited from class com.strobel.decompiler.languages.java.ast.AstNode
AST_NODE_USED_FLAGS, flags, FROZEN_BIT, ROLE_INDEX_MASK, ROOT_ROLE
-
Fields inherited from interface com.strobel.decompiler.patterns.INode
CHILD_ITERATOR
-
-
Constructor Summary
Constructors Constructor Description BlockStatement()
BlockStatement(Statement... statements)
BlockStatement(java.lang.Iterable<Statement> statements)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description <T,R>
RacceptVisitor(IAstVisitor<? super T,? extends R> visitor, T data)
void
add(Expression expression)
void
add(Statement statement)
static BlockStatement
forPattern(Pattern pattern)
JavaTokenNode
getLeftBraceToken()
JavaTokenNode
getRightBraceToken()
AstNodeCollection<Statement>
getStatements()
java.util.Iterator<Statement>
iterator()
boolean
matches(INode other, Match match)
-
Methods inherited from class com.strobel.decompiler.languages.java.ast.Statement
clone, getNextStatement, getNodeType, getOffset, getPreviousStatement, getRole, isEmbeddable
-
Methods inherited from class com.strobel.decompiler.languages.java.ast.AstNode
addChild, addChildUnsafe, contains, contains, copyUserDataFrom, debugToString, freezeCore, getAncestors, getAncestors, getAncestorsAndSelf, getChildByRole, getChildren, getChildrenByRole, getDescendants, getDescendantsAndSelf, getEndLocation, getFirstChild, getLastChild, getNextNode, getNextSibling, getNextSibling, getParent, getParent, getPreviousNode, getPreviousSibling, getPreviousSibling, getRegion, getStartLocation, getText, getText, getUserData, hasChildren, insertChildAfter, insertChildBefore, insertChildBeforeUnsafe, insertChildrenAfter, insertChildrenBefore, isAncestorOf, isAncestorOf, isDescendantOf, isInside, isInside, isLoop, isNull, isReference, isUnconditionalBranch, makeOptional, match, matches, matchesCollection, matchString, putUserData, putUserDataIfAbsent, remove, replace, replaceWith, replaceWith, setChildByRole, setRole, setRoleUnsafe, toString, withName
-
Methods inherited from class com.strobel.core.Freezable
canFreeze, freeze, freezeIfUnfrozen, isFrozen, tryFreeze, verifyFrozen, verifyNotFrozen
-
-
-
-
Field Detail
-
NULL
public static final BlockStatement NULL
-
-
Method Detail
-
getLeftBraceToken
public final JavaTokenNode getLeftBraceToken()
-
getStatements
public final AstNodeCollection<Statement> getStatements()
-
getRightBraceToken
public final JavaTokenNode getRightBraceToken()
-
add
public final void add(Statement statement)
-
add
public final void add(Expression expression)
-
acceptVisitor
public <T,R> R acceptVisitor(IAstVisitor<? super T,? extends R> visitor, T data)
- Specified by:
acceptVisitor
in classAstNode
-
iterator
public final java.util.Iterator<Statement> iterator()
- Specified by:
iterator
in interfacejava.lang.Iterable<Statement>
-
forPattern
public static BlockStatement forPattern(Pattern pattern)
-
-