org.coursera.courier.generator.specs

ClassDefinition

case class ClassDefinition(spec: ClassTemplateSpec) extends Definition with MaybeBoxable with Product with Serializable

A language specific class definition.

Purely a reference to a class. The class must already exist and will not be generated.

May refer to a primitive type.

Usages: - A custom class - A coercer for a custom class

Linear Supertypes
Serializable, Serializable, Product, Equals, MaybeBoxable, Definition, Deprecatable, AnyRef, Any
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. ClassDefinition
  2. Serializable
  3. Serializable
  4. Product
  5. Equals
  6. MaybeBoxable
  7. Definition
  8. Deprecatable
  9. AnyRef
  10. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Instance Constructors

  1. new ClassDefinition(spec: ClassTemplateSpec)

Value Members

  1. final def !=(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  2. final def !=(arg0: Any): Boolean

    Definition Classes
    Any
  3. final def ##(): Int

    Definition Classes
    AnyRef → Any
  4. final def ==(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  5. final def ==(arg0: Any): Boolean

    Definition Classes
    Any
  6. def allReferencedTypes: Set[Definition]

    Return all types directly or transitively referenced by this type.

    Return all types directly or transitively referenced by this type.

    Definition Classes
    Definition
  7. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  8. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  9. def containedTypes: Set[Definition]

    All types that should be generated as types inside this type.

    All types that should be generated as types inside this type.

    Definition Classes
    Definition
  10. def dataType: String

    The pegasus "data" type.

    The pegasus "data" type.

    This if sometimes the same as scalaType. It will be different for custom type and for primitive types.

    For custom types, it will be the referenced type.

    For primitives, this will be the java boxed type, e.g. java.lang.Integer whereas the scalaType would be Int.

    Definition Classes
    ClassDefinitionDefinition
  11. def deprecationMessage: Option[String]

    Is is possible for a type to be deprecated but have not deprecation message, so even if this is None, isDeprecated still might be true.

    Is is possible for a type to be deprecated but have not deprecation message, so even if this is None, isDeprecated still might be true.

    Definition Classes
    Deprecatable
  12. def directReferencedTypes: Set[Definition]

    Return types this type references.

    Return types this type references. For a record, this will return the types of all the fields. For a array, this will return the items type.

    Definition Classes
    ClassDefinitionDefinition
  13. def enclosingDefinition: Option[Definition]

    The containing type of this type, if any.

    The containing type of this type, if any.

    When a type is contained in another type, it should be generated as a subtype of that type.

    Unions are commonly generated as contained types.

    Definition Classes
    Definition
  14. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  15. def equals(other: Any): Boolean

    Definition Classes
    Definition → AnyRef → Any
  16. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  17. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  18. def hashCode(): Int

    Definition Classes
    Definition → AnyRef → Any
  19. def isDeprecated: Boolean

    Definition Classes
    Deprecatable
  20. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  21. def isTopLevel: Boolean

    Definition Classes
    Definition
  22. def maybeBox(expr: Txt): Txt

    Definition Classes
    MaybeBoxable
  23. def maybeUnbox(expr: Txt): Txt

    If this definition requires boxing, return a Scala expression that boxes the given Scala expression.

    If this definition requires boxing, return a Scala expression that boxes the given Scala expression.

    The given Scala expression must return AnyVal (and hence, must not evaluate to null).

    Definition Classes
    MaybeBoxable
  24. def memberName: String

    The name that should be given to any Union member wrappers of this type.

    The name that should be given to any Union member wrappers of this type.

    Definition Classes
    Definition
  25. def namespace: Option[String]

    The namespace of the scala type, if any.

    The namespace of the scala type, if any.

    Only present for complex types.

    Definition Classes
    ClassDefinitionDefinition
  26. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  27. final def notify(): Unit

    Definition Classes
    AnyRef
  28. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  29. def properties: Map[String, AnyRef]

    Definition Classes
    DefinitionDeprecatable
  30. def rawDataType: Nothing

    The raw pegasus "data" type that is stored in the underlying DataMap or DataList.

    The raw pegasus "data" type that is stored in the underlying DataMap or DataList.

    For custom types, this is the raw type of fully dereferenced type.

    For primitives, this is the java boxed type, e.g. java.lang.Integer.

    For complex types, this is the raw, type, e.g. DataMap for records, DataList for arrays.

    Definition Classes
    ClassDefinitionDefinition
  31. def requiresBoxing: Boolean

    Definition Classes
    MaybeBoxable
  32. def scalaDoc: None.type

    Includes the opening and closing scaladoc comment tags.

    Includes the opening and closing scaladoc comment tags.

    Definition Classes
    ClassDefinitionDefinition
  33. def scalaGenericCollectionType: String

    The scala Generic collection type that corresponds to the type.

    The scala Generic collection type that corresponds to the type. This is the same as scalaTypeFullname for all types except maps and arrays, which are represented by Map[K, V] and Traversable[I] instead of by their pegasus generated binding types.

    Definition Classes
    Definition
  34. def scalaType: String

    The scala type without namespace.

    The scala type without namespace.

    For complex types, this is the name of the generated data binding class.

    For primitive types, this is the Scala native type, e.g. "Int".

    Definition Classes
    ClassDefinitionDefinition
  35. def scalaTypeFullname: String

    The fully qualified name of the scala type.

    The fully qualified name of the scala type.

    Definition Classes
    Definition
  36. def schema: Option[DataSchema]

    The schema of the type.

    The schema of the type. Not present for definitions of "raw" classes, such as the 'coercer' and 'class' of a custom type.

    Definition Classes
    ClassDefinitionDefinition
  37. val spec: ClassTemplateSpec

    Definition Classes
    ClassDefinitionDefinition
  38. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  39. final def wait(): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  40. final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  41. final def wait(arg0: Long): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from Serializable

Inherited from Serializable

Inherited from Product

Inherited from Equals

Inherited from MaybeBoxable

Inherited from Definition

Inherited from Deprecatable

Inherited from AnyRef

Inherited from Any

Ungrouped