keiro-dsl-0.12.0.0: test/conformance-declarative-router/Generated/TransferRouting/StructuralProjections.hs
{-# LANGUAGE TypeFamilies #-}
-- @generated by keiro-dsl 0.12.0.0 (language keiro-dsl 5) from context transfer-routing mapped structural facade; do not edit.
-- Equality witnesses are emitted for Text, Int, Bool, Natural, and UTCTime.
-- Int, Natural, and UTCTime belong to Keiki's ordered subset.
module Generated.TransferRouting.StructuralProjections
( hospitalLoadRowAvailableBedsWitness
, hospitalLoadRowHospitalIdWitness
, hospitalLoadRowRegionWitness
, transferRouteInputRegionWitness
, transferRouteInputTransferNeedIdWitness
) where
import Data.Text (Text)
import Keiro.Codec.Structural (bindingToShape)
import Keiki.Core (FieldProjection (..), FieldWitness, fieldWitness)
import Conformance.DeclarativeRouter.Bindings qualified as Bindings
import Conformance.DeclarativeRouter.Domain (HospitalLoadRow, TransferRouteInput)
import Generated.TransferRouting.Structural.Shape.HospitalLoadRow qualified as ShapeHospitalLoadRow
import Generated.TransferRouting.Structural.Shape.TransferRouteInput qualified as ShapeTransferRouteInput
data HospitalLoadRowAvailableBedsProjection
instance FieldProjection HospitalLoadRowAvailableBedsProjection where
type FieldName HospitalLoadRowAvailableBedsProjection = "/available_beds"
type FieldOwner HospitalLoadRowAvailableBedsProjection = HospitalLoadRow
type FieldResult HospitalLoadRowAvailableBedsProjection = Int
fieldShapeId _ = "conformance.declarative-router.HospitalLoadRow.v1"
projectFieldValue _ owner = ShapeHospitalLoadRow.availableBeds (bindingToShape Bindings.hospitalLoadRowBinding owner)
hospitalLoadRowAvailableBedsWitness :: FieldWitness HospitalLoadRowAvailableBedsProjection
hospitalLoadRowAvailableBedsWitness = fieldWitness @HospitalLoadRowAvailableBedsProjection
data HospitalLoadRowHospitalIdProjection
instance FieldProjection HospitalLoadRowHospitalIdProjection where
type FieldName HospitalLoadRowHospitalIdProjection = "/hospital_id"
type FieldOwner HospitalLoadRowHospitalIdProjection = HospitalLoadRow
type FieldResult HospitalLoadRowHospitalIdProjection = Text
fieldShapeId _ = "conformance.declarative-router.HospitalLoadRow.v1"
projectFieldValue _ owner = ShapeHospitalLoadRow.hospitalId (bindingToShape Bindings.hospitalLoadRowBinding owner)
hospitalLoadRowHospitalIdWitness :: FieldWitness HospitalLoadRowHospitalIdProjection
hospitalLoadRowHospitalIdWitness = fieldWitness @HospitalLoadRowHospitalIdProjection
data HospitalLoadRowRegionProjection
instance FieldProjection HospitalLoadRowRegionProjection where
type FieldName HospitalLoadRowRegionProjection = "/region"
type FieldOwner HospitalLoadRowRegionProjection = HospitalLoadRow
type FieldResult HospitalLoadRowRegionProjection = Text
fieldShapeId _ = "conformance.declarative-router.HospitalLoadRow.v1"
projectFieldValue _ owner = ShapeHospitalLoadRow.region (bindingToShape Bindings.hospitalLoadRowBinding owner)
hospitalLoadRowRegionWitness :: FieldWitness HospitalLoadRowRegionProjection
hospitalLoadRowRegionWitness = fieldWitness @HospitalLoadRowRegionProjection
data TransferRouteInputRegionProjection
instance FieldProjection TransferRouteInputRegionProjection where
type FieldName TransferRouteInputRegionProjection = "/region"
type FieldOwner TransferRouteInputRegionProjection = TransferRouteInput
type FieldResult TransferRouteInputRegionProjection = Text
fieldShapeId _ = "conformance.declarative-router.TransferRouteInput.v1"
projectFieldValue _ owner = ShapeTransferRouteInput.region (bindingToShape Bindings.transferRouteInputBinding owner)
transferRouteInputRegionWitness :: FieldWitness TransferRouteInputRegionProjection
transferRouteInputRegionWitness = fieldWitness @TransferRouteInputRegionProjection
data TransferRouteInputTransferNeedIdProjection
instance FieldProjection TransferRouteInputTransferNeedIdProjection where
type FieldName TransferRouteInputTransferNeedIdProjection = "/transfer_need_id"
type FieldOwner TransferRouteInputTransferNeedIdProjection = TransferRouteInput
type FieldResult TransferRouteInputTransferNeedIdProjection = Text
fieldShapeId _ = "conformance.declarative-router.TransferRouteInput.v1"
projectFieldValue _ owner = ShapeTransferRouteInput.transferNeedId (bindingToShape Bindings.transferRouteInputBinding owner)
transferRouteInputTransferNeedIdWitness :: FieldWitness TransferRouteInputTransferNeedIdProjection
transferRouteInputTransferNeedIdWitness = fieldWitness @TransferRouteInputTransferNeedIdProjection