web3-0.8.0.0: src/Network/Ethereum/Api/Net.hs
{-# LANGUAGE FlexibleContexts #-}
{-# LANGUAGE OverloadedStrings #-}
-- |
-- Module : Network.Ethereum.Api.Net
-- Copyright : Alexander Krupenkin 2016-2018
-- License : BSD3
--
-- Maintainer : mail@akru.me
-- Stability : experimental
-- Portability : unknown
--
-- Ethereum node JSON-RPC API methods with `net_` prefix.
--
module Network.Ethereum.Api.Net where
import Data.Text (Text)
import Network.Ethereum.Api.Types (Quantity)
import Network.JsonRpc.TinyClient (JsonRpc (..))
-- | Returns the current network id.
version :: JsonRpc m => m Text
{-# INLINE version #-}
version = remote "net_version"
-- | Returns true if client is actively listening for network connections.
listening :: JsonRpc m => m Bool
{-# INLINE listening #-}
listening = remote "net_listening"
-- | Returns number of peers currently connected to the client.
peerCount :: JsonRpc m => m Quantity
{-# INLINE peerCount #-}
peerCount = remote "net_peerCount"