socketed-0.1.0.0: Main.hs
module Main where
import Data.Semigroup ((<>))
import qualified Options.Applicative as Opt
import Network.Socketed (SocketedOptions(..), runSocketedServer)
params :: Opt.Parser SocketedOptions
params = SocketedOptions
<$> Opt.strOption
( Opt.long "bind"
<> Opt.short 'b'
<> Opt.help "host ip the server will be bind to"
<> Opt.showDefault
<> Opt.value "0.0.0.0"
<> Opt.metavar "STRING" )
<*> Opt.option Opt.auto
( Opt.long "port"
<> Opt.short 'p'
<> Opt.help "port number the server will be running on"
<> Opt.showDefault
<> Opt.value 3000
<> Opt.metavar "INT" )
main :: IO ()
main = Opt.execParser opts >>= runSocketedServer
where
opts = Opt.info (Opt.helper <*> params)
(
Opt.fullDesc
<> Opt.progDesc "socketed"
<> Opt.header "socketed"
)