keiro-dsl-0.7.0.0: test/conformance-behavior-complete/Generated/BehaviorComplete/Journey/Expressions.hs
{-# LANGUAGE DataKinds #-}
{-# LANGUAGE OverloadedLabels #-}
{-# LANGUAGE OverloadedRecordDot #-}
{-# LANGUAGE TypeApplications #-}
-- @generated by keiro-dsl; do not edit. Regenerated from the .keiro spec.
module Generated.BehaviorComplete.Journey.Expressions
( transition1EmptyStartWriteLastAmount
, transition2ActiveDecideGuard
, transition2ActiveDecideWriteLastAmount
, transition3ActiveDecideGuard
, transition3ActiveDecideWriteLastAmount
, transition5ActiveRetireGuard
, transition5ActiveRetireWriteLastAmount
, transition6ActiveRetireGuard
, transition6ActiveRetireWriteLastAmount
) where
import Generated.BehaviorComplete.Journey.Domain
import Keiki.Builder qualified as B
import Keiki.Core qualified as K
import Keiki.Generics (RegFieldsOf)
import Numeric.Natural (Natural)
import Generated.BehaviorComplete.StructuralProjections qualified as StructuralProjections
import BehaviorComplete.Domain qualified
transition1EmptyStartWriteLastAmount :: B.PayloadProj JourneyRegs JourneyCommand (RegFieldsOf StartData) -> K.Term JourneyRegs JourneyCommand (RegFieldsOf StartData) Natural
transition1EmptyStartWriteLastAmount d = d.amount
transition2ActiveDecideGuard :: B.PayloadProj JourneyRegs JourneyCommand (RegFieldsOf DecideData) -> K.HsPred JourneyRegs JourneyCommand
transition2ActiveDecideGuard d = K.PCmp K.CmpLe (d.amount) (K.lit (5 :: Natural))
transition2ActiveDecideWriteLastAmount :: B.PayloadProj JourneyRegs JourneyCommand (RegFieldsOf DecideData) -> K.Term JourneyRegs JourneyCommand (RegFieldsOf DecideData) Natural
transition2ActiveDecideWriteLastAmount d = d.amount
transition3ActiveDecideGuard :: B.PayloadProj JourneyRegs JourneyCommand (RegFieldsOf DecideData) -> K.HsPred JourneyRegs JourneyCommand
transition3ActiveDecideGuard d = K.PCmp K.CmpGt (d.amount) (K.lit (5 :: Natural))
transition3ActiveDecideWriteLastAmount :: B.PayloadProj JourneyRegs JourneyCommand (RegFieldsOf DecideData) -> K.Term JourneyRegs JourneyCommand (RegFieldsOf DecideData) Natural
transition3ActiveDecideWriteLastAmount d = d.amount
transition5ActiveRetireGuard :: B.PayloadProj JourneyRegs JourneyCommand (RegFieldsOf RetireData) -> K.HsPred JourneyRegs JourneyCommand
transition5ActiveRetireGuard d = K.PCmp K.CmpGt (d.amount) (K.lit (0 :: Natural))
transition5ActiveRetireWriteLastAmount :: B.PayloadProj JourneyRegs JourneyCommand (RegFieldsOf RetireData) -> K.Term JourneyRegs JourneyCommand (RegFieldsOf RetireData) Natural
transition5ActiveRetireWriteLastAmount d = d.amount
transition6ActiveRetireGuard :: B.PayloadProj JourneyRegs JourneyCommand (RegFieldsOf RetireData) -> K.HsPred JourneyRegs JourneyCommand
transition6ActiveRetireGuard d = K.PCmp K.CmpLe (d.amount) (K.lit (0 :: Natural))
transition6ActiveRetireWriteLastAmount :: B.PayloadProj JourneyRegs JourneyCommand (RegFieldsOf RetireData) -> K.Term JourneyRegs JourneyCommand (RegFieldsOf RetireData) Natural
transition6ActiveRetireWriteLastAmount d = d.amount