| 626 | } |
| 627 | |
| 628 | void TopDUContext::setParsingEnvironmentFile(ParsingEnvironmentFile* file) |
| 629 | { |
| 630 | if (m_local->m_file) //Clear the "feature satisfaction" cache |
| 631 | m_local->m_file->setFeatures(Empty); |
| 632 | |
| 633 | //We do not enforce a duchain lock here, since this is also used while loading a top-context |
| 634 | m_local->m_file = QExplicitlySharedDataPointer<ParsingEnvironmentFile>(file); |
| 635 | |
| 636 | //Replicate features to ParsingEnvironmentFile |
| 637 | if (file) { |
| 638 | file->setTopContext(IndexedTopDUContext(ownIndex())); |
| 639 | Q_ASSERT(file->indexedTopContext().isValid()); |
| 640 | file->setFeatures(d_func()->m_features); |
| 641 | |
| 642 | file->setImportsCache(d_func()->m_importsCache); |
| 643 | } |
| 644 | } |
| 645 | |
| 646 | struct TopDUContext::FindDeclarationsAcceptor |
| 647 | { |
no test coverage detected