macro class derivedComponent[M, Poly] extends Annotation with StaticAnnotation
macro annotation to mark a class or object as a derived persistent component. creates a
companion object for the class that extends DerivedCType. if the class already has a companion object, then adds a parent
class DerivedCType
to the existing companion object. Note that
this will not work if your companion object already extends an abstract
or concrete class, as DerivedCType
itself is an abstract class. if this
happens, you will see a compiler error such as "class Foo needs to be a trait
to be mixed in".
if the annotated component is already an object, we create the DerivedCType
as
an internal object ctype
.
- M
the model
- Poly
the type of the polymorphic component that this component is derived from
- Annotations
- @compileTimeOnly( ... )
- Source
- derivedComponent.scala
- Alphabetic
- By Inheritance
- derivedComponent
- StaticAnnotation
- Annotation
- AnyRef
- Any
- by any2stringadd
- by StringFormat
- by Ensuring
- by ArrowAssoc
- Hide All
- Show All
- Public
- All
Instance Constructors
- new derivedComponent()
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
def
+(other: String): String
- Implicit
- This member is added by an implicit conversion from derivedComponent[M, Poly] to any2stringadd[derivedComponent[M, Poly]] performed by method any2stringadd in scala.Predef.
- Definition Classes
- any2stringadd
-
def
->[B](y: B): (derivedComponent[M, Poly], B)
- Implicit
- This member is added by an implicit conversion from derivedComponent[M, Poly] to ArrowAssoc[derivedComponent[M, Poly]] performed by method ArrowAssoc in scala.Predef.
- Definition Classes
- ArrowAssoc
- Annotations
- @inline()
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )
-
def
ensuring(cond: (derivedComponent[M, Poly]) ⇒ Boolean, msg: ⇒ Any): derivedComponent[M, Poly]
- Implicit
- This member is added by an implicit conversion from derivedComponent[M, Poly] to Ensuring[derivedComponent[M, Poly]] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
-
def
ensuring(cond: (derivedComponent[M, Poly]) ⇒ Boolean): derivedComponent[M, Poly]
- Implicit
- This member is added by an implicit conversion from derivedComponent[M, Poly] to Ensuring[derivedComponent[M, Poly]] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
-
def
ensuring(cond: Boolean, msg: ⇒ Any): derivedComponent[M, Poly]
- Implicit
- This member is added by an implicit conversion from derivedComponent[M, Poly] to Ensuring[derivedComponent[M, Poly]] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
-
def
ensuring(cond: Boolean): derivedComponent[M, Poly]
- Implicit
- This member is added by an implicit conversion from derivedComponent[M, Poly] to Ensuring[derivedComponent[M, Poly]] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
def
formatted(fmtstr: String): String
- Implicit
- This member is added by an implicit conversion from derivedComponent[M, Poly] to StringFormat[derivedComponent[M, Poly]] performed by method StringFormat in scala.Predef.
- Definition Classes
- StringFormat
- Annotations
- @inline()
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- macro def macroTransform(annottees: Any*): Any
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )
-
def
→[B](y: B): (derivedComponent[M, Poly], B)
- Implicit
- This member is added by an implicit conversion from derivedComponent[M, Poly] to ArrowAssoc[derivedComponent[M, Poly]] performed by method ArrowAssoc in scala.Predef.
- Definition Classes
- ArrowAssoc