SchemaVisitorMetadataWriter

This schema visitor works on data that is annotated with :

  • smithy.api.httpLabel
  • smithy.api.httpHeader
  • smithy.api.httpPrefixHeaders
  • smithy.api.httpQuery
  • smithy.api.httpQueryParams

As such, assumptions are made using the information of what types can be annotated in the smithy specs.

class Object
trait Matchable
class Any

Value members

Concrete methods

override def biject[A, B](schema: Schema[A], bijection: Bijection[A, B]): MetaEncode[B]
Definition Classes
override def collection[C[_], A](shapeId: ShapeId, hints: Hints, tag: CollectionTag[C], member: Schema[A]): MetaEncode[C[A]]
Definition Classes
override def enumeration[E](shapeId: ShapeId, hints: Hints, values: List[EnumValue[E]], total: E => EnumValue[E]): MetaEncode[E]
Definition Classes
override def lazily[A](suspend: Lazy[Schema[A]]): MetaEncode[A]
Definition Classes
override def map[K, V](shapeId: ShapeId, hints: Hints, key: Schema[K], value: Schema[V]): MetaEncode[Map[K, V]]
Definition Classes
override def primitive[P](shapeId: ShapeId, hints: Hints, tag: Primitive[P]): MetaEncode[P]
Definition Classes
override def refine[A, B](schema: Schema[A], refinement: Refinement[A, B]): MetaEncode[B]
Definition Classes
override def struct[S](shapeId: ShapeId, hints: Hints, fields: Vector[Field[Schema, S, _]], make: IndexedSeq[Any] => S): MetaEncode[S]
Definition Classes
override def union[U](shapeId: ShapeId, hints: Hints, alternatives: Vector[Alt[Schema, U, _]], dispatcher: Dispatcher[Schema, U]): MetaEncode[U]
Definition Classes

Inherited methods

final def andThen[H[_]](other: PolyFunction[MetaEncode, H]): PolyFunction[F, H]
Inherited from:
PolyFunction
override def apply[A](schema: Schema[A]): F[A]
Definition Classes
Inherited from:
Cached
final def mapK[H[_]](fk: PolyFunction[MetaEncode, H]): PolyFunction[F, H]
Inherited from:
PolyFunction
final def unsafeCache(allPossibleInputs: Vector[Existential[Schema]]): PolyFunction[F, G]

Pre-computes the polyfunction by applying it on a vector of possible inputs.

Pre-computes the polyfunction by applying it on a vector of possible inputs.

Unsafe because calling the resulting polyfunction with an input that wasn't cached will result in an exception.

Inherited from:
PolyFunction
final def unsafeMemoise: PolyFunction[F, G]

Creates a memoised version of this function.

Creates a memoised version of this function.

Unsafe because it creates mutable state, which is a non-referentially-transparent action (aka a side-effect).

Inherited from:
PolyFunction

Concrete fields