gore-and-ash-network: Core module for Gore&Ash engine with low level network API

[ bsd3, game, library ] [ Propose Tags ] [ Report a vulnerability ]

Please see README.md


[Skip to Readme]

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

  • No Candidates
Versions [RSS] 1.1.0.0, 1.1.0.1, 1.2.0.0, 1.2.1.0, 1.2.2.0, 1.3.2.0, 1.4.0.0 (info)
Change log CHANGELOG.md
Dependencies base (>=4.7 && <5), bytestring (>=0.10.6.0), containers (>=0.5.6.2), deepseq (>=1.4.1.1), exceptions (>=0.8.0.2), extra (>=1.4.2), ghc-prim, gore-and-ash (>=1.1.0.0), gore-and-ash-logging (>=2.0.0.0), hashable (>=1.2.3.3), integer-gmp (>=1.0.0.0), mtl (>=2.2.1), network (>=2.6.2.1), resourcet (>=1.1.7.1), text (>=1.2.1.3), text-show (>=2), transformers (>=0.4.2), transformers-base (>=0.4.4), typesafe-endian (>=0.1), unordered-containers (>=0.2.5.1) [details]
License BSD-3-Clause[multiple license files]
Copyright 2015-2016 Anton Gushcha, 2013-2015 John Ericson, 2002-2013 Lee Salzman
Author Anton Gushcha John Ericson Lee Salzman
Maintainer ncrashed@gmail.com
Category Game
Home page https://github.com/Teaspot-Studio/gore-and-ash-network
Bug tracker https://github.com/Teaspot-Studio/gore-and-ash-network/issues
Source repo head: git clone git@github.com:Teaspot-Studio/gore-and-ash-network.git
Uploaded by NCrashed at 2016-11-19T13:24:30Z
Distributions
Reverse Dependencies 1 direct, 0 indirect [details]
Downloads 4464 total (17 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2016-11-19 [all 1 reports]

Readme for gore-and-ash-network-1.4.0.0

[back to package description]

gore-and-ash-network

The module provides facilities for basic networking for Gore&Ash engine.

The module depends on gore-and-ash-logging module.

Installing

Add following to your stack.yml to packages section:

- location:
    git: https://github.com/Teaspot-Studio/gore-and-ash-network.git
    commit: <PLACE HERE FULL HASH OF LAST COMMIT> 

When defining you application stack, add NetworkT:

type AppStack = ModuleStack [LoggingT, NetworkT, ... other modules ... ] IO

And derive NetworkMonad for your resulting AppMonad:

newtype AppMonad a = AppMonad (AppStack a)
  deriving (Functor, Applicative, Monad, MonadFix, MonadIO, MonadThrow, MonadCatch LoggingMonad, NetworkMonad)