Revision a007792...

Go back to digest for 19th February 2012

Features in Development Tools

Milian Wolff committed changes in [kdevplatform/parsejob-sequential] /backgroundparser:

Make it possible to enforce sequential processing of parsejobs

A parse jobs priority can now be accessed through the job object,
useful for re-scheduling the job with a higher priority or similar.

Parsejobs that have the RequiresSequentialProcessing flag set are now
forced to be processed in order of their priority. This means, no parse
job with a lower priority and the RespectsSequentialProcessing flag set
will be started before all jobs with a higher priority have finished.

That way, it is guaranteed that documents are parsed in the exact order
of their priority, which makes it possible to use the priority flag for
e.g. dependency handling on import statements or similar:

If an import is encountered, you can schedule the imported document with
parsePriority() - 1, and then re-schedule the current document with the
same parsePriority(). This is now guaranteed to re-parse the current
document only after the imported one was processed.

File Changes

Modified 4 files
  • /backgroundparser
  •   language.cpp
  •   language.h
  •   language/parsejob.cpp
  •   language/parsejob.h
4 files changed in total