t

sttp.tapir.macros

SchemaCompanionMacros

trait SchemaCompanionMacros extends SchemaMagnoliaDerivation

Linear Supertypes
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. SchemaCompanionMacros
  2. SchemaMagnoliaDerivation
  3. AnyRef
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Type Members

  1. type Typeclass[T] = Schema[T]
    Definition Classes
    SchemaMagnoliaDerivation

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[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
  6. macro def derived[T]: Schema[T]
  7. macro def derivedEnumeration[T]: CreateDerivedEnumerationSchema[T]

    Creates a schema for an enumeration, where the validator is derived using sttp.tapir.Validator.derivedEnumeration.

    Creates a schema for an enumeration, where the validator is derived using sttp.tapir.Validator.derivedEnumeration. This requires that all subtypes of the sealed hierarchy T must be objects.

    Because of technical limitations of macros, the customisation arguments can't be given here directly, instead being delegated to CreateDerivedEnumerationSchema.

  8. implicit macro def derivedEnumerationValue[T <: Value]: Schema[T]

    Create a schema for scala Enumeration and the Validator instance based on possible enumeration values

  9. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  10. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  11. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  12. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  13. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  14. def join[T](ctx: ReadOnlyCaseClass[Schema, T])(implicit genericDerivationConfig: Configuration): Schema[T]
    Definition Classes
    SchemaMagnoliaDerivation
  15. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  16. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  17. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  18. macro def oneOfUsingField[E, V](extractor: (E) => V, asString: (V) => String)(mapping: (V, Schema[_])*)(implicit conf: Configuration, discriminatorSchema: Schema[V]): Schema[E]

    Create a coproduct schema (e.g.

    Create a coproduct schema (e.g. for a sealed trait), where the value of the discriminator between child types is a read of a field of the base type. The field, if not yet present, is added to each child schema.

    The schemas of the child types have to be provided explicitly with their value mappings in mapping.

    Note that if the discriminator value is some transformation of the child's type name (obtained using the implicit Configuration), the coproduct schema can be derived automatically or semi-automatically.

    discriminatorSchema

    The schema that is used when adding the discriminator as a field to child schemas (if it's not yet in the schema).

  19. macro def oneOfWrapped[E](implicit conf: Configuration): Schema[E]

    Create a coproduct schema for a sealed trait or sealed abstract class, where to discriminate between child types a wrapper product is used.

    Create a coproduct schema for a sealed trait or sealed abstract class, where to discriminate between child types a wrapper product is used. The name of the sole field in this product corresponds to the type's name, transformed using the implicit Configuration.

  20. macro def schemaForMap[K, V](keyToString: (K) => String)(implicit arg0: Schema[V]): Schema[Map[K, V]]

    Create a schema for a map with arbitrary keys.

    Create a schema for a map with arbitrary keys. The schema for the keys K should be a string, however this cannot be verified at compile-time and is not verified at run-time.

    The given keyToString conversion function is used during validation.

    If you'd like this schema to be available as an implicit for a given type of keys, create an custom implicit, e.g.:

    case class MyKey(value: String) extends AnyVal
    implicit val schemaForMyMap = Schema.schemaForMap[MyKey, MyValue](_.value)
  21. implicit macro def schemaForMap[V](implicit arg0: Schema[V]): Schema[Map[String, V]]
  22. def split[T](ctx: SealedTrait[Schema, T])(implicit genericDerivationConfig: Configuration): Schema[T]
    Definition Classes
    SchemaMagnoliaDerivation
  23. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  24. def toString(): String
    Definition Classes
    AnyRef → Any
  25. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  26. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  27. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable]) @Deprecated
    Deprecated

Inherited from AnyRef

Inherited from Any

Ungrouped