packages feed

hydra-0.15.0: src/main/haskell/Hydra/Encode/Phantoms.hs

-- Note: this is an automatically generated file. Do not edit.
-- | Term encoders for hydra.phantoms

module Hydra.Encode.Phantoms where
import qualified Hydra.Core as Core
import qualified Hydra.Encode.Core as EncodeCore
import qualified Hydra.Phantoms as Phantoms
import Prelude hiding  (Enum, Ordering, decodeFloat, encodeFloat, fail, map, pure, sum)
import qualified Data.Scientific as Sci
tBinding :: t0 -> Phantoms.TBinding t1 -> Core.Term
tBinding a x =
    Core.TermRecord (Core.Record {
      Core.recordTypeName = (Core.Name "hydra.phantoms.TBinding"),
      Core.recordFields = [
        Core.Field {
          Core.fieldName = (Core.Name "name"),
          Core.fieldTerm = (EncodeCore.name (Phantoms.tBindingName x))},
        Core.Field {
          Core.fieldName = (Core.Name "term"),
          Core.fieldTerm = (tTerm a (Phantoms.tBindingTerm x))}]})
tTerm :: t0 -> Phantoms.TTerm t1 -> Core.Term
tTerm a x =
    Core.TermWrap (Core.WrappedTerm {
      Core.wrappedTermTypeName = (Core.Name "hydra.phantoms.TTerm"),
      Core.wrappedTermBody = (EncodeCore.term (Phantoms.unTTerm x))})
tTermDefinition :: t0 -> Phantoms.TTermDefinition t1 -> Core.Term
tTermDefinition a x =
    Core.TermRecord (Core.Record {
      Core.recordTypeName = (Core.Name "hydra.phantoms.TTermDefinition"),
      Core.recordFields = [
        Core.Field {
          Core.fieldName = (Core.Name "name"),
          Core.fieldTerm = (EncodeCore.name (Phantoms.tTermDefinitionName x))},
        Core.Field {
          Core.fieldName = (Core.Name "term"),
          Core.fieldTerm = (tTerm a (Phantoms.tTermDefinitionTerm x))}]})