this.errorDescription = null; //the order is: parserChanged and only then parserError
ast = (SimpleNode) root;
astModificationTimeStamp = ((IDocumentExtension4) doc).getModificationStamp();
try {
IPythonNature pythonNature = this.getPythonNature();
if (pythonNature != null) {
ICodeCompletionASTManager astManager = pythonNature.getAstManager();
if (astManager != null) {
IModulesManager modulesManager = astManager.getModulesManager();
if (modulesManager != null) {
File editorFile = this.getEditorFile();
if (editorFile != null) {
String moduleName = pythonNature.resolveModule(editorFile);
if (moduleName != null) {
synchronized (lockHandle) {
releaseCurrentHandle();
int modHandle = modulesManager.pushTemporaryModule(moduleName, new SourceModule(
moduleName, editorFile, ast, null));