packages feed

keiro-dsl-0.12.0.0: test/conformance-projection-catalog/Generated/CatalogDemo/StructuralProjections.hs

{-# LANGUAGE TypeFamilies #-}
-- @generated by keiro-dsl 0.12.0.0 (language keiro-dsl 5) from context catalog-demo 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.CatalogDemo.StructuralProjections
  ( qualificationPayloadQualificationIdWitness
  ) where

import Data.Text (Text)
import Keiro.Codec.Structural (bindingToShape)
import Keiki.Core (FieldProjection (..), FieldWitness, fieldWitness)
import CatalogDemo.MappedBindings qualified as MappedBindings
import CatalogDemo.MappedDomain (QualificationPayload)
import Generated.CatalogDemo.Structural.Shape.QualificationPayload qualified as ShapeQualificationPayload

data QualificationPayloadQualificationIdProjection

instance FieldProjection QualificationPayloadQualificationIdProjection where
  type FieldName QualificationPayloadQualificationIdProjection = "/qualification_id"
  type FieldOwner QualificationPayloadQualificationIdProjection = QualificationPayload
  type FieldResult QualificationPayloadQualificationIdProjection = Text
  fieldShapeId _ = "catalog-demo.QualificationPayload.v1"
  projectFieldValue _ owner = ShapeQualificationPayload.qualificationId (bindingToShape MappedBindings.qualificationPayloadBinding owner)

qualificationPayloadQualificationIdWitness :: FieldWitness QualificationPayloadQualificationIdProjection
qualificationPayloadQualificationIdWitness = fieldWitness @QualificationPayloadQualificationIdProjection