diff options
Diffstat (limited to 'src/main/scala/org/perl8/test/harness/package.scala')
-rw-r--r-- | src/main/scala/org/perl8/test/harness/package.scala | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/main/scala/org/perl8/test/harness/package.scala b/src/main/scala/org/perl8/test/harness/package.scala index a5641e8..fbebf07 100644 --- a/src/main/scala/org/perl8/test/harness/package.scala +++ b/src/main/scala/org/perl8/test/harness/package.scala @@ -1,14 +1,27 @@ package org.perl8.test +/** Classes to handle running test instances and providing output. + */ package object harness { import scala.reflect.{ClassTag,classTag} + /** Loads `className`, returning the + * [[http://docs.oracle.com/javase/7/docs/api/java/lang/Class.html java.lang.Class]] + * instance. + */ def loadClass[T: ClassTag] (className: String): Class[_] = classTag[T].runtimeClass.getClassLoader.loadClass(className) + /** Loads `className` and creates a new instance of it, using the + * no-argument constructor. + */ def newInstance[T: ClassTag] (className: String): T = loadClass[T](className).newInstance.asInstanceOf[T] + /** Loads `className` and creates a new instance of it, using a + * one-argument constructor. Passes `arg` as the argument to the + * constructor. + */ def newInstance[T: ClassTag, U <: AnyRef: ClassTag] ( className: String, arg: U |