twiml-0.1.0.0: src/Text/XML/Twiml/Verbs/Leave.hs
{-#LANGUAGE FlexibleContexts #-}
{-#LANGUAGE FlexibleInstances #-}
{-#LANGUAGE MultiParamTypeClasses #-}
{-#LANGUAGE TypeOperators #-}
module Text.XML.Twiml.Verbs.Leave
( -- * @\<Leave\>@
-- $leave
Leave
-- ** Constructor
, leave
) where
import Text.XML.Twiml.Types
import Text.XML.Twiml.Verbs.End (End)
import Text.XML.Twiml.Internal (Twiml(..), Twiml', TwimlF(..))
{- $leave This example
@
module Example where
import Text.XML.Twiml
example
= respond
. leave
$ end
@
produces the following TwiML response:
@
\<?xml version=\"1.0\" encoding=\"UTF-8\"?\>
\<Response\>
\<Leave \/\>
\<\/Response\>
@
-}
newtype Leave p = Leave { fromLeave :: Twiml' p }
instance (p :/~ Gather') => Twiml p (Leave p) where toTwiml' = fromLeave
leave :: (p :/~ Gather') => End p -> Leave p
leave = const . Leave $ Fix LeaveF