itom  4.1.0
ito::PythonJediRunner Class Reference

< Thread-safe helper class for PythonEngine to manage calls to the Python Jedi package. More...

#include <pythonJediRunner.h>

Inheritance diagram for ito::PythonJediRunner:

Public Member Functions

 PythonJediRunner (const QString &includeItomImportString)
 
 ~PythonJediRunner ()
 Tries to import itomJediLib (and the jedi package) and returns true if successful, else false.
 
bool tryToLoadJediIfNotYetDone ()
 
void setIncludeItomImportBeforeCodeAnalysis (bool include)
 Adds a new calltip request. Thread-safe.
 
void addCalltipRequest (const JediCalltipRequest &request)
 Adds a new completion request. Thread-safe.
 
void addCompletionRequest (const JediCompletionRequest &request)
 Adds a new goto assignment / definition request. Thread-safe.
 
void addGoToAssignmentRequest (const JediAssignmentRequest &request)
 Adds a new get-help request. Thread-safe.
 
void addGetHelpRequest (const JediGetHelpRequest &request)
 

Private Member Functions

QString additionalImportString () const
 

Private Attributes

QScopedPointer< QThreadPool > m_threadPool
 Python package Jedi for auto completion and calltips (Jedi is tried to be loaded as late as possible)
 
PyObject * m_pyModJedi
 defines, if it is already checked if Jedi could be loaded on this computer.
 
bool m_pyModJediChecked
 decides if itom is automatically included in every source file before it is handed to the syntax checker
 
bool m_includeItomImportBeforeCodeAnalysis
 string that is prepended to each script before syntax check (if m_includeItomImportBeforeCodeAnalysis is true)
 
QString m_includeItomImportString
 

Detailed Description

< Thread-safe helper class for PythonEngine to manage calls to the Python Jedi package.


The documentation for this class was generated from the following files: