Mostly working cross-compile task.

Analyzer plugin is now a proper internal phase to get around bootstrapping issues.
Correctly handle source tags.
This commit is contained in:
Mark Harrah 2009-09-03 23:40:47 -04:00
parent 140e2cbcb6
commit b094fc3cc8
2 changed files with 9 additions and 12 deletions

9
cache/CacheIO.scala vendored
View File

@ -6,6 +6,15 @@ import scala.reflect.Manifest
object CacheIO
{
def toBytes[T](format: Format[T])(value: T)(implicit mf: Manifest[Format[T]]): Array[Byte] =
toBytes[T](value)(format, mf)
def toBytes[T](value: T)(implicit format: Format[T], mf: Manifest[Format[T]]): Array[Byte] =
Operations.toByteArray(value)(stampedFormat(format))
def fromBytes[T](format: Format[T], default: => T)(bytes: Array[Byte])(implicit mf: Manifest[Format[T]]): T =
fromBytes(default)(bytes)(format, mf)
def fromBytes[T](default: => T)(bytes: Array[Byte])(implicit format: Format[T], mf: Manifest[Format[T]]): T =
if(bytes.isEmpty) default else Operations.fromByteArray(bytes)(stampedFormat(format))
def fromFile[T](format: Format[T], default: => T)(file: File)(implicit mf: Manifest[Format[T]]): T =
fromFile(file, default)(format, mf)
def fromFile[T](file: File, default: => T)(implicit format: Format[T], mf: Manifest[Format[T]]): T =

View File

@ -1,12 +0,0 @@
/* sbt -- Simple Build Tool
* Copyright 2009 Mark Harrah
*/
package xsbti;
/** Provides access to an AnalysisCallback. This is used by the plugin to
* get the callback to use. The scalac Global instance it is passed must
* implement this interface. */
public interface AnalysisCallbackContainer
{
public AnalysisCallback analysisCallback();
}