sbt/scripted/StatementHandler.scala

27 lines
710 B
Scala
Raw Normal View History

2010-02-08 05:45:19 +01:00
/* sbt -- Simple Build Tool
* Copyright 2009 Mark Harrah
*/
2009-11-09 15:34:52 +01:00
package xsbt.test
trait StatementHandler
{
type State
def initialState: State
def apply(command: String, arguments: List[String], state: State): State
def finish(state: State): Unit
2009-11-09 15:34:52 +01:00
}
trait BasicStatementHandler extends StatementHandler
{
final type State = Unit
final def initialState = ()
final def apply(command: String, arguments: List[String], state: Unit): Unit= apply(command, arguments)
def apply(command: String, arguments: List[String]): Unit
def finish(state: Unit) = ()
}
/** Use when a stack trace is not useful */
final class TestFailed(msg: String) extends RuntimeException(msg)
{
override def fillInStackTrace = this
2009-11-09 15:34:52 +01:00
}