MCPcopy Create free account
hub / github.com/KDE/kdevelop / createUse

Method createUse

kdevplatform/language/duchain/ducontext.cpp:1333–1357  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1331}
1332
1333int DUContext::createUse(int declarationIndex, const RangeInRevision& range, int insertBefore)
1334{
1335 DUCHAIN_D_DYNAMIC(DUContext);
1336 ENSURE_CAN_WRITE
1337
1338 Use use(range, declarationIndex);
1339 if (insertBefore == -1) {
1340 //Find position where to insert
1341 const unsigned int size = d->m_usesSize();
1342 const Use* uses = d->m_uses();
1343 const Use* lowerBound = std::lower_bound(uses, uses + size, use, usesRangeLessThan);
1344 insertBefore = lowerBound - uses;
1345 // comment out to test this:
1346 /*
1347 unsigned int a = 0;
1348 for(; a < size && range.start > uses[a].m_range.start; ++a) {
1349 }
1350 Q_ASSERT(a == insertBefore);
1351 */
1352 }
1353
1354 d->m_usesList().insert(insertBefore, use);
1355
1356 return insertBefore;
1357}
1358
1359void DUContext::changeUseRange(int useIndex, const RangeInRevision& range)
1360{

Callers 3

closeContextMethod · 0.80
VisitorMethod · 0.80
newUseMethod · 0.80

Calls 1

insertMethod · 0.45

Tested by

no test coverage detected