1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
|
package test.templates {
object `package` {
/** @template */
type String = java.lang.String
val String = new StringCompanion
class StringCompanion { def boo = ??? }
}
/** @contentDiagram */
trait Base {
/** @documentable */
type String = test.templates.String
/** @template
* @inheritanceDiagram */
type T <: Foo
val T: FooExtractor
trait Foo { def foo: Int }
trait FooExtractor { def apply(foo: Int); def unapply(t: Foo): Option[Int] }
}
/** @contentDiagram */
trait Api extends Base {
/** @documentable
* @inheritanceDiagram */
override type T <: FooApi
trait FooApi extends Foo { def bar: String }
}
}
|