Package ru.ispras.verilog.parser.model
Class VerilogBlockStatement
- java.lang.Object
-
- ru.ispras.verilog.parser.core.AbstractSymbolTable<Tag>
-
- ru.ispras.verilog.parser.core.AbstractNode<VerilogNode.Tag>
-
- ru.ispras.verilog.parser.model.VerilogNode
-
- ru.ispras.verilog.parser.model.VerilogStatement
-
- ru.ispras.verilog.parser.model.VerilogBlockStatement
-
public final class VerilogBlockStatement extends VerilogStatement
VerilogBlockStatement
represents block statements.There are the following block types:
begin
(sequential block);fork
(parallel block).
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
VerilogBlockStatement.Type
VerilogBlockStatement.Type
contains the block statement types.-
Nested classes/interfaces inherited from class ru.ispras.verilog.parser.model.VerilogNode
VerilogNode.Tag
-
Nested classes/interfaces inherited from class ru.ispras.verilog.parser.core.AbstractNode
AbstractNode.NodeKind
-
-
Field Summary
Fields Modifier and Type Field Description static VerilogNode.Tag
TAG
static java.util.EnumSet<VerilogNode.Tag>
TAGS_CHILDREN
static java.util.EnumSet<VerilogNode.Tag>
TAGS_ELEMENTS
-
Fields inherited from class ru.ispras.verilog.parser.model.VerilogStatement
TAGS
-
-
Constructor Summary
Constructors Constructor Description VerilogBlockStatement(VerilogBlockStatement other, VerilogNode parent)
Creates a copy of the block statement.VerilogBlockStatement(VerilogNode parent)
Creates a block statement.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description VerilogBlockStatement
clone()
Clones the symbol table.VerilogBlockStatement.Type
getType()
Returns the type of the block statement (BEGIN
orFORK
).boolean
isBegin()
Checks whether the statementBEGIN
.boolean
isFork()
Checks whether the statementFORK
.void
setBegin()
Sets the type of the statement toBEGIN
.void
setFork()
Sets the type of the statement toFORK
.void
setType(VerilogBlockStatement.Type type)
Sets the type of the block statement.-
Methods inherited from class ru.ispras.verilog.parser.model.VerilogNode
getAttributes, getParentNode, isActivity, isAssertionStatement, isAssign, isAssignment, isAssignStatement, isAttribute, isBlockGenerate, isBlockStatement, isCaseGenerate, isCaseGenerateItem, isCaseStatement, isCaseStatementItem, isCode, isConnection, isDeclaration, isDelayedStatement, isDisableStatement, isGenerate, isIfGenerate, isIfGenerateBranch, isIfStatement, isIfStatementBranch, isInstantiation, isLoopGenerate, isLoopStatement, isModule, isNullStatement, isPathDeclaration, isPort, isPortConnection, isProcedure, isPropertyDeclaration, isPulseStyle, isSequenceDeclaration, isShowCancelled, isSpecify, isSvaPort, isTable, isTableEntry, isTaskStatement, isTriggerStatement, isWaitStatement, setAttributes, union
-
Methods inherited from class ru.ispras.verilog.parser.core.AbstractNode
add, find, getFullName, getName, getParent, getTag, hasName, hasScope, isTransparent, items, items, items, remove, replace, setName, setParent, setRedefinitionHandler, setTag, toString
-
Methods inherited from class ru.ispras.verilog.parser.core.AbstractSymbolTable
addAll, findAroundRecursively, findAroundRecursively, findRecursively, findRecursively, getUpperTable, items, items, setUpperTable
-
-
-
-
Field Detail
-
TAG
public static final VerilogNode.Tag TAG
-
TAGS_ELEMENTS
public static final java.util.EnumSet<VerilogNode.Tag> TAGS_ELEMENTS
-
TAGS_CHILDREN
public static final java.util.EnumSet<VerilogNode.Tag> TAGS_CHILDREN
-
-
Constructor Detail
-
VerilogBlockStatement
public VerilogBlockStatement(VerilogNode parent)
Creates a block statement.- Parameters:
parent
- the parent node.
-
VerilogBlockStatement
public VerilogBlockStatement(VerilogBlockStatement other, VerilogNode parent)
Creates a copy of the block statement.- Parameters:
other
- the block statement to be copied.parent
- the parent node.
-
-
Method Detail
-
getType
public VerilogBlockStatement.Type getType()
Returns the type of the block statement (BEGIN
orFORK
).- Returns:
- the type of the block statement.
-
setType
public void setType(VerilogBlockStatement.Type type)
Sets the type of the block statement.- Parameters:
type
- the type to be set.
-
isBegin
public boolean isBegin()
Checks whether the statementBEGIN
.- Returns:
true
iff the statement isBEGIN
.
-
isFork
public boolean isFork()
Checks whether the statementFORK
.- Returns:
true
iff the statement isFORK
.
-
setBegin
public void setBegin()
Sets the type of the statement toBEGIN
.
-
setFork
public void setFork()
Sets the type of the statement toFORK
.
-
clone
public VerilogBlockStatement clone()
Description copied from class:AbstractSymbolTable
Clones the symbol table.- Specified by:
clone
in classVerilogStatement
- Returns:
- a copy of the symbol table.
-
-