MCPcopy Create free account
hub / github.com/chipsalliance/Surelog / addNestedDesignElement

Method addNestedDesignElement

src/SourceCompile/SV3_1aTreeShapeHelper.cpp:127–147  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

125}
126
127void SV3_1aTreeShapeHelper::addNestedDesignElement(
128 antlr4::ParserRuleContext* ctx, std::string_view name,
129 DesignElement::ElemType elemtype, VObjectType objtype) {
130 auto [fileId, line, column, endLine, endColumn] = getFileLine(ctx, nullptr);
131 const std::string design_element =
132 StrCat(m_pf->getLibrary()->getName(), "@", name);
133 DesignElement* elem = new DesignElement(
134 registerSymbol(name), fileId, elemtype, generateDesignElemId(), line,
135 column, endLine, endColumn, InvalidNodeId);
136 elem->m_context = ctx;
137 elem->m_timeInfo = m_pf->getCompilationUnit()->getTimeInfo(fileId, line);
138 elem->m_defaultNetType =
139 m_pf->getCompilationUnit()->getDefaultNetType(fileId, line);
140 if (!m_nestedElements.empty()) {
141 elem->m_timeInfo = m_nestedElements.top()->m_timeInfo;
142 elem->m_parent = m_nestedElements.top()->m_uniqueId;
143 }
144 m_fileContent->addDesignElement(design_element, elem);
145 m_currentElement = m_fileContent->getDesignElements().back();
146 m_nestedElements.push(m_currentElement);
147}
148
149void SV3_1aTreeShapeHelper::addDesignElement(antlr4::ParserRuleContext* ctx,
150 std::string_view name,

Callers

nothing calls this directly

Calls 6

StrCatFunction · 0.85
getDefaultNetTypeMethod · 0.80
getNameMethod · 0.45
getLibraryMethod · 0.45
getCompilationUnitMethod · 0.45
addDesignElementMethod · 0.45

Tested by

no test coverage detected