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], to: A => B, from: B => A): MetaEncode[B]
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 list[A](shapeId: ShapeId, hints: Hints, member: Schema[A]): MetaEncode[List[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 set[A](shapeId: ShapeId, hints: Hints, member: Schema[A]): MetaEncode[Set[A]]
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 surject[A, B](schema: Schema[A], to: Refinement[A, B], from: B => A): MetaEncode[B]
Definition Classes
override def union[U](shapeId: ShapeId, hints: Hints, alternatives: Vector[Alt[Schema, U, _]], dispatch: U => WithValue[Schema, U, _]): MetaEncode[U]
Definition Classes

Inherited methods

final def andThen[H[_]](other: PolyFunction[MetaEncode, H]): PolyFunction[Schema, H]
Inherited from:
PolyFunction
def apply[A](schema: Schema[A]): MetaEncode[A]
Inherited from:
SchemaVisitor

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

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