packages feed

haal-models-0.1.0.0: src/Haal/Models/MQTT/EmqttSingleClient.hs

-- Generated by haal-gen. Do not edit manually.
module Haal.Models.MQTT.EmqttSingleClient
    ( EmqttSingleClientInput (..)
    , EmqttSingleClientOutput (..)
    , emqttSingleClient
    ) where

import qualified Data.Set as Set
import Haal.Automaton.MealyAutomaton (MealyAutomaton, mkMealyAutomaton)

data EmqttSingleClientInput
    = In_Connect
    | In_PublishQoS0
    | In_PublishQoS1
    | In_PublishRetain
    | In_DeleteRetained
    | In_Subscribe
    | In_UnSubScribe
    | In_SubscribeRetained
    | In_UnSubScribeRetained
    | In_Disconnect
    | In_DisconnectTCP
    deriving (Show, Eq, Ord, Enum, Bounded)

data EmqttSingleClientOutput
    = Out_ConnAck
    | Out_ConnectionClosed
    | Out_Empty
    | Out_PubAck
    | Out_SubAck
    | Out_UnSubAck
    | Out_Pub_my_topic_messageQos0
    | Out_Pub_my_topic_messageQos1___PubAck
    | Out_Pub_my_topic_retained_retained_message___PubAck
    | Out_Pub_my_topic_retained____PubAck
    | Out_SubAck__Pub_my_topic_retained_retained_message
    deriving (Show, Eq, Ord, Enum, Bounded)

emqttSingleClient :: MealyAutomaton Int EmqttSingleClientInput EmqttSingleClientOutput
emqttSingleClient = mkMealyAutomaton delta lambda (Set.fromList [0..9]) 0
  where
    delta 0 In_Connect = 1
    delta 0 In_PublishQoS0 = 0
    delta 0 In_PublishQoS1 = 0
    delta 0 In_PublishRetain = 0
    delta 0 In_DeleteRetained = 0
    delta 0 In_Subscribe = 0
    delta 0 In_UnSubScribe = 0
    delta 0 In_SubscribeRetained = 0
    delta 0 In_UnSubScribeRetained = 0
    delta 0 In_Disconnect = 0
    delta 0 In_DisconnectTCP = 0
    delta 1 In_Connect = 2
    delta 1 In_PublishQoS0 = 1
    delta 1 In_PublishQoS1 = 1
    delta 1 In_PublishRetain = 3
    delta 1 In_DeleteRetained = 1
    delta 1 In_Subscribe = 4
    delta 1 In_UnSubScribe = 1
    delta 1 In_SubscribeRetained = 5
    delta 1 In_UnSubScribeRetained = 1
    delta 1 In_Disconnect = 2
    delta 1 In_DisconnectTCP = 2
    delta 2 In_Connect = 2
    delta 2 In_PublishQoS0 = 2
    delta 2 In_PublishQoS1 = 2
    delta 2 In_PublishRetain = 2
    delta 2 In_DeleteRetained = 2
    delta 2 In_Subscribe = 2
    delta 2 In_UnSubScribe = 2
    delta 2 In_SubscribeRetained = 2
    delta 2 In_UnSubScribeRetained = 2
    delta 2 In_Disconnect = 2
    delta 2 In_DisconnectTCP = 2
    delta 4 In_Connect = 2
    delta 4 In_PublishQoS0 = 4
    delta 4 In_PublishQoS1 = 4
    delta 4 In_PublishRetain = 6
    delta 4 In_DeleteRetained = 4
    delta 4 In_Subscribe = 4
    delta 4 In_UnSubScribe = 1
    delta 4 In_SubscribeRetained = 7
    delta 4 In_UnSubScribeRetained = 4
    delta 4 In_Disconnect = 2
    delta 4 In_DisconnectTCP = 2
    delta 5 In_Connect = 2
    delta 5 In_PublishQoS0 = 5
    delta 5 In_PublishQoS1 = 5
    delta 5 In_PublishRetain = 8
    delta 5 In_DeleteRetained = 5
    delta 5 In_Subscribe = 7
    delta 5 In_UnSubScribe = 5
    delta 5 In_SubscribeRetained = 5
    delta 5 In_UnSubScribeRetained = 1
    delta 5 In_Disconnect = 2
    delta 5 In_DisconnectTCP = 2
    delta 3 In_Connect = 2
    delta 3 In_PublishQoS0 = 3
    delta 3 In_PublishQoS1 = 3
    delta 3 In_PublishRetain = 3
    delta 3 In_DeleteRetained = 1
    delta 3 In_Subscribe = 6
    delta 3 In_UnSubScribe = 3
    delta 3 In_SubscribeRetained = 8
    delta 3 In_UnSubScribeRetained = 3
    delta 3 In_Disconnect = 2
    delta 3 In_DisconnectTCP = 2
    delta 6 In_Connect = 2
    delta 6 In_PublishQoS0 = 6
    delta 6 In_PublishQoS1 = 6
    delta 6 In_PublishRetain = 6
    delta 6 In_DeleteRetained = 4
    delta 6 In_Subscribe = 6
    delta 6 In_UnSubScribe = 3
    delta 6 In_SubscribeRetained = 9
    delta 6 In_UnSubScribeRetained = 6
    delta 6 In_Disconnect = 2
    delta 6 In_DisconnectTCP = 2
    delta 8 In_Connect = 2
    delta 8 In_PublishQoS0 = 8
    delta 8 In_PublishQoS1 = 8
    delta 8 In_PublishRetain = 8
    delta 8 In_DeleteRetained = 5
    delta 8 In_Subscribe = 9
    delta 8 In_UnSubScribe = 8
    delta 8 In_SubscribeRetained = 8
    delta 8 In_UnSubScribeRetained = 3
    delta 8 In_Disconnect = 2
    delta 8 In_DisconnectTCP = 2
    delta 7 In_Connect = 2
    delta 7 In_PublishQoS0 = 7
    delta 7 In_PublishQoS1 = 7
    delta 7 In_PublishRetain = 9
    delta 7 In_DeleteRetained = 7
    delta 7 In_Subscribe = 7
    delta 7 In_UnSubScribe = 5
    delta 7 In_SubscribeRetained = 7
    delta 7 In_UnSubScribeRetained = 4
    delta 7 In_Disconnect = 2
    delta 7 In_DisconnectTCP = 2
    delta 9 In_Connect = 2
    delta 9 In_PublishQoS0 = 9
    delta 9 In_PublishQoS1 = 9
    delta 9 In_PublishRetain = 9
    delta 9 In_DeleteRetained = 7
    delta 9 In_Subscribe = 9
    delta 9 In_UnSubScribe = 8
    delta 9 In_SubscribeRetained = 9
    delta 9 In_UnSubScribeRetained = 6
    delta 9 In_Disconnect = 2
    delta 9 In_DisconnectTCP = 2
    delta _ _ = error "haal-gen: undefined transition"
    lambda 0 In_Connect = Out_ConnAck
    lambda 0 In_PublishQoS0 = Out_ConnectionClosed
    lambda 0 In_PublishQoS1 = Out_ConnectionClosed
    lambda 0 In_PublishRetain = Out_ConnectionClosed
    lambda 0 In_DeleteRetained = Out_ConnectionClosed
    lambda 0 In_Subscribe = Out_ConnectionClosed
    lambda 0 In_UnSubScribe = Out_ConnectionClosed
    lambda 0 In_SubscribeRetained = Out_ConnectionClosed
    lambda 0 In_UnSubScribeRetained = Out_ConnectionClosed
    lambda 0 In_Disconnect = Out_ConnectionClosed
    lambda 0 In_DisconnectTCP = Out_ConnectionClosed
    lambda 1 In_Connect = Out_ConnectionClosed
    lambda 1 In_PublishQoS0 = Out_Empty
    lambda 1 In_PublishQoS1 = Out_PubAck
    lambda 1 In_PublishRetain = Out_PubAck
    lambda 1 In_DeleteRetained = Out_PubAck
    lambda 1 In_Subscribe = Out_SubAck
    lambda 1 In_UnSubScribe = Out_UnSubAck
    lambda 1 In_SubscribeRetained = Out_SubAck
    lambda 1 In_UnSubScribeRetained = Out_UnSubAck
    lambda 1 In_Disconnect = Out_ConnectionClosed
    lambda 1 In_DisconnectTCP = Out_ConnectionClosed
    lambda 2 In_Connect = Out_ConnectionClosed
    lambda 2 In_PublishQoS0 = Out_ConnectionClosed
    lambda 2 In_PublishQoS1 = Out_ConnectionClosed
    lambda 2 In_PublishRetain = Out_ConnectionClosed
    lambda 2 In_DeleteRetained = Out_ConnectionClosed
    lambda 2 In_Subscribe = Out_ConnectionClosed
    lambda 2 In_UnSubScribe = Out_ConnectionClosed
    lambda 2 In_SubscribeRetained = Out_ConnectionClosed
    lambda 2 In_UnSubScribeRetained = Out_ConnectionClosed
    lambda 2 In_Disconnect = Out_ConnectionClosed
    lambda 2 In_DisconnectTCP = Out_ConnectionClosed
    lambda 4 In_Connect = Out_ConnectionClosed
    lambda 4 In_PublishQoS0 = Out_Pub_my_topic_messageQos0
    lambda 4 In_PublishQoS1 = Out_Pub_my_topic_messageQos1___PubAck
    lambda 4 In_PublishRetain = Out_PubAck
    lambda 4 In_DeleteRetained = Out_PubAck
    lambda 4 In_Subscribe = Out_SubAck
    lambda 4 In_UnSubScribe = Out_UnSubAck
    lambda 4 In_SubscribeRetained = Out_SubAck
    lambda 4 In_UnSubScribeRetained = Out_UnSubAck
    lambda 4 In_Disconnect = Out_ConnectionClosed
    lambda 4 In_DisconnectTCP = Out_ConnectionClosed
    lambda 5 In_Connect = Out_ConnectionClosed
    lambda 5 In_PublishQoS0 = Out_Empty
    lambda 5 In_PublishQoS1 = Out_PubAck
    lambda 5 In_PublishRetain = Out_Pub_my_topic_retained_retained_message___PubAck
    lambda 5 In_DeleteRetained = Out_Pub_my_topic_retained____PubAck
    lambda 5 In_Subscribe = Out_SubAck
    lambda 5 In_UnSubScribe = Out_UnSubAck
    lambda 5 In_SubscribeRetained = Out_SubAck
    lambda 5 In_UnSubScribeRetained = Out_UnSubAck
    lambda 5 In_Disconnect = Out_ConnectionClosed
    lambda 5 In_DisconnectTCP = Out_ConnectionClosed
    lambda 3 In_Connect = Out_ConnectionClosed
    lambda 3 In_PublishQoS0 = Out_Empty
    lambda 3 In_PublishQoS1 = Out_PubAck
    lambda 3 In_PublishRetain = Out_PubAck
    lambda 3 In_DeleteRetained = Out_PubAck
    lambda 3 In_Subscribe = Out_SubAck
    lambda 3 In_UnSubScribe = Out_UnSubAck
    lambda 3 In_SubscribeRetained = Out_SubAck__Pub_my_topic_retained_retained_message
    lambda 3 In_UnSubScribeRetained = Out_UnSubAck
    lambda 3 In_Disconnect = Out_ConnectionClosed
    lambda 3 In_DisconnectTCP = Out_ConnectionClosed
    lambda 6 In_Connect = Out_ConnectionClosed
    lambda 6 In_PublishQoS0 = Out_Pub_my_topic_messageQos0
    lambda 6 In_PublishQoS1 = Out_Pub_my_topic_messageQos1___PubAck
    lambda 6 In_PublishRetain = Out_PubAck
    lambda 6 In_DeleteRetained = Out_PubAck
    lambda 6 In_Subscribe = Out_SubAck
    lambda 6 In_UnSubScribe = Out_UnSubAck
    lambda 6 In_SubscribeRetained = Out_SubAck__Pub_my_topic_retained_retained_message
    lambda 6 In_UnSubScribeRetained = Out_UnSubAck
    lambda 6 In_Disconnect = Out_ConnectionClosed
    lambda 6 In_DisconnectTCP = Out_ConnectionClosed
    lambda 8 In_Connect = Out_ConnectionClosed
    lambda 8 In_PublishQoS0 = Out_Empty
    lambda 8 In_PublishQoS1 = Out_PubAck
    lambda 8 In_PublishRetain = Out_Pub_my_topic_retained_retained_message___PubAck
    lambda 8 In_DeleteRetained = Out_Pub_my_topic_retained____PubAck
    lambda 8 In_Subscribe = Out_SubAck
    lambda 8 In_UnSubScribe = Out_UnSubAck
    lambda 8 In_SubscribeRetained = Out_SubAck
    lambda 8 In_UnSubScribeRetained = Out_UnSubAck
    lambda 8 In_Disconnect = Out_ConnectionClosed
    lambda 8 In_DisconnectTCP = Out_ConnectionClosed
    lambda 7 In_Connect = Out_ConnectionClosed
    lambda 7 In_PublishQoS0 = Out_Pub_my_topic_messageQos0
    lambda 7 In_PublishQoS1 = Out_Pub_my_topic_messageQos1___PubAck
    lambda 7 In_PublishRetain = Out_Pub_my_topic_retained_retained_message___PubAck
    lambda 7 In_DeleteRetained = Out_Pub_my_topic_retained____PubAck
    lambda 7 In_Subscribe = Out_SubAck
    lambda 7 In_UnSubScribe = Out_UnSubAck
    lambda 7 In_SubscribeRetained = Out_SubAck
    lambda 7 In_UnSubScribeRetained = Out_UnSubAck
    lambda 7 In_Disconnect = Out_ConnectionClosed
    lambda 7 In_DisconnectTCP = Out_ConnectionClosed
    lambda 9 In_Connect = Out_ConnectionClosed
    lambda 9 In_PublishQoS0 = Out_Pub_my_topic_messageQos0
    lambda 9 In_PublishQoS1 = Out_Pub_my_topic_messageQos1___PubAck
    lambda 9 In_PublishRetain = Out_Pub_my_topic_retained_retained_message___PubAck
    lambda 9 In_DeleteRetained = Out_Pub_my_topic_retained____PubAck
    lambda 9 In_Subscribe = Out_SubAck
    lambda 9 In_UnSubScribe = Out_UnSubAck
    lambda 9 In_SubscribeRetained = Out_SubAck
    lambda 9 In_UnSubScribeRetained = Out_UnSubAck
    lambda 9 In_Disconnect = Out_ConnectionClosed
    lambda 9 In_DisconnectTCP = Out_ConnectionClosed
    lambda _ _ = error "haal-gen: undefined transition"