slang::ast::HierarchyOverrideNode struct

A node in a tree representing an instance in the design hierarchy where parameters should be overriden and/or bind directives should be applied.

These are assembled from defparam values, bind directives, and command-line specified overrides.

Public variables

flat_hash_map<const syntax::SyntaxNode*, std::pair<ConstantValue, const syntax::SyntaxNode*>> overrides
A map of parameters in the current scope to override.
flat_hash_map<InstancePath::Entry, HierarchyOverrideNode> childNodes
A map of child scopes that also contain overrides.
std::vector<const syntax::BindDirectiveSyntax*> binds
A list of bind directives to apply in this scope.

Variable documentation

flat_hash_map<const syntax::SyntaxNode*, std::pair<ConstantValue, const syntax::SyntaxNode*>> slang::ast::HierarchyOverrideNode::overrides

A map of parameters in the current scope to override.

The key is the syntax node representing the parameter and the value is a pair, the first element of which is the value to set the parameter to and the second is the source defparam doing the overriding, if any (can be null).