org.coursera.courier.generator.specs

Definition

Related Docs: object Definition | package specs

abstract class Definition extends AnyRef

Pegasus provides ClassTemplateSpecs to "flatten" the data schemas provided to a data binding generator and make it easier to write the generator.

These Definitions classes wrap ClassTemplateSpecs so that we can use idiomatic scala types in our templates. They also add language specific escaping and convenience functions specifically for generating data bindings for Scala.

This trait is for all Scala classes that wrap ClassTemplateSpec and it's sub-classes, it represents the common properties shared by all pegasus data binding generator utility types.

Linear Supertypes
AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. Definition
  2. AnyRef
  3. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Instance Constructors

  1. new Definition(spec: ClassTemplateSpec)

Abstract Value Members

  1. abstract def scalaDoc: Option[String]

    Includes the opening and closing scaladoc comment tags.

  2. abstract def schema: DataSchema

    The schema of the type.

Concrete Value Members

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

    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

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

    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  5. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  6. 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.

  7. 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.

  8. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  9. def equals(arg0: Any): Boolean

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

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

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

    Definition Classes
    AnyRef → Any
  13. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  14. def memberName: String

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

  15. 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.

  16. final def ne(arg0: AnyRef): Boolean

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

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

    Definition Classes
    AnyRef
  19. 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".

  20. def scalaTypeFullname: String

    The fully qualified name of the scala type.

  21. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  22. def toString(): String

    Definition Classes
    AnyRef → Any
  23. final def wait(): Unit

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

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

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from AnyRef

Inherited from Any

Ungrouped