gi-gio-2.0.34: Gio bindings
CopyrightWill Thompson and Iñaki García Etxebarria
LicenseLGPL-2.1
MaintainerIñaki García Etxebarria
Safe HaskellNone
LanguageHaskell2010

GI.Gio.Interfaces.DebugController

Description

GDebugController is an interface to expose control of debugging features and debug output.

It is implemented on Linux using DebugControllerDBus, which exposes a D-Bus interface to allow authenticated peers to control debug features in this process.

Whether debug output is enabled is exposed as DebugController:debug-enabled. This controls logSetDebugEnabled by default. Application code may connect to the Object::notify signal for it to control other parts of its debug infrastructure as necessary.

If your application or service is using the default GLib log writer function, creating one of the built-in implementations of GDebugController should be all that’s needed to dynamically enable or disable debug output.

Since: 2.72

Synopsis

Exported types

class (GObject o, IsDescendantOf DebugController o) => IsDebugController o Source #

Type class for types which can be safely cast to DebugController, for instance with toDebugController.

Instances

Instances details
(GObject o, IsDescendantOf DebugController o) => IsDebugController o Source # 
Instance details

Defined in GI.Gio.Interfaces.DebugController

toDebugController :: (MonadIO m, IsDebugController o) => o -> m DebugController Source #

Cast to DebugController, for types for which this is known to be safe. For general casts, use castTo.

Methods

getDebugEnabled

debugControllerGetDebugEnabled Source #

Arguments

:: (HasCallStack, MonadIO m, IsDebugController a) 
=> a

self: a DebugController

-> m Bool

Returns: True if debug output should be exposed, False otherwise

Get the value of DebugController:debug-enabled.

Since: 2.72

setDebugEnabled

debugControllerSetDebugEnabled Source #

Arguments

:: (HasCallStack, MonadIO m, IsDebugController a) 
=> a

self: a DebugController

-> Bool

debugEnabled: True if debug output should be exposed, False otherwise

-> m () 

Set the value of DebugController:debug-enabled.

Since: 2.72

Properties

debugEnabled

True if debug output should be exposed (for example by forwarding it to the journal), False otherwise.

Since: 2.72

constructDebugControllerDebugEnabled :: (IsDebugController o, MonadIO m) => Bool -> m (GValueConstruct o) Source #

Construct a GValueConstruct with valid value for the “debug-enabled” property. This is rarely needed directly, but it is used by new.

getDebugControllerDebugEnabled :: (MonadIO m, IsDebugController o) => o -> m Bool Source #

Get the value of the “debug-enabled” property. When overloading is enabled, this is equivalent to

get debugController #debugEnabled

setDebugControllerDebugEnabled :: (MonadIO m, IsDebugController o) => o -> Bool -> m () Source #

Set the value of the “debug-enabled” property. When overloading is enabled, this is equivalent to

set debugController [ #debugEnabled := value ]