Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Pythia.Services.Battery.SysFs
Description
This module provides functionality for retrieving battery information using SysFS.
Since: 0.1
Synopsis
- batteryQuery :: (MonadFileReader m, MonadPathReader m, MonadThrow m) => m Battery
- supported :: (MonadCatch m, MonadPathReader m) => m Bool
- data SysFsDirNotFound = MkSysFsDirNotFound
- data SysFsBatteryDirNotFound = MkSysFsBatteryDirNotFound
- newtype SysFsFileNotFound = MkSysFsFileNotFound OsPath
- newtype SysFsBatteryParseError = MkSysFsBatteryParseError Text
Query
batteryQuery :: (MonadFileReader m, MonadPathReader m, MonadThrow m) => m Battery Source #
/sys/class
query for Battery
.
Since: 0.1
supported :: (MonadCatch m, MonadPathReader m) => m Bool Source #
Returns a boolean determining if this program is supported on the
current system. In particular, we return True
if the directory
/sys(fs)/class/power_supply/BAT[0-5]+
exists.
Example valid paths:
/sys/class/power_supply/BAT0
/sysfs/class/power_supply/BAT3
/sys/class/power_supply/BAT
Since: 0.1
Misc
data SysFsDirNotFound Source #
Sysfs dir not found error.
Examples
>>>
displayException MkSysFsDirNotFound
"Could not find either sysfs dirs: /sys/class/power_supply, /sysfs/class/power_supply"
Since: 0.1
Constructors
MkSysFsDirNotFound |
Instances
Exception SysFsDirNotFound Source # | Since: 0.1 |
Defined in Pythia.Services.Battery.SysFs Methods toException :: SysFsDirNotFound -> SomeException # | |
Show SysFsDirNotFound Source # | Since: 0.1 |
Defined in Pythia.Services.Battery.SysFs Methods showsPrec :: Int -> SysFsDirNotFound -> ShowS # show :: SysFsDirNotFound -> String # showList :: [SysFsDirNotFound] -> ShowS # | |
Eq SysFsDirNotFound Source # | Since: 0.1 |
Defined in Pythia.Services.Battery.SysFs Methods (==) :: SysFsDirNotFound -> SysFsDirNotFound -> Bool # (/=) :: SysFsDirNotFound -> SysFsDirNotFound -> Bool # |
data SysFsBatteryDirNotFound Source #
Sysfs battery dir not found.
Examples
>>>
displayException MkSysFsBatteryDirNotFound
"Could not find BAT[0-5]? subdirectory under /sys(fs)/class/power_supply"
Since: 0.1
Constructors
MkSysFsBatteryDirNotFound |
Instances
Exception SysFsBatteryDirNotFound Source # | Since: 0.1 |
Defined in Pythia.Services.Battery.SysFs | |
Show SysFsBatteryDirNotFound Source # | Since: 0.1 |
Defined in Pythia.Services.Battery.SysFs Methods showsPrec :: Int -> SysFsBatteryDirNotFound -> ShowS # show :: SysFsBatteryDirNotFound -> String # showList :: [SysFsBatteryDirNotFound] -> ShowS # | |
Eq SysFsBatteryDirNotFound Source # | Since: 0.1 |
Defined in Pythia.Services.Battery.SysFs Methods (==) :: SysFsBatteryDirNotFound -> SysFsBatteryDirNotFound -> Bool # (/=) :: SysFsBatteryDirNotFound -> SysFsBatteryDirNotFound -> Bool # |
newtype SysFsFileNotFound Source #
Sysfs file not found.
Examples
>>>
displayException $ MkSysFsFileNotFound "foo"
"Could not find sysfs file: foo"
Since: 0.1
Constructors
MkSysFsFileNotFound OsPath |
Instances
Exception SysFsFileNotFound Source # | Since: 0.1 |
Defined in Pythia.Services.Battery.SysFs Methods toException :: SysFsFileNotFound -> SomeException # | |
Show SysFsFileNotFound Source # | Since: 0.1 |
Defined in Pythia.Services.Battery.SysFs Methods showsPrec :: Int -> SysFsFileNotFound -> ShowS # show :: SysFsFileNotFound -> String # showList :: [SysFsFileNotFound] -> ShowS # | |
Eq SysFsFileNotFound Source # | Since: 0.1 |
Defined in Pythia.Services.Battery.SysFs Methods (==) :: SysFsFileNotFound -> SysFsFileNotFound -> Bool # (/=) :: SysFsFileNotFound -> SysFsFileNotFound -> Bool # |
newtype SysFsBatteryParseError Source #
Sysfs battery parse error.
Examples
>>>
displayException $ MkSysFsBatteryParseError "bad"
"SysFs parse error: bad"
Since: 0.1
Constructors
MkSysFsBatteryParseError Text |
Instances
Exception SysFsBatteryParseError Source # | Since: 0.1 |
Defined in Pythia.Services.Battery.SysFs | |
Show SysFsBatteryParseError Source # | Since: 0.1 |
Defined in Pythia.Services.Battery.SysFs Methods showsPrec :: Int -> SysFsBatteryParseError -> ShowS # show :: SysFsBatteryParseError -> String # showList :: [SysFsBatteryParseError] -> ShowS # | |
Eq SysFsBatteryParseError Source # | Since: 0.1 |
Defined in Pythia.Services.Battery.SysFs Methods (==) :: SysFsBatteryParseError -> SysFsBatteryParseError -> Bool # (/=) :: SysFsBatteryParseError -> SysFsBatteryParseError -> Bool # |