packages feed

keiro-dsl-0.10.0.0: test/conformance-import-planning/Generated/ImportPlanningCollisions/StructuralProjections.hs

{-# LANGUAGE TypeFamilies #-}
-- @generated by keiro-dsl 0.9.0.0 (language keiro-dsl 4) from context import-planning-collisions 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.ImportPlanningCollisions.StructuralProjections
  ( detailsLabelWitness
  ) where

import Data.Text (Text)
import Data.Time (UTCTime)
import Numeric.Natural (Natural)
import Keiro.Codec.Structural (bindingToShape)
import Keiki.Core (FieldProjection (..), FieldWitness, fieldWitness)
import Generated.ImportPlanningCollisions.Structural.Shape.Details qualified as ShapeDetails
import ImportPlanning.Bindings qualified as Bindings
import ImportPlanning.Consumer.Shared.Types (Details)

data DetailsLabelProjection

instance FieldProjection DetailsLabelProjection where
  type FieldName DetailsLabelProjection = "/label"
  type FieldOwner DetailsLabelProjection = Details
  type FieldResult DetailsLabelProjection = Text
  fieldShapeId _ = "import-planning.Details.v1"
  projectFieldValue _ owner = ShapeDetails.label (bindingToShape Bindings.detailsBinding owner)

detailsLabelWitness :: FieldWitness DetailsLabelProjection
detailsLabelWitness = fieldWitness @DetailsLabelProjection