Package ru.ispras.verilog.parser.sva
Class SvaAssertionStatement
- 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.sva.SvaAssertionStatement
-
public final class SvaAssertionStatement extends VerilogStatement
SvaAssertionStatement
represents the SystemVerilog Assertion statement.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
SvaAssertionStatement.AssertionKind
Assertion kinds.static class
SvaAssertionStatement.StatementType
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
-
Fields inherited from class ru.ispras.verilog.parser.model.VerilogStatement
TAGS
-
-
Constructor Summary
Constructors Constructor Description SvaAssertionStatement(VerilogNode parent)
Creates a new assertion statement.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description VerilogStatement
clone()
Clones the symbol table.VerilogExpression
getExpression()
Returns the immediate assertion expression.SvaProperty
getProperty()
Returns the concurrent assertion property.boolean
isAssert()
Shows whether the statement is 'assert'.boolean
isAssume()
Shows whether the statement is 'assume'.boolean
isConcurrent()
Shows whether the assertion is concurrent.boolean
isImmediate()
Shows whether the assertion is immediate.boolean
isProcedural()
Shows whether the statement is located in the procedural code.void
setExpression(VerilogExpression expression)
Sets the immediate assertion expression.void
setKind(SvaAssertionStatement.AssertionKind kind)
Sets the assertion kind.void
setProcedural()
Makes the statement procedural.void
setProperty(SvaProperty property)
Sets the concurrent assertion property.void
setType(SvaAssertionStatement.StatementType type)
Sets the statement type.-
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_CHILDREN
public static final java.util.EnumSet<VerilogNode.Tag> TAGS_CHILDREN
-
-
Constructor Detail
-
SvaAssertionStatement
public SvaAssertionStatement(VerilogNode parent)
Creates a new assertion statement.- Parameters:
parent
- - the specified parent node.
-
-
Method Detail
-
clone
public VerilogStatement clone()
Description copied from class:AbstractSymbolTable
Clones the symbol table.- Specified by:
clone
in classVerilogStatement
- Returns:
- a copy of the symbol table.
-
setKind
public void setKind(SvaAssertionStatement.AssertionKind kind)
Sets the assertion kind.- Parameters:
kind
- - the specified assertion kind.
-
setType
public void setType(SvaAssertionStatement.StatementType type)
Sets the statement type.- Parameters:
type
- - the specified statement type.
-
setExpression
public void setExpression(VerilogExpression expression)
Sets the immediate assertion expression.- Parameters:
expression
- - the specifiedVerilogExpression
.
-
getExpression
public VerilogExpression getExpression()
Returns the immediate assertion expression.- Returns:
- the assertion expression.
-
setProperty
public void setProperty(SvaProperty property)
Sets the concurrent assertion property.- Parameters:
property
- - the specifiedSvaProperty
.
-
getProperty
public SvaProperty getProperty()
Returns the concurrent assertion property.- Returns:
- the assertion property.
-
isConcurrent
public boolean isConcurrent()
Shows whether the assertion is concurrent.- Returns:
true
if the assertion is concurrent,false
otherwise.
-
isImmediate
public boolean isImmediate()
Shows whether the assertion is immediate.- Returns:
true
if the assertion is immediate,false
otherwise.
-
isAssert
public boolean isAssert()
Shows whether the statement is 'assert'.- Returns:
true
if the statement is 'assert',false
otherwise.
-
isAssume
public boolean isAssume()
Shows whether the statement is 'assume'.- Returns:
true
if the statement is 'assume',false
otherwise.
-
isProcedural
public boolean isProcedural()
Shows whether the statement is located in the procedural code.- Returns:
true
if the statement is procedural,false
otherwise.
-
setProcedural
public void setProcedural()
Makes the statement procedural.
-
-