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 classBlockStatement.NullBlockStatementprivate static classBlockStatement.PatternPlaceholder
-
Field Summary
Fields Modifier and Type Field Description static BlockStatementNULLstatic 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)voidadd(Expression expression)voidadd(Statement statement)static BlockStatementforPattern(Pattern pattern)JavaTokenNodegetLeftBraceToken()JavaTokenNodegetRightBraceToken()AstNodeCollection<Statement>getStatements()java.util.Iterator<Statement>iterator()booleanmatches(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:
acceptVisitorin classAstNode
-
iterator
public final java.util.Iterator<Statement> iterator()
- Specified by:
iteratorin interfacejava.lang.Iterable<Statement>
-
forPattern
public static BlockStatement forPattern(Pattern pattern)
-
-