SchemaVisitor

smithy4s.schema.SchemaVisitor
See theSchemaVisitor companion object
trait SchemaVisitor[F[_]] extends PolyFunction[Schema, F]

Attributes

Companion
object
Graph
Supertypes
trait PolyFunction[Schema, F]
class Object
trait Matchable
class Any
Known subtypes
Self type

Members list

Value members

Abstract methods

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

Concrete methods

def apply[A](schema: Schema[A]): F[A]

Inherited methods

final def andThen[H[_]](other: PolyFunction[F, H]): PolyFunction[F, H]

Attributes

Inherited from:
PolyFunction
final def compose[H[_]](other: PolyFunction[H, Schema]): PolyFunction[H, G]

Attributes

Inherited from:
PolyFunction
final def narrow[F0 <: (Schema)]: PolyFunction[F0, G]

Attributes

Inherited from:
PolyFunction
final def widen[G0[a0]]: PolyFunction[F, G0]

Attributes

Inherited from:
PolyFunction