keiro-dsl-0.9.0.0: test/conformance-structural/Generated/StructuralConformance/StructuralProjections.hs
{-# LANGUAGE DataKinds #-}
{-# LANGUAGE TypeApplications #-}
{-# LANGUAGE TypeFamilies #-}
-- @generated by keiro-dsl 0.8.0.0 (language keiro-dsl 4) from context structural-conformance 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.StructuralConformance.StructuralProjections
( artifactInfoArtifactKeyWitness
, artifactInfoDisplayNameWitness
) 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 Conformance.Structural.Bindings qualified
import Conformance.Structural.Domain qualified
import Generated.StructuralConformance.Structural.Shape.ArtifactInfo qualified
data ArtifactInfoArtifactKeyProjection
instance FieldProjection ArtifactInfoArtifactKeyProjection where
type FieldName ArtifactInfoArtifactKeyProjection = "/artifact_key"
type FieldOwner ArtifactInfoArtifactKeyProjection = Conformance.Structural.Domain.ArtifactInfo
type FieldResult ArtifactInfoArtifactKeyProjection = Text
fieldShapeId _ = "conformance.structural.ArtifactInfo.v1"
projectFieldValue _ owner = Generated.StructuralConformance.Structural.Shape.ArtifactInfo.artifactKey (bindingToShape Conformance.Structural.Bindings.artifactInfoBinding owner)
artifactInfoArtifactKeyWitness :: FieldWitness ArtifactInfoArtifactKeyProjection
artifactInfoArtifactKeyWitness = fieldWitness @ArtifactInfoArtifactKeyProjection
data ArtifactInfoDisplayNameProjection
instance FieldProjection ArtifactInfoDisplayNameProjection where
type FieldName ArtifactInfoDisplayNameProjection = "/display_name"
type FieldOwner ArtifactInfoDisplayNameProjection = Conformance.Structural.Domain.ArtifactInfo
type FieldResult ArtifactInfoDisplayNameProjection = Text
fieldShapeId _ = "conformance.structural.ArtifactInfo.v1"
projectFieldValue _ owner = Generated.StructuralConformance.Structural.Shape.ArtifactInfo.displayName (bindingToShape Conformance.Structural.Bindings.artifactInfoBinding owner)
artifactInfoDisplayNameWitness :: FieldWitness ArtifactInfoDisplayNameProjection
artifactInfoDisplayNameWitness = fieldWitness @ArtifactInfoDisplayNameProjection