The common interface for all changes.
A marker trait indicating that the Throwable
it is mixed into is
intended for flow control.
A marker trait indicating that the Throwable
it is mixed into is
intended for flow control.
Note that Throwable
subclasses which extend this trait may extend any
other Throwable
subclass (eg. RuntimeException
) and are not required
to extend Throwable
directly.
Instances of Throwable
subclasses marked in this way should not normally
be caught. Where catch-all behaviour is required ControlThrowable
should be propagated, for example:
import scala.util.control.ControlThrowable try { // Body might throw arbitrarily } catch { case c: ControlThrowable => throw c // propagate case t: Exception => log(t) // log and suppress }
A class of work items to be used in interrupt requests.
A class of work items to be used in interrupt requests. Todo: we should replace the Eithers by Futures or Try's.
A locator for trees with given positions.
A locator for trees with given positions.
Given a position pos
, locator.apply returns
the smallest tree that encloses pos
.
The changes creates a new source file, indicated by the fullName
parameter.
The changes creates a new source file, indicated by the fullName
parameter. It is of
the form "some.package.FileName".
A trait for exceptions which, for efficiency reasons, do not fill in the stack trace.
A trait for exceptions which, for efficiency reasons, do not fill in the stack trace. Stack trace suppression can be disabled on a global basis via a system property wrapper in scala.sys.SystemProperties.
2.8
The common interface for all changes.
Note: it's the super type of
TextChange
andNewFileChange
.NewFileChanges
are used by refactorings that create new source files (Move Class).Additionally, the
file
attribute is now of typeSourceFile
, because parts of the refactoring process need to access the content of the underlying source file.