CXTranslationUnit TranslationUnit::cxTranslationUnitWithoutReparsing() const
{
    checkIfNull();
    checkIfFileExists();
    removeTranslationUnitIfProjectPartWasChanged();
    createTranslationUnitIfNeeded();

    return d->translationUnit;
}
CXTranslationUnit TranslationUnit::cxTranslationUnit() const
{
    checkIfNull();
    removeTranslationUnitIfProjectPartWasChanged();
    createTranslationUnitIfNeeded();
    reparseTranslationUnitIfFilesAreChanged();

    return d->translationUnit;
}
void TranslationUnitUpdater::recreateAndParseIfNeeded()
{
    removeTranslationUnitIfProjectPartWasChanged();
    createTranslationUnitIfNeeded();
}