A do-nothing work scheduler that responds immediately with MissingResponse.
A do-nothing work scheduler that responds immediately with MissingResponse.
Used during compiler shutdown.
The response that is currently pending, i.e.
The response that is currently pending, i.e. the compiler is working on providing an asnwer for it.
Asks for a computation to be done quickly on the presentation compiler thread
Asks for a computation to be done quickly on the presentation compiler thread
Removes source files and toplevel symbols, and issues a new typer run.
Removes source files and toplevel symbols, and issues a new typer run.
Returns () to syncvar response
on completion.
Asks for a computation to be done on presentation compiler thread, returning a response with the result or an exception
Asks for a computation to be done on presentation compiler thread, returning a response with the result or an exception
Sets sync var response
to the position of the definition of the given link in
the given sourcefile.
Sets sync var response
to the position of the definition of the given link in
the given sourcefile.
The symbol referenced by the link (might come from a classfile)
A response that will be set to the following:
If source
contains a definition that is referenced by the given link
the position of that definition, otherwise NoPosition.
Note: This operation does not automatically load source
. If source
is unloaded, it stays that way.
Set sync var response
to the parse tree of source
with all top-level symbols entered.
Set sync var response
to the parse tree of source
with all top-level symbols entered.
The source file to be analyzed
If set to true
, source file will be kept as a loaded unit afterwards.
If keepLoaded is false
the operation is run at low priority, only after
everything is brought up to date in a regular type checker run.
The response.
Makes sure a set of compilation units is loaded and parsed.
Makes sure a set of compilation units is loaded and parsed.
Returns () to syncvar response
on completion.
Afterwards a new background compiler run is started with
the given sources at the head of the list of to-be-compiled sources.
Cancels current compiler run and start a fresh one where everything will be re-typechecked (but not re-loaded).
Cancels current compiler run and start a fresh one where everything will be re-typechecked (but not re-loaded).
Tells the compile server to shutdown, and not to restart again
Tells the compile server to shutdown, and not to restart again
If source if not yet loaded, get an outline view with askParseEntered.
If source if not yet loaded, get an outline view with askParseEntered. If source is loaded, return it. In both cases, set response to parsed tree.
If set to true
, source file will be kept as a loaded unit afterwards.
Asks to do unit corresponding to given source file on present and subsequent type checking passes.
Asks to do unit corresponding to given source file on present and subsequent type checking passes. If the file is in the 'crashedFiles' ignore list it is removed and typechecked normally.
Sets sync var response
to the smallest fully attributed tree that encloses position pos
.
Sets sync var response
to the smallest fully attributed tree that encloses position pos
.
Note: Unlike for most other ask... operations, the source file belonging to pos
needs not be loaded.
Check that the currently executing thread is the presentation compiler thread.
Check that the currently executing thread is the presentation compiler thread.
Compiler initialization may happen on a different thread (signalled by globalPhase being NoPhase)
Flush the buffer of sources that are ignored during background compilation.
Flush the buffer of sources that are ignored during background compilation.
Print msg only when debugIDE is true.
Print msg only when debugIDE is true.
Remove a crashed file from the ignore buffer.
Remove a crashed file from the ignore buffer. Background compilation will take it into account and errors will be reported against it.
A map that associates with each abstract file the set of responses that ware waiting (via build) for the unit associated with the abstract file to be parsed and resolved
A map that associates with each abstract file the set of responses that ware waiting (via build) for the unit associated with the abstract file to be parsed and resolved
Return the compilation unit attached to a source file, or None if source is not loaded.
Return the compilation unit attached to a source file, or None if source is not loaded.
Inform with msg only when verboseIDE is true.
Inform with msg only when verboseIDE is true.
Locate smallest tree that encloses position
Locate smallest tree that encloses position
Position must be loaded
Move list of files to front of allSources
Move list of files to front of allSources
Run operation op
on a compilation unit associated with given source
.
Run operation op
on a compilation unit associated with given source
.
If source has a loaded compilation unit, this one is passed to op
.
Otherwise a new compilation unit is created, but not added to the set of loaded units.
Is a background compiler run needed? Note: outOfDate is true as long as there is a background compile scheduled or going on.
Is a background compiler run needed? Note: outOfDate is true as long as there is a background compile scheduled or going on.
Returns parse tree for source source
.
Returns parse tree for source source
. No symbols are entered. Syntax errors are reported.
This method is thread-safe and as such can safely run outside of the presentation compiler thread.
Removes the CompilationUnit corresponding to the given SourceFile from consideration for recompilation.
Removes the CompilationUnit corresponding to the given SourceFile from consideration for recompilation.
resolve the given method's body to BODY level.
resolve the given method's body to BODY level.
The scheduler by which client and compiler communicate Must be initialized before starting compilerRunner
The scheduler by which client and compiler communicate Must be initialized before starting compilerRunner
A set containing all those files that need to be removed Units are removed by getUnit, typically once a unit is finished compiled.
A set containing all those files that need to be removed Units are removed by getUnit, typically once a unit is finished compiled.
A set containing all those files that need to be removed after a full background compiler run
A set containing all those files that need to be removed after a full background compiler run
This is the interactive compiler of Jawa.