{-# LANGUAGE TypeApplications #-}


-- | Copyright  : Will Thompson and Iñaki García Etxebarria
-- License    : LGPL-2.1
-- Maintainer : Iñaki García Etxebarria
-- 
-- Bridging Settings

#if (MIN_VERSION_haskell_gi_overloading(1,0,0) && !defined(__HADDOCK_VERSION__))
#define ENABLE_OVERLOADING
#endif

module GI.NM.Objects.SettingBridge
    ( 

-- * Exported types
    SettingBridge(..)                       ,
    IsSettingBridge                         ,
    toSettingBridge                         ,


 -- * Methods
-- | 
-- 
--  === __Click to display all available methods, including inherited ones__
-- ==== Methods
-- [addVlan]("GI.NM.Objects.SettingBridge#g:method:addVlan"), [bindProperty]("GI.GObject.Objects.Object#g:method:bindProperty"), [bindPropertyFull]("GI.GObject.Objects.Object#g:method:bindPropertyFull"), [clearVlans]("GI.NM.Objects.SettingBridge#g:method:clearVlans"), [compare]("GI.NM.Objects.Setting#g:method:compare"), [diff]("GI.NM.Objects.Setting#g:method:diff"), [duplicate]("GI.NM.Objects.Setting#g:method:duplicate"), [enumerateValues]("GI.NM.Objects.Setting#g:method:enumerateValues"), [forceFloating]("GI.GObject.Objects.Object#g:method:forceFloating"), [freezeNotify]("GI.GObject.Objects.Object#g:method:freezeNotify"), [getv]("GI.GObject.Objects.Object#g:method:getv"), [isFloating]("GI.GObject.Objects.Object#g:method:isFloating"), [notify]("GI.GObject.Objects.Object#g:method:notify"), [notifyByPspec]("GI.GObject.Objects.Object#g:method:notifyByPspec"), [optionClearByName]("GI.NM.Objects.Setting#g:method:optionClearByName"), [optionGet]("GI.NM.Objects.Setting#g:method:optionGet"), [optionGetAllNames]("GI.NM.Objects.Setting#g:method:optionGetAllNames"), [optionGetBoolean]("GI.NM.Objects.Setting#g:method:optionGetBoolean"), [optionGetUint32]("GI.NM.Objects.Setting#g:method:optionGetUint32"), [optionSet]("GI.NM.Objects.Setting#g:method:optionSet"), [optionSetBoolean]("GI.NM.Objects.Setting#g:method:optionSetBoolean"), [optionSetUint32]("GI.NM.Objects.Setting#g:method:optionSetUint32"), [ref]("GI.GObject.Objects.Object#g:method:ref"), [refSink]("GI.GObject.Objects.Object#g:method:refSink"), [removeVlan]("GI.NM.Objects.SettingBridge#g:method:removeVlan"), [removeVlanByVid]("GI.NM.Objects.SettingBridge#g:method:removeVlanByVid"), [runDispose]("GI.GObject.Objects.Object#g:method:runDispose"), [stealData]("GI.GObject.Objects.Object#g:method:stealData"), [stealQdata]("GI.GObject.Objects.Object#g:method:stealQdata"), [thawNotify]("GI.GObject.Objects.Object#g:method:thawNotify"), [toString]("GI.NM.Objects.Setting#g:method:toString"), [unref]("GI.GObject.Objects.Object#g:method:unref"), [verify]("GI.NM.Objects.Setting#g:method:verify"), [verifySecrets]("GI.NM.Objects.Setting#g:method:verifySecrets"), [watchClosure]("GI.GObject.Objects.Object#g:method:watchClosure").
-- 
-- ==== Getters
-- [getAgeingTime]("GI.NM.Objects.SettingBridge#g:method:getAgeingTime"), [getData]("GI.GObject.Objects.Object#g:method:getData"), [getDbusPropertyType]("GI.NM.Objects.Setting#g:method:getDbusPropertyType"), [getForwardDelay]("GI.NM.Objects.SettingBridge#g:method:getForwardDelay"), [getGroupAddress]("GI.NM.Objects.SettingBridge#g:method:getGroupAddress"), [getGroupForwardMask]("GI.NM.Objects.SettingBridge#g:method:getGroupForwardMask"), [getHelloTime]("GI.NM.Objects.SettingBridge#g:method:getHelloTime"), [getMacAddress]("GI.NM.Objects.SettingBridge#g:method:getMacAddress"), [getMaxAge]("GI.NM.Objects.SettingBridge#g:method:getMaxAge"), [getMulticastHashMax]("GI.NM.Objects.SettingBridge#g:method:getMulticastHashMax"), [getMulticastLastMemberCount]("GI.NM.Objects.SettingBridge#g:method:getMulticastLastMemberCount"), [getMulticastLastMemberInterval]("GI.NM.Objects.SettingBridge#g:method:getMulticastLastMemberInterval"), [getMulticastMembershipInterval]("GI.NM.Objects.SettingBridge#g:method:getMulticastMembershipInterval"), [getMulticastQuerier]("GI.NM.Objects.SettingBridge#g:method:getMulticastQuerier"), [getMulticastQuerierInterval]("GI.NM.Objects.SettingBridge#g:method:getMulticastQuerierInterval"), [getMulticastQueryInterval]("GI.NM.Objects.SettingBridge#g:method:getMulticastQueryInterval"), [getMulticastQueryResponseInterval]("GI.NM.Objects.SettingBridge#g:method:getMulticastQueryResponseInterval"), [getMulticastQueryUseIfaddr]("GI.NM.Objects.SettingBridge#g:method:getMulticastQueryUseIfaddr"), [getMulticastRouter]("GI.NM.Objects.SettingBridge#g:method:getMulticastRouter"), [getMulticastSnooping]("GI.NM.Objects.SettingBridge#g:method:getMulticastSnooping"), [getMulticastStartupQueryCount]("GI.NM.Objects.SettingBridge#g:method:getMulticastStartupQueryCount"), [getMulticastStartupQueryInterval]("GI.NM.Objects.SettingBridge#g:method:getMulticastStartupQueryInterval"), [getName]("GI.NM.Objects.Setting#g:method:getName"), [getNumVlans]("GI.NM.Objects.SettingBridge#g:method:getNumVlans"), [getPriority]("GI.NM.Objects.SettingBridge#g:method:getPriority"), [getProperty]("GI.GObject.Objects.Object#g:method:getProperty"), [getQdata]("GI.GObject.Objects.Object#g:method:getQdata"), [getSecretFlags]("GI.NM.Objects.Setting#g:method:getSecretFlags"), [getStp]("GI.NM.Objects.SettingBridge#g:method:getStp"), [getVlan]("GI.NM.Objects.SettingBridge#g:method:getVlan"), [getVlanDefaultPvid]("GI.NM.Objects.SettingBridge#g:method:getVlanDefaultPvid"), [getVlanFiltering]("GI.NM.Objects.SettingBridge#g:method:getVlanFiltering"), [getVlanProtocol]("GI.NM.Objects.SettingBridge#g:method:getVlanProtocol"), [getVlanStatsEnabled]("GI.NM.Objects.SettingBridge#g:method:getVlanStatsEnabled").
-- 
-- ==== Setters
-- [setData]("GI.GObject.Objects.Object#g:method:setData"), [setDataFull]("GI.GObject.Objects.Object#g:method:setDataFull"), [setProperty]("GI.GObject.Objects.Object#g:method:setProperty"), [setSecretFlags]("GI.NM.Objects.Setting#g:method:setSecretFlags").

#if defined(ENABLE_OVERLOADING)
    ResolveSettingBridgeMethod              ,
#endif

-- ** addVlan #method:addVlan#

#if defined(ENABLE_OVERLOADING)
    SettingBridgeAddVlanMethodInfo          ,
#endif
    settingBridgeAddVlan                    ,


-- ** clearVlans #method:clearVlans#

#if defined(ENABLE_OVERLOADING)
    SettingBridgeClearVlansMethodInfo       ,
#endif
    settingBridgeClearVlans                 ,


-- ** getAgeingTime #method:getAgeingTime#

#if defined(ENABLE_OVERLOADING)
    SettingBridgeGetAgeingTimeMethodInfo    ,
#endif
    settingBridgeGetAgeingTime              ,


-- ** getForwardDelay #method:getForwardDelay#

#if defined(ENABLE_OVERLOADING)
    SettingBridgeGetForwardDelayMethodInfo  ,
#endif
    settingBridgeGetForwardDelay            ,


-- ** getGroupAddress #method:getGroupAddress#

#if defined(ENABLE_OVERLOADING)
    SettingBridgeGetGroupAddressMethodInfo  ,
#endif
    settingBridgeGetGroupAddress            ,


-- ** getGroupForwardMask #method:getGroupForwardMask#

#if defined(ENABLE_OVERLOADING)
    SettingBridgeGetGroupForwardMaskMethodInfo,
#endif
    settingBridgeGetGroupForwardMask        ,


-- ** getHelloTime #method:getHelloTime#

#if defined(ENABLE_OVERLOADING)
    SettingBridgeGetHelloTimeMethodInfo     ,
#endif
    settingBridgeGetHelloTime               ,


-- ** getMacAddress #method:getMacAddress#

#if defined(ENABLE_OVERLOADING)
    SettingBridgeGetMacAddressMethodInfo    ,
#endif
    settingBridgeGetMacAddress              ,


-- ** getMaxAge #method:getMaxAge#

#if defined(ENABLE_OVERLOADING)
    SettingBridgeGetMaxAgeMethodInfo        ,
#endif
    settingBridgeGetMaxAge                  ,


-- ** getMulticastHashMax #method:getMulticastHashMax#

#if defined(ENABLE_OVERLOADING)
    SettingBridgeGetMulticastHashMaxMethodInfo,
#endif
    settingBridgeGetMulticastHashMax        ,


-- ** getMulticastLastMemberCount #method:getMulticastLastMemberCount#

#if defined(ENABLE_OVERLOADING)
    SettingBridgeGetMulticastLastMemberCountMethodInfo,
#endif
    settingBridgeGetMulticastLastMemberCount,


-- ** getMulticastLastMemberInterval #method:getMulticastLastMemberInterval#

#if defined(ENABLE_OVERLOADING)
    SettingBridgeGetMulticastLastMemberIntervalMethodInfo,
#endif
    settingBridgeGetMulticastLastMemberInterval,


-- ** getMulticastMembershipInterval #method:getMulticastMembershipInterval#

#if defined(ENABLE_OVERLOADING)
    SettingBridgeGetMulticastMembershipIntervalMethodInfo,
#endif
    settingBridgeGetMulticastMembershipInterval,


-- ** getMulticastQuerier #method:getMulticastQuerier#

#if defined(ENABLE_OVERLOADING)
    SettingBridgeGetMulticastQuerierMethodInfo,
#endif
    settingBridgeGetMulticastQuerier        ,


-- ** getMulticastQuerierInterval #method:getMulticastQuerierInterval#

#if defined(ENABLE_OVERLOADING)
    SettingBridgeGetMulticastQuerierIntervalMethodInfo,
#endif
    settingBridgeGetMulticastQuerierInterval,


-- ** getMulticastQueryInterval #method:getMulticastQueryInterval#

#if defined(ENABLE_OVERLOADING)
    SettingBridgeGetMulticastQueryIntervalMethodInfo,
#endif
    settingBridgeGetMulticastQueryInterval  ,


-- ** getMulticastQueryResponseInterval #method:getMulticastQueryResponseInterval#

#if defined(ENABLE_OVERLOADING)
    SettingBridgeGetMulticastQueryResponseIntervalMethodInfo,
#endif
    settingBridgeGetMulticastQueryResponseInterval,


-- ** getMulticastQueryUseIfaddr #method:getMulticastQueryUseIfaddr#

#if defined(ENABLE_OVERLOADING)
    SettingBridgeGetMulticastQueryUseIfaddrMethodInfo,
#endif
    settingBridgeGetMulticastQueryUseIfaddr ,


-- ** getMulticastRouter #method:getMulticastRouter#

#if defined(ENABLE_OVERLOADING)
    SettingBridgeGetMulticastRouterMethodInfo,
#endif
    settingBridgeGetMulticastRouter         ,


-- ** getMulticastSnooping #method:getMulticastSnooping#

#if defined(ENABLE_OVERLOADING)
    SettingBridgeGetMulticastSnoopingMethodInfo,
#endif
    settingBridgeGetMulticastSnooping       ,


-- ** getMulticastStartupQueryCount #method:getMulticastStartupQueryCount#

#if defined(ENABLE_OVERLOADING)
    SettingBridgeGetMulticastStartupQueryCountMethodInfo,
#endif
    settingBridgeGetMulticastStartupQueryCount,


-- ** getMulticastStartupQueryInterval #method:getMulticastStartupQueryInterval#

#if defined(ENABLE_OVERLOADING)
    SettingBridgeGetMulticastStartupQueryIntervalMethodInfo,
#endif
    settingBridgeGetMulticastStartupQueryInterval,


-- ** getNumVlans #method:getNumVlans#

#if defined(ENABLE_OVERLOADING)
    SettingBridgeGetNumVlansMethodInfo      ,
#endif
    settingBridgeGetNumVlans                ,


-- ** getPriority #method:getPriority#

#if defined(ENABLE_OVERLOADING)
    SettingBridgeGetPriorityMethodInfo      ,
#endif
    settingBridgeGetPriority                ,


-- ** getStp #method:getStp#

#if defined(ENABLE_OVERLOADING)
    SettingBridgeGetStpMethodInfo           ,
#endif
    settingBridgeGetStp                     ,


-- ** getVlan #method:getVlan#

#if defined(ENABLE_OVERLOADING)
    SettingBridgeGetVlanMethodInfo          ,
#endif
    settingBridgeGetVlan                    ,


-- ** getVlanDefaultPvid #method:getVlanDefaultPvid#

#if defined(ENABLE_OVERLOADING)
    SettingBridgeGetVlanDefaultPvidMethodInfo,
#endif
    settingBridgeGetVlanDefaultPvid         ,


-- ** getVlanFiltering #method:getVlanFiltering#

#if defined(ENABLE_OVERLOADING)
    SettingBridgeGetVlanFilteringMethodInfo ,
#endif
    settingBridgeGetVlanFiltering           ,


-- ** getVlanProtocol #method:getVlanProtocol#

#if defined(ENABLE_OVERLOADING)
    SettingBridgeGetVlanProtocolMethodInfo  ,
#endif
    settingBridgeGetVlanProtocol            ,


-- ** getVlanStatsEnabled #method:getVlanStatsEnabled#

#if defined(ENABLE_OVERLOADING)
    SettingBridgeGetVlanStatsEnabledMethodInfo,
#endif
    settingBridgeGetVlanStatsEnabled        ,


-- ** new #method:new#

    settingBridgeNew                        ,


-- ** removeVlan #method:removeVlan#

#if defined(ENABLE_OVERLOADING)
    SettingBridgeRemoveVlanMethodInfo       ,
#endif
    settingBridgeRemoveVlan                 ,


-- ** removeVlanByVid #method:removeVlanByVid#

#if defined(ENABLE_OVERLOADING)
    SettingBridgeRemoveVlanByVidMethodInfo  ,
#endif
    settingBridgeRemoveVlanByVid            ,




 -- * Properties


-- ** ageingTime #attr:ageingTime#
-- | The Ethernet MAC address aging time, in seconds.

#if defined(ENABLE_OVERLOADING)
    SettingBridgeAgeingTimePropertyInfo     ,
#endif
    constructSettingBridgeAgeingTime        ,
    getSettingBridgeAgeingTime              ,
    setSettingBridgeAgeingTime              ,
#if defined(ENABLE_OVERLOADING)
    settingBridgeAgeingTime                 ,
#endif


-- ** forwardDelay #attr:forwardDelay#
-- | The Spanning Tree Protocol (STP) forwarding delay, in seconds.

#if defined(ENABLE_OVERLOADING)
    SettingBridgeForwardDelayPropertyInfo   ,
#endif
    constructSettingBridgeForwardDelay      ,
    getSettingBridgeForwardDelay            ,
    setSettingBridgeForwardDelay            ,
#if defined(ENABLE_OVERLOADING)
    settingBridgeForwardDelay               ,
#endif


-- ** groupAddress #attr:groupAddress#
-- | If specified, The MAC address of the multicast group this bridge uses for STP.
-- 
-- The address must be a link-local address in standard Ethernet MAC address format,
-- ie an address of the form 01:80:C2:00:00:0X, with X in [0, 4..F].
-- If not specified the default value is 01:80:C2:00:00:00.
-- 
-- /Since: 1.24/

#if defined(ENABLE_OVERLOADING)
    SettingBridgeGroupAddressPropertyInfo   ,
#endif
    clearSettingBridgeGroupAddress          ,
    constructSettingBridgeGroupAddress      ,
    getSettingBridgeGroupAddress            ,
    setSettingBridgeGroupAddress            ,
#if defined(ENABLE_OVERLOADING)
    settingBridgeGroupAddress               ,
#endif


-- ** groupForwardMask #attr:groupForwardMask#
-- | A mask of group addresses to forward. Usually, group addresses in
-- the range from 01:80:C2:00:00:00 to 01:80:C2:00:00:0F are not
-- forwarded according to standards. This property is a mask of 16 bits,
-- each corresponding to a group address in that range that must be
-- forwarded. The mask can\'t have bits 0, 1 or 2 set because they are
-- used for STP, MAC pause frames and LACP.
-- 
-- /Since: 1.10/

#if defined(ENABLE_OVERLOADING)
    SettingBridgeGroupForwardMaskPropertyInfo,
#endif
    constructSettingBridgeGroupForwardMask  ,
    getSettingBridgeGroupForwardMask        ,
    setSettingBridgeGroupForwardMask        ,
#if defined(ENABLE_OVERLOADING)
    settingBridgeGroupForwardMask           ,
#endif


-- ** helloTime #attr:helloTime#
-- | The Spanning Tree Protocol (STP) hello time, in seconds.

#if defined(ENABLE_OVERLOADING)
    SettingBridgeHelloTimePropertyInfo      ,
#endif
    constructSettingBridgeHelloTime         ,
    getSettingBridgeHelloTime               ,
    setSettingBridgeHelloTime               ,
#if defined(ENABLE_OVERLOADING)
    settingBridgeHelloTime                  ,
#endif


-- ** macAddress #attr:macAddress#
-- | If specified, the MAC address of bridge. When creating a new bridge, this
-- MAC address will be set.
-- 
-- If this field is left unspecified, the \"ethernet.cloned-mac-address\" is
-- referred instead to generate the initial MAC address. Note that setting
-- \"ethernet.cloned-mac-address\" anyway overwrites the MAC address of
-- the bridge later while activating the bridge.

#if defined(ENABLE_OVERLOADING)
    SettingBridgeMacAddressPropertyInfo     ,
#endif
    clearSettingBridgeMacAddress            ,
    constructSettingBridgeMacAddress        ,
    getSettingBridgeMacAddress              ,
    setSettingBridgeMacAddress              ,
#if defined(ENABLE_OVERLOADING)
    settingBridgeMacAddress                 ,
#endif


-- ** maxAge #attr:maxAge#
-- | The Spanning Tree Protocol (STP) maximum message age, in seconds.

#if defined(ENABLE_OVERLOADING)
    SettingBridgeMaxAgePropertyInfo         ,
#endif
    constructSettingBridgeMaxAge            ,
    getSettingBridgeMaxAge                  ,
    setSettingBridgeMaxAge                  ,
#if defined(ENABLE_OVERLOADING)
    settingBridgeMaxAge                     ,
#endif


-- ** multicastHashMax #attr:multicastHashMax#
-- | Set maximum size of multicast hash table (value must be a power of 2).

#if defined(ENABLE_OVERLOADING)
    SettingBridgeMulticastHashMaxPropertyInfo,
#endif
    constructSettingBridgeMulticastHashMax  ,
    getSettingBridgeMulticastHashMax        ,
    setSettingBridgeMulticastHashMax        ,
#if defined(ENABLE_OVERLOADING)
    settingBridgeMulticastHashMax           ,
#endif


-- ** multicastLastMemberCount #attr:multicastLastMemberCount#
-- | Set the number of queries the bridge will send before
-- stopping forwarding a multicast group after a \"leave\"
-- message has been received.

#if defined(ENABLE_OVERLOADING)
    SettingBridgeMulticastLastMemberCountPropertyInfo,
#endif
    constructSettingBridgeMulticastLastMemberCount,
    getSettingBridgeMulticastLastMemberCount,
    setSettingBridgeMulticastLastMemberCount,
#if defined(ENABLE_OVERLOADING)
    settingBridgeMulticastLastMemberCount   ,
#endif


-- ** multicastLastMemberInterval #attr:multicastLastMemberInterval#
-- | Set interval (in deciseconds) between queries to find remaining
-- members of a group, after a \"leave\" message is received.

#if defined(ENABLE_OVERLOADING)
    SettingBridgeMulticastLastMemberIntervalPropertyInfo,
#endif
    constructSettingBridgeMulticastLastMemberInterval,
    getSettingBridgeMulticastLastMemberInterval,
    setSettingBridgeMulticastLastMemberInterval,
#if defined(ENABLE_OVERLOADING)
    settingBridgeMulticastLastMemberInterval,
#endif


-- ** multicastMembershipInterval #attr:multicastMembershipInterval#
-- | Set delay (in deciseconds) after which the bridge will
-- leave a group, if no membership reports for this
-- group are received.

#if defined(ENABLE_OVERLOADING)
    SettingBridgeMulticastMembershipIntervalPropertyInfo,
#endif
    constructSettingBridgeMulticastMembershipInterval,
    getSettingBridgeMulticastMembershipInterval,
    setSettingBridgeMulticastMembershipInterval,
#if defined(ENABLE_OVERLOADING)
    settingBridgeMulticastMembershipInterval,
#endif


-- ** multicastQuerier #attr:multicastQuerier#
-- | Enable or disable sending of multicast queries by the bridge.
-- If not specified the option is disabled.

#if defined(ENABLE_OVERLOADING)
    SettingBridgeMulticastQuerierPropertyInfo,
#endif
    constructSettingBridgeMulticastQuerier  ,
    getSettingBridgeMulticastQuerier        ,
    setSettingBridgeMulticastQuerier        ,
#if defined(ENABLE_OVERLOADING)
    settingBridgeMulticastQuerier           ,
#endif


-- ** multicastQuerierInterval #attr:multicastQuerierInterval#
-- | If no queries are seen after this delay (in deciseconds) has passed,
-- the bridge will start to send its own queries.

#if defined(ENABLE_OVERLOADING)
    SettingBridgeMulticastQuerierIntervalPropertyInfo,
#endif
    constructSettingBridgeMulticastQuerierInterval,
    getSettingBridgeMulticastQuerierInterval,
    setSettingBridgeMulticastQuerierInterval,
#if defined(ENABLE_OVERLOADING)
    settingBridgeMulticastQuerierInterval   ,
#endif


-- ** multicastQueryInterval #attr:multicastQueryInterval#
-- | Interval (in deciseconds) between queries sent
-- by the bridge after the end of the startup phase.

#if defined(ENABLE_OVERLOADING)
    SettingBridgeMulticastQueryIntervalPropertyInfo,
#endif
    constructSettingBridgeMulticastQueryInterval,
    getSettingBridgeMulticastQueryInterval  ,
    setSettingBridgeMulticastQueryInterval  ,
#if defined(ENABLE_OVERLOADING)
    settingBridgeMulticastQueryInterval     ,
#endif


-- ** multicastQueryResponseInterval #attr:multicastQueryResponseInterval#
-- | Set the Max Response Time\/Max Response Delay
-- (in deciseconds) for IGMP\/MLD queries sent by the bridge.

#if defined(ENABLE_OVERLOADING)
    SettingBridgeMulticastQueryResponseIntervalPropertyInfo,
#endif
    constructSettingBridgeMulticastQueryResponseInterval,
    getSettingBridgeMulticastQueryResponseInterval,
    setSettingBridgeMulticastQueryResponseInterval,
#if defined(ENABLE_OVERLOADING)
    settingBridgeMulticastQueryResponseInterval,
#endif


-- ** multicastQueryUseIfaddr #attr:multicastQueryUseIfaddr#
-- | If enabled the bridge\'s own IP address is used as
-- the source address for IGMP queries otherwise
-- the default of 0.0.0.0 is used.

#if defined(ENABLE_OVERLOADING)
    SettingBridgeMulticastQueryUseIfaddrPropertyInfo,
#endif
    constructSettingBridgeMulticastQueryUseIfaddr,
    getSettingBridgeMulticastQueryUseIfaddr ,
    setSettingBridgeMulticastQueryUseIfaddr ,
#if defined(ENABLE_OVERLOADING)
    settingBridgeMulticastQueryUseIfaddr    ,
#endif


-- ** multicastRouter #attr:multicastRouter#
-- | Sets bridge\'s multicast router. Multicast-snooping must be enabled
-- for this option to work.
-- 
-- Supported values are: \'auto\', \'disabled\', \'enabled\' to which kernel
-- assigns the numbers 1, 0, and 2, respectively.
-- If not specified the default value is \'auto\' (1).

#if defined(ENABLE_OVERLOADING)
    SettingBridgeMulticastRouterPropertyInfo,
#endif
    clearSettingBridgeMulticastRouter       ,
    constructSettingBridgeMulticastRouter   ,
    getSettingBridgeMulticastRouter         ,
    setSettingBridgeMulticastRouter         ,
#if defined(ENABLE_OVERLOADING)
    settingBridgeMulticastRouter            ,
#endif


-- ** multicastSnooping #attr:multicastSnooping#
-- | Controls whether IGMP snooping is enabled for this bridge.
-- Note that if snooping was automatically disabled due to hash collisions,
-- the system may refuse to enable the feature until the collisions are
-- resolved.
-- 
-- /Since: 1.2/

#if defined(ENABLE_OVERLOADING)
    SettingBridgeMulticastSnoopingPropertyInfo,
#endif
    constructSettingBridgeMulticastSnooping ,
    getSettingBridgeMulticastSnooping       ,
    setSettingBridgeMulticastSnooping       ,
#if defined(ENABLE_OVERLOADING)
    settingBridgeMulticastSnooping          ,
#endif


-- ** multicastStartupQueryCount #attr:multicastStartupQueryCount#
-- | Set the number of IGMP queries to send during startup phase.

#if defined(ENABLE_OVERLOADING)
    SettingBridgeMulticastStartupQueryCountPropertyInfo,
#endif
    constructSettingBridgeMulticastStartupQueryCount,
    getSettingBridgeMulticastStartupQueryCount,
    setSettingBridgeMulticastStartupQueryCount,
#if defined(ENABLE_OVERLOADING)
    settingBridgeMulticastStartupQueryCount ,
#endif


-- ** multicastStartupQueryInterval #attr:multicastStartupQueryInterval#
-- | Sets the time (in deciseconds) between queries sent out
-- at startup to determine membership information.

#if defined(ENABLE_OVERLOADING)
    SettingBridgeMulticastStartupQueryIntervalPropertyInfo,
#endif
    constructSettingBridgeMulticastStartupQueryInterval,
    getSettingBridgeMulticastStartupQueryInterval,
    setSettingBridgeMulticastStartupQueryInterval,
#if defined(ENABLE_OVERLOADING)
    settingBridgeMulticastStartupQueryInterval,
#endif


-- ** priority #attr:priority#
-- | Sets the Spanning Tree Protocol (STP) priority for this bridge.  Lower
-- values are \"better\"; the lowest priority bridge will be elected the root
-- bridge.

#if defined(ENABLE_OVERLOADING)
    SettingBridgePriorityPropertyInfo       ,
#endif
    constructSettingBridgePriority          ,
    getSettingBridgePriority                ,
    setSettingBridgePriority                ,
#if defined(ENABLE_OVERLOADING)
    settingBridgePriority                   ,
#endif


-- ** stp #attr:stp#
-- | Controls whether Spanning Tree Protocol (STP) is enabled for this bridge.

#if defined(ENABLE_OVERLOADING)
    SettingBridgeStpPropertyInfo            ,
#endif
    constructSettingBridgeStp               ,
    getSettingBridgeStp                     ,
    setSettingBridgeStp                     ,
#if defined(ENABLE_OVERLOADING)
    settingBridgeStp                        ,
#endif


-- ** vlanDefaultPvid #attr:vlanDefaultPvid#
-- | The default PVID for the ports of the bridge, that is the VLAN id
-- assigned to incoming untagged frames.
-- 
-- /Since: 1.18/

#if defined(ENABLE_OVERLOADING)
    SettingBridgeVlanDefaultPvidPropertyInfo,
#endif
    constructSettingBridgeVlanDefaultPvid   ,
    getSettingBridgeVlanDefaultPvid         ,
    setSettingBridgeVlanDefaultPvid         ,
#if defined(ENABLE_OVERLOADING)
    settingBridgeVlanDefaultPvid            ,
#endif


-- ** vlanFiltering #attr:vlanFiltering#
-- | Control whether VLAN filtering is enabled on the bridge.
-- 
-- /Since: 1.18/

#if defined(ENABLE_OVERLOADING)
    SettingBridgeVlanFilteringPropertyInfo  ,
#endif
    constructSettingBridgeVlanFiltering     ,
    getSettingBridgeVlanFiltering           ,
    setSettingBridgeVlanFiltering           ,
#if defined(ENABLE_OVERLOADING)
    settingBridgeVlanFiltering              ,
#endif


-- ** vlanProtocol #attr:vlanProtocol#
-- | If specified, the protocol used for VLAN filtering.
-- 
-- Supported values are: \'802.1Q\', \'802.1ad\'.
-- If not specified the default value is \'802.1Q\'.
-- 
-- /Since: 1.24/

#if defined(ENABLE_OVERLOADING)
    SettingBridgeVlanProtocolPropertyInfo   ,
#endif
    clearSettingBridgeVlanProtocol          ,
    constructSettingBridgeVlanProtocol      ,
    getSettingBridgeVlanProtocol            ,
    setSettingBridgeVlanProtocol            ,
#if defined(ENABLE_OVERLOADING)
    settingBridgeVlanProtocol               ,
#endif


-- ** vlanStatsEnabled #attr:vlanStatsEnabled#
-- | Controls whether per-VLAN stats accounting is enabled.

#if defined(ENABLE_OVERLOADING)
    SettingBridgeVlanStatsEnabledPropertyInfo,
#endif
    constructSettingBridgeVlanStatsEnabled  ,
    getSettingBridgeVlanStatsEnabled        ,
    setSettingBridgeVlanStatsEnabled        ,
#if defined(ENABLE_OVERLOADING)
    settingBridgeVlanStatsEnabled           ,
#endif


-- ** vlans #attr:vlans#

#if defined(ENABLE_OVERLOADING)
    SettingBridgeVlansPropertyInfo          ,
#endif
#if defined(ENABLE_OVERLOADING)
    settingBridgeVlans                      ,
#endif




    ) where

import Data.GI.Base.ShortPrelude
import qualified Data.GI.Base.ShortPrelude as SP
import qualified Data.GI.Base.Overloading as O
import qualified Prelude as P

import qualified Data.GI.Base.Attributes as GI.Attributes
import qualified Data.GI.Base.BasicTypes as B.Types
import qualified Data.GI.Base.ManagedPtr as B.ManagedPtr
import qualified Data.GI.Base.GArray as B.GArray
import qualified Data.GI.Base.GClosure as B.GClosure
import qualified Data.GI.Base.GError as B.GError
import qualified Data.GI.Base.GHashTable as B.GHT
import qualified Data.GI.Base.GVariant as B.GVariant
import qualified Data.GI.Base.GValue as B.GValue
import qualified Data.GI.Base.GParamSpec as B.GParamSpec
import qualified Data.GI.Base.CallStack as B.CallStack
import qualified Data.GI.Base.Properties as B.Properties
import qualified Data.GI.Base.Signals as B.Signals
import qualified Control.Monad.IO.Class as MIO
import qualified Data.Coerce as Coerce
import qualified Data.Text as T
import qualified Data.Kind as DK
import qualified Data.ByteString.Char8 as B
import qualified Data.Map as Map
import qualified Foreign.Ptr as FP
import qualified GHC.OverloadedLabels as OL
import qualified GHC.Records as R
import qualified Data.Word as DW
import qualified Data.Int as DI
import qualified System.Posix.Types as SPT
import qualified Foreign.C.Types as FCT

-- Workaround for https://gitlab.haskell.org/ghc/ghc/-/issues/23392
#if MIN_VERSION_base(4,18,0)
import qualified GI.GLib.Structs.Bytes as GLib.Bytes
import qualified GI.GLib.Structs.VariantType as GLib.VariantType
import qualified GI.GObject.Objects.Object as GObject.Object
import qualified GI.NM.Callbacks as NM.Callbacks
import {-# SOURCE #-} qualified GI.NM.Enums as NM.Enums
import {-# SOURCE #-} qualified GI.NM.Flags as NM.Flags
import {-# SOURCE #-} qualified GI.NM.Interfaces.Connection as NM.Connection
import {-# SOURCE #-} qualified GI.NM.Objects.Setting as NM.Setting
import {-# SOURCE #-} qualified GI.NM.Objects.Setting8021x as NM.Setting8021x
import {-# SOURCE #-} qualified GI.NM.Objects.SettingAdsl as NM.SettingAdsl
import {-# SOURCE #-} qualified GI.NM.Objects.SettingBluetooth as NM.SettingBluetooth
import {-# SOURCE #-} qualified GI.NM.Objects.SettingBond as NM.SettingBond
import {-# SOURCE #-} qualified GI.NM.Objects.SettingBridgePort as NM.SettingBridgePort
import {-# SOURCE #-} qualified GI.NM.Objects.SettingCdma as NM.SettingCdma
import {-# SOURCE #-} qualified GI.NM.Objects.SettingConnection as NM.SettingConnection
import {-# SOURCE #-} qualified GI.NM.Objects.SettingDcb as NM.SettingDcb
import {-# SOURCE #-} qualified GI.NM.Objects.SettingDummy as NM.SettingDummy
import {-# SOURCE #-} qualified GI.NM.Objects.SettingGeneric as NM.SettingGeneric
import {-# SOURCE #-} qualified GI.NM.Objects.SettingGsm as NM.SettingGsm
import {-# SOURCE #-} qualified GI.NM.Objects.SettingIP4Config as NM.SettingIP4Config
import {-# SOURCE #-} qualified GI.NM.Objects.SettingIP6Config as NM.SettingIP6Config
import {-# SOURCE #-} qualified GI.NM.Objects.SettingIPConfig as NM.SettingIPConfig
import {-# SOURCE #-} qualified GI.NM.Objects.SettingIPTunnel as NM.SettingIPTunnel
import {-# SOURCE #-} qualified GI.NM.Objects.SettingInfiniband as NM.SettingInfiniband
import {-# SOURCE #-} qualified GI.NM.Objects.SettingMacsec as NM.SettingMacsec
import {-# SOURCE #-} qualified GI.NM.Objects.SettingMacvlan as NM.SettingMacvlan
import {-# SOURCE #-} qualified GI.NM.Objects.SettingOlpcMesh as NM.SettingOlpcMesh
import {-# SOURCE #-} qualified GI.NM.Objects.SettingOvsBridge as NM.SettingOvsBridge
import {-# SOURCE #-} qualified GI.NM.Objects.SettingOvsInterface as NM.SettingOvsInterface
import {-# SOURCE #-} qualified GI.NM.Objects.SettingOvsPatch as NM.SettingOvsPatch
import {-# SOURCE #-} qualified GI.NM.Objects.SettingOvsPort as NM.SettingOvsPort
import {-# SOURCE #-} qualified GI.NM.Objects.SettingPpp as NM.SettingPpp
import {-# SOURCE #-} qualified GI.NM.Objects.SettingPppoe as NM.SettingPppoe
import {-# SOURCE #-} qualified GI.NM.Objects.SettingProxy as NM.SettingProxy
import {-# SOURCE #-} qualified GI.NM.Objects.SettingSerial as NM.SettingSerial
import {-# SOURCE #-} qualified GI.NM.Objects.SettingTCConfig as NM.SettingTCConfig
import {-# SOURCE #-} qualified GI.NM.Objects.SettingTeam as NM.SettingTeam
import {-# SOURCE #-} qualified GI.NM.Objects.SettingTeamPort as NM.SettingTeamPort
import {-# SOURCE #-} qualified GI.NM.Objects.SettingTun as NM.SettingTun
import {-# SOURCE #-} qualified GI.NM.Objects.SettingVlan as NM.SettingVlan
import {-# SOURCE #-} qualified GI.NM.Objects.SettingVpn as NM.SettingVpn
import {-# SOURCE #-} qualified GI.NM.Objects.SettingVxlan as NM.SettingVxlan
import {-# SOURCE #-} qualified GI.NM.Objects.SettingWimax as NM.SettingWimax
import {-# SOURCE #-} qualified GI.NM.Objects.SettingWired as NM.SettingWired
import {-# SOURCE #-} qualified GI.NM.Objects.SettingWireless as NM.SettingWireless
import {-# SOURCE #-} qualified GI.NM.Objects.SettingWirelessSecurity as NM.SettingWirelessSecurity
import {-# SOURCE #-} qualified GI.NM.Structs.BridgeVlan as NM.BridgeVlan
import {-# SOURCE #-} qualified GI.NM.Structs.IPAddress as NM.IPAddress
import {-# SOURCE #-} qualified GI.NM.Structs.IPRoute as NM.IPRoute
import {-# SOURCE #-} qualified GI.NM.Structs.IPRoutingRule as NM.IPRoutingRule
import {-# SOURCE #-} qualified GI.NM.Structs.Range as NM.Range
import {-# SOURCE #-} qualified GI.NM.Structs.TCAction as NM.TCAction
import {-# SOURCE #-} qualified GI.NM.Structs.TCQdisc as NM.TCQdisc
import {-# SOURCE #-} qualified GI.NM.Structs.TCTfilter as NM.TCTfilter
import {-# SOURCE #-} qualified GI.NM.Structs.TeamLinkWatcher as NM.TeamLinkWatcher
import {-# SOURCE #-} qualified GI.NM.Structs.VariantAttributeSpec as NM.VariantAttributeSpec

#else
import qualified GI.GObject.Objects.Object as GObject.Object
import {-# SOURCE #-} qualified GI.NM.Objects.Setting as NM.Setting
import {-# SOURCE #-} qualified GI.NM.Structs.BridgeVlan as NM.BridgeVlan

#endif

-- | Memory-managed wrapper type.
newtype SettingBridge = SettingBridge (SP.ManagedPtr SettingBridge)
    deriving (SettingBridge -> SettingBridge -> Bool
(SettingBridge -> SettingBridge -> Bool)
-> (SettingBridge -> SettingBridge -> Bool) -> Eq SettingBridge
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: SettingBridge -> SettingBridge -> Bool
== :: SettingBridge -> SettingBridge -> Bool
$c/= :: SettingBridge -> SettingBridge -> Bool
/= :: SettingBridge -> SettingBridge -> Bool
Eq)

instance SP.ManagedPtrNewtype SettingBridge where
    toManagedPtr :: SettingBridge -> ManagedPtr SettingBridge
toManagedPtr (SettingBridge ManagedPtr SettingBridge
p) = ManagedPtr SettingBridge
p

foreign import ccall "nm_setting_bridge_get_type"
    c_nm_setting_bridge_get_type :: IO B.Types.GType

instance B.Types.TypedObject SettingBridge where
    glibType :: IO GType
glibType = IO GType
c_nm_setting_bridge_get_type

instance B.Types.GObject SettingBridge

-- | Type class for types which can be safely cast to t'SettingBridge', for instance with `toSettingBridge`.
class (SP.GObject o, O.IsDescendantOf SettingBridge o) => IsSettingBridge o
instance (SP.GObject o, O.IsDescendantOf SettingBridge o) => IsSettingBridge o

instance O.HasParentTypes SettingBridge
type instance O.ParentTypes SettingBridge = '[NM.Setting.Setting, GObject.Object.Object]

-- | Cast to t'SettingBridge', for types for which this is known to be safe. For general casts, use 'Data.GI.Base.ManagedPtr.castTo'.
toSettingBridge :: (MIO.MonadIO m, IsSettingBridge o) => o -> m SettingBridge
toSettingBridge :: forall (m :: * -> *) o.
(MonadIO m, IsSettingBridge o) =>
o -> m SettingBridge
toSettingBridge = IO SettingBridge -> m SettingBridge
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO SettingBridge -> m SettingBridge)
-> (o -> IO SettingBridge) -> o -> m SettingBridge
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (ManagedPtr SettingBridge -> SettingBridge)
-> o -> IO SettingBridge
forall o o'.
(HasCallStack, ManagedPtrNewtype o, TypedObject o,
 ManagedPtrNewtype o', TypedObject o') =>
(ManagedPtr o' -> o') -> o -> IO o'
B.ManagedPtr.unsafeCastTo ManagedPtr SettingBridge -> SettingBridge
SettingBridge

-- | Convert t'SettingBridge' to and from t'Data.GI.Base.GValue.GValue'. See 'Data.GI.Base.GValue.toGValue' and 'Data.GI.Base.GValue.fromGValue'.
instance B.GValue.IsGValue (Maybe SettingBridge) where
    gvalueGType_ :: IO GType
gvalueGType_ = IO GType
c_nm_setting_bridge_get_type
    gvalueSet_ :: Ptr GValue -> Maybe SettingBridge -> IO ()
gvalueSet_ Ptr GValue
gv Maybe SettingBridge
P.Nothing = Ptr GValue -> Ptr SettingBridge -> IO ()
forall a. GObject a => Ptr GValue -> Ptr a -> IO ()
B.GValue.set_object Ptr GValue
gv (Ptr SettingBridge
forall a. Ptr a
FP.nullPtr :: FP.Ptr SettingBridge)
    gvalueSet_ Ptr GValue
gv (P.Just SettingBridge
obj) = SettingBridge -> (Ptr SettingBridge -> IO ()) -> IO ()
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
B.ManagedPtr.withManagedPtr SettingBridge
obj (Ptr GValue -> Ptr SettingBridge -> IO ()
forall a. GObject a => Ptr GValue -> Ptr a -> IO ()
B.GValue.set_object Ptr GValue
gv)
    gvalueGet_ :: Ptr GValue -> IO (Maybe SettingBridge)
gvalueGet_ Ptr GValue
gv = do
        Ptr SettingBridge
ptr <- Ptr GValue -> IO (Ptr SettingBridge)
forall a. GObject a => Ptr GValue -> IO (Ptr a)
B.GValue.get_object Ptr GValue
gv :: IO (FP.Ptr SettingBridge)
        if Ptr SettingBridge
ptr Ptr SettingBridge -> Ptr SettingBridge -> Bool
forall a. Eq a => a -> a -> Bool
/= Ptr SettingBridge
forall a. Ptr a
FP.nullPtr
        then SettingBridge -> Maybe SettingBridge
forall a. a -> Maybe a
P.Just (SettingBridge -> Maybe SettingBridge)
-> IO SettingBridge -> IO (Maybe SettingBridge)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (ManagedPtr SettingBridge -> SettingBridge)
-> Ptr SettingBridge -> IO SettingBridge
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
B.ManagedPtr.newObject ManagedPtr SettingBridge -> SettingBridge
SettingBridge Ptr SettingBridge
ptr
        else Maybe SettingBridge -> IO (Maybe SettingBridge)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe SettingBridge
forall a. Maybe a
P.Nothing
        
    

#if defined(ENABLE_OVERLOADING)
type family ResolveSettingBridgeMethod (t :: Symbol) (o :: DK.Type) :: DK.Type where
    ResolveSettingBridgeMethod "addVlan" o = SettingBridgeAddVlanMethodInfo
    ResolveSettingBridgeMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
    ResolveSettingBridgeMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
    ResolveSettingBridgeMethod "clearVlans" o = SettingBridgeClearVlansMethodInfo
    ResolveSettingBridgeMethod "compare" o = NM.Setting.SettingCompareMethodInfo
    ResolveSettingBridgeMethod "diff" o = NM.Setting.SettingDiffMethodInfo
    ResolveSettingBridgeMethod "duplicate" o = NM.Setting.SettingDuplicateMethodInfo
    ResolveSettingBridgeMethod "enumerateValues" o = NM.Setting.SettingEnumerateValuesMethodInfo
    ResolveSettingBridgeMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
    ResolveSettingBridgeMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
    ResolveSettingBridgeMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
    ResolveSettingBridgeMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
    ResolveSettingBridgeMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
    ResolveSettingBridgeMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
    ResolveSettingBridgeMethod "optionClearByName" o = NM.Setting.SettingOptionClearByNameMethodInfo
    ResolveSettingBridgeMethod "optionGet" o = NM.Setting.SettingOptionGetMethodInfo
    ResolveSettingBridgeMethod "optionGetAllNames" o = NM.Setting.SettingOptionGetAllNamesMethodInfo
    ResolveSettingBridgeMethod "optionGetBoolean" o = NM.Setting.SettingOptionGetBooleanMethodInfo
    ResolveSettingBridgeMethod "optionGetUint32" o = NM.Setting.SettingOptionGetUint32MethodInfo
    ResolveSettingBridgeMethod "optionSet" o = NM.Setting.SettingOptionSetMethodInfo
    ResolveSettingBridgeMethod "optionSetBoolean" o = NM.Setting.SettingOptionSetBooleanMethodInfo
    ResolveSettingBridgeMethod "optionSetUint32" o = NM.Setting.SettingOptionSetUint32MethodInfo
    ResolveSettingBridgeMethod "ref" o = GObject.Object.ObjectRefMethodInfo
    ResolveSettingBridgeMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
    ResolveSettingBridgeMethod "removeVlan" o = SettingBridgeRemoveVlanMethodInfo
    ResolveSettingBridgeMethod "removeVlanByVid" o = SettingBridgeRemoveVlanByVidMethodInfo
    ResolveSettingBridgeMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
    ResolveSettingBridgeMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
    ResolveSettingBridgeMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
    ResolveSettingBridgeMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
    ResolveSettingBridgeMethod "toString" o = NM.Setting.SettingToStringMethodInfo
    ResolveSettingBridgeMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
    ResolveSettingBridgeMethod "verify" o = NM.Setting.SettingVerifyMethodInfo
    ResolveSettingBridgeMethod "verifySecrets" o = NM.Setting.SettingVerifySecretsMethodInfo
    ResolveSettingBridgeMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
    ResolveSettingBridgeMethod "getAgeingTime" o = SettingBridgeGetAgeingTimeMethodInfo
    ResolveSettingBridgeMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
    ResolveSettingBridgeMethod "getDbusPropertyType" o = NM.Setting.SettingGetDbusPropertyTypeMethodInfo
    ResolveSettingBridgeMethod "getForwardDelay" o = SettingBridgeGetForwardDelayMethodInfo
    ResolveSettingBridgeMethod "getGroupAddress" o = SettingBridgeGetGroupAddressMethodInfo
    ResolveSettingBridgeMethod "getGroupForwardMask" o = SettingBridgeGetGroupForwardMaskMethodInfo
    ResolveSettingBridgeMethod "getHelloTime" o = SettingBridgeGetHelloTimeMethodInfo
    ResolveSettingBridgeMethod "getMacAddress" o = SettingBridgeGetMacAddressMethodInfo
    ResolveSettingBridgeMethod "getMaxAge" o = SettingBridgeGetMaxAgeMethodInfo
    ResolveSettingBridgeMethod "getMulticastHashMax" o = SettingBridgeGetMulticastHashMaxMethodInfo
    ResolveSettingBridgeMethod "getMulticastLastMemberCount" o = SettingBridgeGetMulticastLastMemberCountMethodInfo
    ResolveSettingBridgeMethod "getMulticastLastMemberInterval" o = SettingBridgeGetMulticastLastMemberIntervalMethodInfo
    ResolveSettingBridgeMethod "getMulticastMembershipInterval" o = SettingBridgeGetMulticastMembershipIntervalMethodInfo
    ResolveSettingBridgeMethod "getMulticastQuerier" o = SettingBridgeGetMulticastQuerierMethodInfo
    ResolveSettingBridgeMethod "getMulticastQuerierInterval" o = SettingBridgeGetMulticastQuerierIntervalMethodInfo
    ResolveSettingBridgeMethod "getMulticastQueryInterval" o = SettingBridgeGetMulticastQueryIntervalMethodInfo
    ResolveSettingBridgeMethod "getMulticastQueryResponseInterval" o = SettingBridgeGetMulticastQueryResponseIntervalMethodInfo
    ResolveSettingBridgeMethod "getMulticastQueryUseIfaddr" o = SettingBridgeGetMulticastQueryUseIfaddrMethodInfo
    ResolveSettingBridgeMethod "getMulticastRouter" o = SettingBridgeGetMulticastRouterMethodInfo
    ResolveSettingBridgeMethod "getMulticastSnooping" o = SettingBridgeGetMulticastSnoopingMethodInfo
    ResolveSettingBridgeMethod "getMulticastStartupQueryCount" o = SettingBridgeGetMulticastStartupQueryCountMethodInfo
    ResolveSettingBridgeMethod "getMulticastStartupQueryInterval" o = SettingBridgeGetMulticastStartupQueryIntervalMethodInfo
    ResolveSettingBridgeMethod "getName" o = NM.Setting.SettingGetNameMethodInfo
    ResolveSettingBridgeMethod "getNumVlans" o = SettingBridgeGetNumVlansMethodInfo
    ResolveSettingBridgeMethod "getPriority" o = SettingBridgeGetPriorityMethodInfo
    ResolveSettingBridgeMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
    ResolveSettingBridgeMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
    ResolveSettingBridgeMethod "getSecretFlags" o = NM.Setting.SettingGetSecretFlagsMethodInfo
    ResolveSettingBridgeMethod "getStp" o = SettingBridgeGetStpMethodInfo
    ResolveSettingBridgeMethod "getVlan" o = SettingBridgeGetVlanMethodInfo
    ResolveSettingBridgeMethod "getVlanDefaultPvid" o = SettingBridgeGetVlanDefaultPvidMethodInfo
    ResolveSettingBridgeMethod "getVlanFiltering" o = SettingBridgeGetVlanFilteringMethodInfo
    ResolveSettingBridgeMethod "getVlanProtocol" o = SettingBridgeGetVlanProtocolMethodInfo
    ResolveSettingBridgeMethod "getVlanStatsEnabled" o = SettingBridgeGetVlanStatsEnabledMethodInfo
    ResolveSettingBridgeMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
    ResolveSettingBridgeMethod "setDataFull" o = GObject.Object.ObjectSetDataFullMethodInfo
    ResolveSettingBridgeMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
    ResolveSettingBridgeMethod "setSecretFlags" o = NM.Setting.SettingSetSecretFlagsMethodInfo
    ResolveSettingBridgeMethod l o = O.MethodResolutionFailed l o

instance (info ~ ResolveSettingBridgeMethod t SettingBridge, O.OverloadedMethod info SettingBridge p) => OL.IsLabel t (SettingBridge -> p) where
#if MIN_VERSION_base(4,10,0)
    fromLabel = O.overloadedMethod @info
#else
    fromLabel _ = O.overloadedMethod @info
#endif

#if MIN_VERSION_base(4,13,0)
instance (info ~ ResolveSettingBridgeMethod t SettingBridge, O.OverloadedMethod info SettingBridge p, R.HasField t SettingBridge p) => R.HasField t SettingBridge p where
    getField = O.overloadedMethod @info

#endif

instance (info ~ ResolveSettingBridgeMethod t SettingBridge, O.OverloadedMethodInfo info SettingBridge) => OL.IsLabel t (O.MethodProxy info SettingBridge) where
#if MIN_VERSION_base(4,10,0)
    fromLabel = O.MethodProxy
#else
    fromLabel _ = O.MethodProxy
#endif

#endif

-- VVV Prop "ageing-time"
   -- Type: TBasicType TUInt
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

-- | Get the value of the “@ageing-time@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' settingBridge #ageingTime
-- @
getSettingBridgeAgeingTime :: (MonadIO m, IsSettingBridge o) => o -> m Word32
getSettingBridgeAgeingTime :: forall (m :: * -> *) o.
(MonadIO m, IsSettingBridge o) =>
o -> m Word32
getSettingBridgeAgeingTime o
obj = IO Word32 -> m Word32
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO Word32 -> m Word32) -> IO Word32 -> m Word32
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Word32
forall a. GObject a => a -> String -> IO Word32
B.Properties.getObjectPropertyUInt32 o
obj String
"ageing-time"

-- | Set the value of the “@ageing-time@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' settingBridge [ #ageingTime 'Data.GI.Base.Attributes.:=' value ]
-- @
setSettingBridgeAgeingTime :: (MonadIO m, IsSettingBridge o) => o -> Word32 -> m ()
setSettingBridgeAgeingTime :: forall (m :: * -> *) o.
(MonadIO m, IsSettingBridge o) =>
o -> Word32 -> m ()
setSettingBridgeAgeingTime o
obj Word32
val = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    o -> String -> Word32 -> IO ()
forall a. GObject a => a -> String -> Word32 -> IO ()
B.Properties.setObjectPropertyUInt32 o
obj String
"ageing-time" Word32
val

-- | Construct a t'GValueConstruct' with valid value for the “@ageing-time@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
constructSettingBridgeAgeingTime :: (IsSettingBridge o, MIO.MonadIO m) => Word32 -> m (GValueConstruct o)
constructSettingBridgeAgeingTime :: forall o (m :: * -> *).
(IsSettingBridge o, MonadIO m) =>
Word32 -> m (GValueConstruct o)
constructSettingBridgeAgeingTime Word32
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ do
    IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a. IO a -> IO a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> IO (GValueConstruct o))
-> IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Word32 -> IO (GValueConstruct o)
forall o. String -> Word32 -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyUInt32 String
"ageing-time" Word32
val

#if defined(ENABLE_OVERLOADING)
data SettingBridgeAgeingTimePropertyInfo
instance AttrInfo SettingBridgeAgeingTimePropertyInfo where
    type AttrAllowedOps SettingBridgeAgeingTimePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrBaseTypeConstraint SettingBridgeAgeingTimePropertyInfo = IsSettingBridge
    type AttrSetTypeConstraint SettingBridgeAgeingTimePropertyInfo = (~) Word32
    type AttrTransferTypeConstraint SettingBridgeAgeingTimePropertyInfo = (~) Word32
    type AttrTransferType SettingBridgeAgeingTimePropertyInfo = Word32
    type AttrGetType SettingBridgeAgeingTimePropertyInfo = Word32
    type AttrLabel SettingBridgeAgeingTimePropertyInfo = "ageing-time"
    type AttrOrigin SettingBridgeAgeingTimePropertyInfo = SettingBridge
    attrGet = getSettingBridgeAgeingTime
    attrSet = setSettingBridgeAgeingTime
    attrTransfer _ v = do
        return v
    attrConstruct = constructSettingBridgeAgeingTime
    attrClear = undefined
    dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.ageingTime"
        , O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#g:attr:ageingTime"
        })
#endif

-- VVV Prop "forward-delay"
   -- Type: TBasicType TUInt
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

-- | Get the value of the “@forward-delay@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' settingBridge #forwardDelay
-- @
getSettingBridgeForwardDelay :: (MonadIO m, IsSettingBridge o) => o -> m Word32
getSettingBridgeForwardDelay :: forall (m :: * -> *) o.
(MonadIO m, IsSettingBridge o) =>
o -> m Word32
getSettingBridgeForwardDelay o
obj = IO Word32 -> m Word32
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO Word32 -> m Word32) -> IO Word32 -> m Word32
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Word32
forall a. GObject a => a -> String -> IO Word32
B.Properties.getObjectPropertyUInt32 o
obj String
"forward-delay"

-- | Set the value of the “@forward-delay@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' settingBridge [ #forwardDelay 'Data.GI.Base.Attributes.:=' value ]
-- @
setSettingBridgeForwardDelay :: (MonadIO m, IsSettingBridge o) => o -> Word32 -> m ()
setSettingBridgeForwardDelay :: forall (m :: * -> *) o.
(MonadIO m, IsSettingBridge o) =>
o -> Word32 -> m ()
setSettingBridgeForwardDelay o
obj Word32
val = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    o -> String -> Word32 -> IO ()
forall a. GObject a => a -> String -> Word32 -> IO ()
B.Properties.setObjectPropertyUInt32 o
obj String
"forward-delay" Word32
val

-- | Construct a t'GValueConstruct' with valid value for the “@forward-delay@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
constructSettingBridgeForwardDelay :: (IsSettingBridge o, MIO.MonadIO m) => Word32 -> m (GValueConstruct o)
constructSettingBridgeForwardDelay :: forall o (m :: * -> *).
(IsSettingBridge o, MonadIO m) =>
Word32 -> m (GValueConstruct o)
constructSettingBridgeForwardDelay Word32
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ do
    IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a. IO a -> IO a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> IO (GValueConstruct o))
-> IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Word32 -> IO (GValueConstruct o)
forall o. String -> Word32 -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyUInt32 String
"forward-delay" Word32
val

#if defined(ENABLE_OVERLOADING)
data SettingBridgeForwardDelayPropertyInfo
instance AttrInfo SettingBridgeForwardDelayPropertyInfo where
    type AttrAllowedOps SettingBridgeForwardDelayPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrBaseTypeConstraint SettingBridgeForwardDelayPropertyInfo = IsSettingBridge
    type AttrSetTypeConstraint SettingBridgeForwardDelayPropertyInfo = (~) Word32
    type AttrTransferTypeConstraint SettingBridgeForwardDelayPropertyInfo = (~) Word32
    type AttrTransferType SettingBridgeForwardDelayPropertyInfo = Word32
    type AttrGetType SettingBridgeForwardDelayPropertyInfo = Word32
    type AttrLabel SettingBridgeForwardDelayPropertyInfo = "forward-delay"
    type AttrOrigin SettingBridgeForwardDelayPropertyInfo = SettingBridge
    attrGet = getSettingBridgeForwardDelay
    attrSet = setSettingBridgeForwardDelay
    attrTransfer _ v = do
        return v
    attrConstruct = constructSettingBridgeForwardDelay
    attrClear = undefined
    dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.forwardDelay"
        , O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#g:attr:forwardDelay"
        })
#endif

-- VVV Prop "group-address"
   -- Type: TBasicType TUTF8
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Just False,Nothing)

-- | Get the value of the “@group-address@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' settingBridge #groupAddress
-- @
getSettingBridgeGroupAddress :: (MonadIO m, IsSettingBridge o) => o -> m T.Text
getSettingBridgeGroupAddress :: forall (m :: * -> *) o.
(MonadIO m, IsSettingBridge o) =>
o -> m Text
getSettingBridgeGroupAddress o
obj = IO Text -> m Text
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO Text -> m Text) -> IO Text -> m Text
forall a b. (a -> b) -> a -> b
$ Text -> IO (Maybe Text) -> IO Text
forall a. HasCallStack => Text -> IO (Maybe a) -> IO a
checkUnexpectedNothing Text
"getSettingBridgeGroupAddress" (IO (Maybe Text) -> IO Text) -> IO (Maybe Text) -> IO Text
forall a b. (a -> b) -> a -> b
$ o -> String -> IO (Maybe Text)
forall a. GObject a => a -> String -> IO (Maybe Text)
B.Properties.getObjectPropertyString o
obj String
"group-address"

-- | Set the value of the “@group-address@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' settingBridge [ #groupAddress 'Data.GI.Base.Attributes.:=' value ]
-- @
setSettingBridgeGroupAddress :: (MonadIO m, IsSettingBridge o) => o -> T.Text -> m ()
setSettingBridgeGroupAddress :: forall (m :: * -> *) o.
(MonadIO m, IsSettingBridge o) =>
o -> Text -> m ()
setSettingBridgeGroupAddress o
obj Text
val = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    o -> String -> Maybe Text -> IO ()
forall a. GObject a => a -> String -> Maybe Text -> IO ()
B.Properties.setObjectPropertyString o
obj String
"group-address" (Text -> Maybe Text
forall a. a -> Maybe a
Just Text
val)

-- | Construct a t'GValueConstruct' with valid value for the “@group-address@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
constructSettingBridgeGroupAddress :: (IsSettingBridge o, MIO.MonadIO m) => T.Text -> m (GValueConstruct o)
constructSettingBridgeGroupAddress :: forall o (m :: * -> *).
(IsSettingBridge o, MonadIO m) =>
Text -> m (GValueConstruct o)
constructSettingBridgeGroupAddress Text
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ do
    IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a. IO a -> IO a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> IO (GValueConstruct o))
-> IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Maybe Text -> IO (GValueConstruct o)
forall o. String -> Maybe Text -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyString String
"group-address" (Text -> Maybe Text
forall a. a -> Maybe a
P.Just Text
val)

-- | Set the value of the “@group-address@” property to `Nothing`.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.clear' #groupAddress
-- @
clearSettingBridgeGroupAddress :: (MonadIO m, IsSettingBridge o) => o -> m ()
clearSettingBridgeGroupAddress :: forall (m :: * -> *) o. (MonadIO m, IsSettingBridge o) => o -> m ()
clearSettingBridgeGroupAddress o
obj = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ o -> String -> Maybe Text -> IO ()
forall a. GObject a => a -> String -> Maybe Text -> IO ()
B.Properties.setObjectPropertyString o
obj String
"group-address" (Maybe Text
forall a. Maybe a
Nothing :: Maybe T.Text)

#if defined(ENABLE_OVERLOADING)
data SettingBridgeGroupAddressPropertyInfo
instance AttrInfo SettingBridgeGroupAddressPropertyInfo where
    type AttrAllowedOps SettingBridgeGroupAddressPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet, 'AttrClear]
    type AttrBaseTypeConstraint SettingBridgeGroupAddressPropertyInfo = IsSettingBridge
    type AttrSetTypeConstraint SettingBridgeGroupAddressPropertyInfo = (~) T.Text
    type AttrTransferTypeConstraint SettingBridgeGroupAddressPropertyInfo = (~) T.Text
    type AttrTransferType SettingBridgeGroupAddressPropertyInfo = T.Text
    type AttrGetType SettingBridgeGroupAddressPropertyInfo = T.Text
    type AttrLabel SettingBridgeGroupAddressPropertyInfo = "group-address"
    type AttrOrigin SettingBridgeGroupAddressPropertyInfo = SettingBridge
    attrGet = getSettingBridgeGroupAddress
    attrSet = setSettingBridgeGroupAddress
    attrTransfer _ v = do
        return v
    attrConstruct = constructSettingBridgeGroupAddress
    attrClear = clearSettingBridgeGroupAddress
    dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.groupAddress"
        , O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#g:attr:groupAddress"
        })
#endif

-- VVV Prop "group-forward-mask"
   -- Type: TBasicType TUInt
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

-- | Get the value of the “@group-forward-mask@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' settingBridge #groupForwardMask
-- @
getSettingBridgeGroupForwardMask :: (MonadIO m, IsSettingBridge o) => o -> m Word32
getSettingBridgeGroupForwardMask :: forall (m :: * -> *) o.
(MonadIO m, IsSettingBridge o) =>
o -> m Word32
getSettingBridgeGroupForwardMask o
obj = IO Word32 -> m Word32
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO Word32 -> m Word32) -> IO Word32 -> m Word32
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Word32
forall a. GObject a => a -> String -> IO Word32
B.Properties.getObjectPropertyUInt32 o
obj String
"group-forward-mask"

-- | Set the value of the “@group-forward-mask@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' settingBridge [ #groupForwardMask 'Data.GI.Base.Attributes.:=' value ]
-- @
setSettingBridgeGroupForwardMask :: (MonadIO m, IsSettingBridge o) => o -> Word32 -> m ()
setSettingBridgeGroupForwardMask :: forall (m :: * -> *) o.
(MonadIO m, IsSettingBridge o) =>
o -> Word32 -> m ()
setSettingBridgeGroupForwardMask o
obj Word32
val = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    o -> String -> Word32 -> IO ()
forall a. GObject a => a -> String -> Word32 -> IO ()
B.Properties.setObjectPropertyUInt32 o
obj String
"group-forward-mask" Word32
val

-- | Construct a t'GValueConstruct' with valid value for the “@group-forward-mask@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
constructSettingBridgeGroupForwardMask :: (IsSettingBridge o, MIO.MonadIO m) => Word32 -> m (GValueConstruct o)
constructSettingBridgeGroupForwardMask :: forall o (m :: * -> *).
(IsSettingBridge o, MonadIO m) =>
Word32 -> m (GValueConstruct o)
constructSettingBridgeGroupForwardMask Word32
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ do
    IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a. IO a -> IO a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> IO (GValueConstruct o))
-> IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Word32 -> IO (GValueConstruct o)
forall o. String -> Word32 -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyUInt32 String
"group-forward-mask" Word32
val

#if defined(ENABLE_OVERLOADING)
data SettingBridgeGroupForwardMaskPropertyInfo
instance AttrInfo SettingBridgeGroupForwardMaskPropertyInfo where
    type AttrAllowedOps SettingBridgeGroupForwardMaskPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrBaseTypeConstraint SettingBridgeGroupForwardMaskPropertyInfo = IsSettingBridge
    type AttrSetTypeConstraint SettingBridgeGroupForwardMaskPropertyInfo = (~) Word32
    type AttrTransferTypeConstraint SettingBridgeGroupForwardMaskPropertyInfo = (~) Word32
    type AttrTransferType SettingBridgeGroupForwardMaskPropertyInfo = Word32
    type AttrGetType SettingBridgeGroupForwardMaskPropertyInfo = Word32
    type AttrLabel SettingBridgeGroupForwardMaskPropertyInfo = "group-forward-mask"
    type AttrOrigin SettingBridgeGroupForwardMaskPropertyInfo = SettingBridge
    attrGet = getSettingBridgeGroupForwardMask
    attrSet = setSettingBridgeGroupForwardMask
    attrTransfer _ v = do
        return v
    attrConstruct = constructSettingBridgeGroupForwardMask
    attrClear = undefined
    dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.groupForwardMask"
        , O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#g:attr:groupForwardMask"
        })
#endif

-- VVV Prop "hello-time"
   -- Type: TBasicType TUInt
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

-- | Get the value of the “@hello-time@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' settingBridge #helloTime
-- @
getSettingBridgeHelloTime :: (MonadIO m, IsSettingBridge o) => o -> m Word32
getSettingBridgeHelloTime :: forall (m :: * -> *) o.
(MonadIO m, IsSettingBridge o) =>
o -> m Word32
getSettingBridgeHelloTime o
obj = IO Word32 -> m Word32
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO Word32 -> m Word32) -> IO Word32 -> m Word32
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Word32
forall a. GObject a => a -> String -> IO Word32
B.Properties.getObjectPropertyUInt32 o
obj String
"hello-time"

-- | Set the value of the “@hello-time@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' settingBridge [ #helloTime 'Data.GI.Base.Attributes.:=' value ]
-- @
setSettingBridgeHelloTime :: (MonadIO m, IsSettingBridge o) => o -> Word32 -> m ()
setSettingBridgeHelloTime :: forall (m :: * -> *) o.
(MonadIO m, IsSettingBridge o) =>
o -> Word32 -> m ()
setSettingBridgeHelloTime o
obj Word32
val = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    o -> String -> Word32 -> IO ()
forall a. GObject a => a -> String -> Word32 -> IO ()
B.Properties.setObjectPropertyUInt32 o
obj String
"hello-time" Word32
val

-- | Construct a t'GValueConstruct' with valid value for the “@hello-time@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
constructSettingBridgeHelloTime :: (IsSettingBridge o, MIO.MonadIO m) => Word32 -> m (GValueConstruct o)
constructSettingBridgeHelloTime :: forall o (m :: * -> *).
(IsSettingBridge o, MonadIO m) =>
Word32 -> m (GValueConstruct o)
constructSettingBridgeHelloTime Word32
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ do
    IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a. IO a -> IO a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> IO (GValueConstruct o))
-> IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Word32 -> IO (GValueConstruct o)
forall o. String -> Word32 -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyUInt32 String
"hello-time" Word32
val

#if defined(ENABLE_OVERLOADING)
data SettingBridgeHelloTimePropertyInfo
instance AttrInfo SettingBridgeHelloTimePropertyInfo where
    type AttrAllowedOps SettingBridgeHelloTimePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrBaseTypeConstraint SettingBridgeHelloTimePropertyInfo = IsSettingBridge
    type AttrSetTypeConstraint SettingBridgeHelloTimePropertyInfo = (~) Word32
    type AttrTransferTypeConstraint SettingBridgeHelloTimePropertyInfo = (~) Word32
    type AttrTransferType SettingBridgeHelloTimePropertyInfo = Word32
    type AttrGetType SettingBridgeHelloTimePropertyInfo = Word32
    type AttrLabel SettingBridgeHelloTimePropertyInfo = "hello-time"
    type AttrOrigin SettingBridgeHelloTimePropertyInfo = SettingBridge
    attrGet = getSettingBridgeHelloTime
    attrSet = setSettingBridgeHelloTime
    attrTransfer _ v = do
        return v
    attrConstruct = constructSettingBridgeHelloTime
    attrClear = undefined
    dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.helloTime"
        , O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#g:attr:helloTime"
        })
#endif

-- VVV Prop "mac-address"
   -- Type: TBasicType TUTF8
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Just False,Nothing)

-- | Get the value of the “@mac-address@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' settingBridge #macAddress
-- @
getSettingBridgeMacAddress :: (MonadIO m, IsSettingBridge o) => o -> m T.Text
getSettingBridgeMacAddress :: forall (m :: * -> *) o.
(MonadIO m, IsSettingBridge o) =>
o -> m Text
getSettingBridgeMacAddress o
obj = IO Text -> m Text
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO Text -> m Text) -> IO Text -> m Text
forall a b. (a -> b) -> a -> b
$ Text -> IO (Maybe Text) -> IO Text
forall a. HasCallStack => Text -> IO (Maybe a) -> IO a
checkUnexpectedNothing Text
"getSettingBridgeMacAddress" (IO (Maybe Text) -> IO Text) -> IO (Maybe Text) -> IO Text
forall a b. (a -> b) -> a -> b
$ o -> String -> IO (Maybe Text)
forall a. GObject a => a -> String -> IO (Maybe Text)
B.Properties.getObjectPropertyString o
obj String
"mac-address"

-- | Set the value of the “@mac-address@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' settingBridge [ #macAddress 'Data.GI.Base.Attributes.:=' value ]
-- @
setSettingBridgeMacAddress :: (MonadIO m, IsSettingBridge o) => o -> T.Text -> m ()
setSettingBridgeMacAddress :: forall (m :: * -> *) o.
(MonadIO m, IsSettingBridge o) =>
o -> Text -> m ()
setSettingBridgeMacAddress o
obj Text
val = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    o -> String -> Maybe Text -> IO ()
forall a. GObject a => a -> String -> Maybe Text -> IO ()
B.Properties.setObjectPropertyString o
obj String
"mac-address" (Text -> Maybe Text
forall a. a -> Maybe a
Just Text
val)

-- | Construct a t'GValueConstruct' with valid value for the “@mac-address@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
constructSettingBridgeMacAddress :: (IsSettingBridge o, MIO.MonadIO m) => T.Text -> m (GValueConstruct o)
constructSettingBridgeMacAddress :: forall o (m :: * -> *).
(IsSettingBridge o, MonadIO m) =>
Text -> m (GValueConstruct o)
constructSettingBridgeMacAddress Text
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ do
    IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a. IO a -> IO a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> IO (GValueConstruct o))
-> IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Maybe Text -> IO (GValueConstruct o)
forall o. String -> Maybe Text -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyString String
"mac-address" (Text -> Maybe Text
forall a. a -> Maybe a
P.Just Text
val)

-- | Set the value of the “@mac-address@” property to `Nothing`.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.clear' #macAddress
-- @
clearSettingBridgeMacAddress :: (MonadIO m, IsSettingBridge o) => o -> m ()
clearSettingBridgeMacAddress :: forall (m :: * -> *) o. (MonadIO m, IsSettingBridge o) => o -> m ()
clearSettingBridgeMacAddress o
obj = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ o -> String -> Maybe Text -> IO ()
forall a. GObject a => a -> String -> Maybe Text -> IO ()
B.Properties.setObjectPropertyString o
obj String
"mac-address" (Maybe Text
forall a. Maybe a
Nothing :: Maybe T.Text)

#if defined(ENABLE_OVERLOADING)
data SettingBridgeMacAddressPropertyInfo
instance AttrInfo SettingBridgeMacAddressPropertyInfo where
    type AttrAllowedOps SettingBridgeMacAddressPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet, 'AttrClear]
    type AttrBaseTypeConstraint SettingBridgeMacAddressPropertyInfo = IsSettingBridge
    type AttrSetTypeConstraint SettingBridgeMacAddressPropertyInfo = (~) T.Text
    type AttrTransferTypeConstraint SettingBridgeMacAddressPropertyInfo = (~) T.Text
    type AttrTransferType SettingBridgeMacAddressPropertyInfo = T.Text
    type AttrGetType SettingBridgeMacAddressPropertyInfo = T.Text
    type AttrLabel SettingBridgeMacAddressPropertyInfo = "mac-address"
    type AttrOrigin SettingBridgeMacAddressPropertyInfo = SettingBridge
    attrGet = getSettingBridgeMacAddress
    attrSet = setSettingBridgeMacAddress
    attrTransfer _ v = do
        return v
    attrConstruct = constructSettingBridgeMacAddress
    attrClear = clearSettingBridgeMacAddress
    dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.macAddress"
        , O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#g:attr:macAddress"
        })
#endif

-- VVV Prop "max-age"
   -- Type: TBasicType TUInt
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

-- | Get the value of the “@max-age@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' settingBridge #maxAge
-- @
getSettingBridgeMaxAge :: (MonadIO m, IsSettingBridge o) => o -> m Word32
getSettingBridgeMaxAge :: forall (m :: * -> *) o.
(MonadIO m, IsSettingBridge o) =>
o -> m Word32
getSettingBridgeMaxAge o
obj = IO Word32 -> m Word32
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO Word32 -> m Word32) -> IO Word32 -> m Word32
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Word32
forall a. GObject a => a -> String -> IO Word32
B.Properties.getObjectPropertyUInt32 o
obj String
"max-age"

-- | Set the value of the “@max-age@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' settingBridge [ #maxAge 'Data.GI.Base.Attributes.:=' value ]
-- @
setSettingBridgeMaxAge :: (MonadIO m, IsSettingBridge o) => o -> Word32 -> m ()
setSettingBridgeMaxAge :: forall (m :: * -> *) o.
(MonadIO m, IsSettingBridge o) =>
o -> Word32 -> m ()
setSettingBridgeMaxAge o
obj Word32
val = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    o -> String -> Word32 -> IO ()
forall a. GObject a => a -> String -> Word32 -> IO ()
B.Properties.setObjectPropertyUInt32 o
obj String
"max-age" Word32
val

-- | Construct a t'GValueConstruct' with valid value for the “@max-age@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
constructSettingBridgeMaxAge :: (IsSettingBridge o, MIO.MonadIO m) => Word32 -> m (GValueConstruct o)
constructSettingBridgeMaxAge :: forall o (m :: * -> *).
(IsSettingBridge o, MonadIO m) =>
Word32 -> m (GValueConstruct o)
constructSettingBridgeMaxAge Word32
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ do
    IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a. IO a -> IO a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> IO (GValueConstruct o))
-> IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Word32 -> IO (GValueConstruct o)
forall o. String -> Word32 -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyUInt32 String
"max-age" Word32
val

#if defined(ENABLE_OVERLOADING)
data SettingBridgeMaxAgePropertyInfo
instance AttrInfo SettingBridgeMaxAgePropertyInfo where
    type AttrAllowedOps SettingBridgeMaxAgePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrBaseTypeConstraint SettingBridgeMaxAgePropertyInfo = IsSettingBridge
    type AttrSetTypeConstraint SettingBridgeMaxAgePropertyInfo = (~) Word32
    type AttrTransferTypeConstraint SettingBridgeMaxAgePropertyInfo = (~) Word32
    type AttrTransferType SettingBridgeMaxAgePropertyInfo = Word32
    type AttrGetType SettingBridgeMaxAgePropertyInfo = Word32
    type AttrLabel SettingBridgeMaxAgePropertyInfo = "max-age"
    type AttrOrigin SettingBridgeMaxAgePropertyInfo = SettingBridge
    attrGet = getSettingBridgeMaxAge
    attrSet = setSettingBridgeMaxAge
    attrTransfer _ v = do
        return v
    attrConstruct = constructSettingBridgeMaxAge
    attrClear = undefined
    dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.maxAge"
        , O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#g:attr:maxAge"
        })
#endif

-- VVV Prop "multicast-hash-max"
   -- Type: TBasicType TUInt
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

-- | Get the value of the “@multicast-hash-max@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' settingBridge #multicastHashMax
-- @
getSettingBridgeMulticastHashMax :: (MonadIO m, IsSettingBridge o) => o -> m Word32
getSettingBridgeMulticastHashMax :: forall (m :: * -> *) o.
(MonadIO m, IsSettingBridge o) =>
o -> m Word32
getSettingBridgeMulticastHashMax o
obj = IO Word32 -> m Word32
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO Word32 -> m Word32) -> IO Word32 -> m Word32
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Word32
forall a. GObject a => a -> String -> IO Word32
B.Properties.getObjectPropertyUInt32 o
obj String
"multicast-hash-max"

-- | Set the value of the “@multicast-hash-max@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' settingBridge [ #multicastHashMax 'Data.GI.Base.Attributes.:=' value ]
-- @
setSettingBridgeMulticastHashMax :: (MonadIO m, IsSettingBridge o) => o -> Word32 -> m ()
setSettingBridgeMulticastHashMax :: forall (m :: * -> *) o.
(MonadIO m, IsSettingBridge o) =>
o -> Word32 -> m ()
setSettingBridgeMulticastHashMax o
obj Word32
val = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    o -> String -> Word32 -> IO ()
forall a. GObject a => a -> String -> Word32 -> IO ()
B.Properties.setObjectPropertyUInt32 o
obj String
"multicast-hash-max" Word32
val

-- | Construct a t'GValueConstruct' with valid value for the “@multicast-hash-max@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
constructSettingBridgeMulticastHashMax :: (IsSettingBridge o, MIO.MonadIO m) => Word32 -> m (GValueConstruct o)
constructSettingBridgeMulticastHashMax :: forall o (m :: * -> *).
(IsSettingBridge o, MonadIO m) =>
Word32 -> m (GValueConstruct o)
constructSettingBridgeMulticastHashMax Word32
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ do
    IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a. IO a -> IO a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> IO (GValueConstruct o))
-> IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Word32 -> IO (GValueConstruct o)
forall o. String -> Word32 -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyUInt32 String
"multicast-hash-max" Word32
val

#if defined(ENABLE_OVERLOADING)
data SettingBridgeMulticastHashMaxPropertyInfo
instance AttrInfo SettingBridgeMulticastHashMaxPropertyInfo where
    type AttrAllowedOps SettingBridgeMulticastHashMaxPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrBaseTypeConstraint SettingBridgeMulticastHashMaxPropertyInfo = IsSettingBridge
    type AttrSetTypeConstraint SettingBridgeMulticastHashMaxPropertyInfo = (~) Word32
    type AttrTransferTypeConstraint SettingBridgeMulticastHashMaxPropertyInfo = (~) Word32
    type AttrTransferType SettingBridgeMulticastHashMaxPropertyInfo = Word32
    type AttrGetType SettingBridgeMulticastHashMaxPropertyInfo = Word32
    type AttrLabel SettingBridgeMulticastHashMaxPropertyInfo = "multicast-hash-max"
    type AttrOrigin SettingBridgeMulticastHashMaxPropertyInfo = SettingBridge
    attrGet = getSettingBridgeMulticastHashMax
    attrSet = setSettingBridgeMulticastHashMax
    attrTransfer _ v = do
        return v
    attrConstruct = constructSettingBridgeMulticastHashMax
    attrClear = undefined
    dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.multicastHashMax"
        , O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#g:attr:multicastHashMax"
        })
#endif

-- VVV Prop "multicast-last-member-count"
   -- Type: TBasicType TUInt
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

-- | Get the value of the “@multicast-last-member-count@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' settingBridge #multicastLastMemberCount
-- @
getSettingBridgeMulticastLastMemberCount :: (MonadIO m, IsSettingBridge o) => o -> m Word32
getSettingBridgeMulticastLastMemberCount :: forall (m :: * -> *) o.
(MonadIO m, IsSettingBridge o) =>
o -> m Word32
getSettingBridgeMulticastLastMemberCount o
obj = IO Word32 -> m Word32
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO Word32 -> m Word32) -> IO Word32 -> m Word32
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Word32
forall a. GObject a => a -> String -> IO Word32
B.Properties.getObjectPropertyUInt32 o
obj String
"multicast-last-member-count"

-- | Set the value of the “@multicast-last-member-count@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' settingBridge [ #multicastLastMemberCount 'Data.GI.Base.Attributes.:=' value ]
-- @
setSettingBridgeMulticastLastMemberCount :: (MonadIO m, IsSettingBridge o) => o -> Word32 -> m ()
setSettingBridgeMulticastLastMemberCount :: forall (m :: * -> *) o.
(MonadIO m, IsSettingBridge o) =>
o -> Word32 -> m ()
setSettingBridgeMulticastLastMemberCount o
obj Word32
val = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    o -> String -> Word32 -> IO ()
forall a. GObject a => a -> String -> Word32 -> IO ()
B.Properties.setObjectPropertyUInt32 o
obj String
"multicast-last-member-count" Word32
val

-- | Construct a t'GValueConstruct' with valid value for the “@multicast-last-member-count@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
constructSettingBridgeMulticastLastMemberCount :: (IsSettingBridge o, MIO.MonadIO m) => Word32 -> m (GValueConstruct o)
constructSettingBridgeMulticastLastMemberCount :: forall o (m :: * -> *).
(IsSettingBridge o, MonadIO m) =>
Word32 -> m (GValueConstruct o)
constructSettingBridgeMulticastLastMemberCount Word32
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ do
    IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a. IO a -> IO a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> IO (GValueConstruct o))
-> IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Word32 -> IO (GValueConstruct o)
forall o. String -> Word32 -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyUInt32 String
"multicast-last-member-count" Word32
val

#if defined(ENABLE_OVERLOADING)
data SettingBridgeMulticastLastMemberCountPropertyInfo
instance AttrInfo SettingBridgeMulticastLastMemberCountPropertyInfo where
    type AttrAllowedOps SettingBridgeMulticastLastMemberCountPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrBaseTypeConstraint SettingBridgeMulticastLastMemberCountPropertyInfo = IsSettingBridge
    type AttrSetTypeConstraint SettingBridgeMulticastLastMemberCountPropertyInfo = (~) Word32
    type AttrTransferTypeConstraint SettingBridgeMulticastLastMemberCountPropertyInfo = (~) Word32
    type AttrTransferType SettingBridgeMulticastLastMemberCountPropertyInfo = Word32
    type AttrGetType SettingBridgeMulticastLastMemberCountPropertyInfo = Word32
    type AttrLabel SettingBridgeMulticastLastMemberCountPropertyInfo = "multicast-last-member-count"
    type AttrOrigin SettingBridgeMulticastLastMemberCountPropertyInfo = SettingBridge
    attrGet = getSettingBridgeMulticastLastMemberCount
    attrSet = setSettingBridgeMulticastLastMemberCount
    attrTransfer _ v = do
        return v
    attrConstruct = constructSettingBridgeMulticastLastMemberCount
    attrClear = undefined
    dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.multicastLastMemberCount"
        , O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#g:attr:multicastLastMemberCount"
        })
#endif

-- VVV Prop "multicast-last-member-interval"
   -- Type: TBasicType TUInt64
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Just False,Nothing)

-- | Get the value of the “@multicast-last-member-interval@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' settingBridge #multicastLastMemberInterval
-- @
getSettingBridgeMulticastLastMemberInterval :: (MonadIO m, IsSettingBridge o) => o -> m Word64
getSettingBridgeMulticastLastMemberInterval :: forall (m :: * -> *) o.
(MonadIO m, IsSettingBridge o) =>
o -> m Word64
getSettingBridgeMulticastLastMemberInterval o
obj = IO Word64 -> m Word64
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO Word64 -> m Word64) -> IO Word64 -> m Word64
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Word64
forall a. GObject a => a -> String -> IO Word64
B.Properties.getObjectPropertyUInt64 o
obj String
"multicast-last-member-interval"

-- | Set the value of the “@multicast-last-member-interval@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' settingBridge [ #multicastLastMemberInterval 'Data.GI.Base.Attributes.:=' value ]
-- @
setSettingBridgeMulticastLastMemberInterval :: (MonadIO m, IsSettingBridge o) => o -> Word64 -> m ()
setSettingBridgeMulticastLastMemberInterval :: forall (m :: * -> *) o.
(MonadIO m, IsSettingBridge o) =>
o -> Word64 -> m ()
setSettingBridgeMulticastLastMemberInterval o
obj Word64
val = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    o -> String -> Word64 -> IO ()
forall a. GObject a => a -> String -> Word64 -> IO ()
B.Properties.setObjectPropertyUInt64 o
obj String
"multicast-last-member-interval" Word64
val

-- | Construct a t'GValueConstruct' with valid value for the “@multicast-last-member-interval@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
constructSettingBridgeMulticastLastMemberInterval :: (IsSettingBridge o, MIO.MonadIO m) => Word64 -> m (GValueConstruct o)
constructSettingBridgeMulticastLastMemberInterval :: forall o (m :: * -> *).
(IsSettingBridge o, MonadIO m) =>
Word64 -> m (GValueConstruct o)
constructSettingBridgeMulticastLastMemberInterval Word64
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ do
    IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a. IO a -> IO a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> IO (GValueConstruct o))
-> IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Word64 -> IO (GValueConstruct o)
forall o. String -> Word64 -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyUInt64 String
"multicast-last-member-interval" Word64
val

#if defined(ENABLE_OVERLOADING)
data SettingBridgeMulticastLastMemberIntervalPropertyInfo
instance AttrInfo SettingBridgeMulticastLastMemberIntervalPropertyInfo where
    type AttrAllowedOps SettingBridgeMulticastLastMemberIntervalPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrBaseTypeConstraint SettingBridgeMulticastLastMemberIntervalPropertyInfo = IsSettingBridge
    type AttrSetTypeConstraint SettingBridgeMulticastLastMemberIntervalPropertyInfo = (~) Word64
    type AttrTransferTypeConstraint SettingBridgeMulticastLastMemberIntervalPropertyInfo = (~) Word64
    type AttrTransferType SettingBridgeMulticastLastMemberIntervalPropertyInfo = Word64
    type AttrGetType SettingBridgeMulticastLastMemberIntervalPropertyInfo = Word64
    type AttrLabel SettingBridgeMulticastLastMemberIntervalPropertyInfo = "multicast-last-member-interval"
    type AttrOrigin SettingBridgeMulticastLastMemberIntervalPropertyInfo = SettingBridge
    attrGet = getSettingBridgeMulticastLastMemberInterval
    attrSet = setSettingBridgeMulticastLastMemberInterval
    attrTransfer _ v = do
        return v
    attrConstruct = constructSettingBridgeMulticastLastMemberInterval
    attrClear = undefined
    dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.multicastLastMemberInterval"
        , O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#g:attr:multicastLastMemberInterval"
        })
#endif

-- VVV Prop "multicast-membership-interval"
   -- Type: TBasicType TUInt64
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Just False,Nothing)

-- | Get the value of the “@multicast-membership-interval@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' settingBridge #multicastMembershipInterval
-- @
getSettingBridgeMulticastMembershipInterval :: (MonadIO m, IsSettingBridge o) => o -> m Word64
getSettingBridgeMulticastMembershipInterval :: forall (m :: * -> *) o.
(MonadIO m, IsSettingBridge o) =>
o -> m Word64
getSettingBridgeMulticastMembershipInterval o
obj = IO Word64 -> m Word64
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO Word64 -> m Word64) -> IO Word64 -> m Word64
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Word64
forall a. GObject a => a -> String -> IO Word64
B.Properties.getObjectPropertyUInt64 o
obj String
"multicast-membership-interval"

-- | Set the value of the “@multicast-membership-interval@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' settingBridge [ #multicastMembershipInterval 'Data.GI.Base.Attributes.:=' value ]
-- @
setSettingBridgeMulticastMembershipInterval :: (MonadIO m, IsSettingBridge o) => o -> Word64 -> m ()
setSettingBridgeMulticastMembershipInterval :: forall (m :: * -> *) o.
(MonadIO m, IsSettingBridge o) =>
o -> Word64 -> m ()
setSettingBridgeMulticastMembershipInterval o
obj Word64
val = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    o -> String -> Word64 -> IO ()
forall a. GObject a => a -> String -> Word64 -> IO ()
B.Properties.setObjectPropertyUInt64 o
obj String
"multicast-membership-interval" Word64
val

-- | Construct a t'GValueConstruct' with valid value for the “@multicast-membership-interval@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
constructSettingBridgeMulticastMembershipInterval :: (IsSettingBridge o, MIO.MonadIO m) => Word64 -> m (GValueConstruct o)
constructSettingBridgeMulticastMembershipInterval :: forall o (m :: * -> *).
(IsSettingBridge o, MonadIO m) =>
Word64 -> m (GValueConstruct o)
constructSettingBridgeMulticastMembershipInterval Word64
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ do
    IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a. IO a -> IO a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> IO (GValueConstruct o))
-> IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Word64 -> IO (GValueConstruct o)
forall o. String -> Word64 -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyUInt64 String
"multicast-membership-interval" Word64
val

#if defined(ENABLE_OVERLOADING)
data SettingBridgeMulticastMembershipIntervalPropertyInfo
instance AttrInfo SettingBridgeMulticastMembershipIntervalPropertyInfo where
    type AttrAllowedOps SettingBridgeMulticastMembershipIntervalPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrBaseTypeConstraint SettingBridgeMulticastMembershipIntervalPropertyInfo = IsSettingBridge
    type AttrSetTypeConstraint SettingBridgeMulticastMembershipIntervalPropertyInfo = (~) Word64
    type AttrTransferTypeConstraint SettingBridgeMulticastMembershipIntervalPropertyInfo = (~) Word64
    type AttrTransferType SettingBridgeMulticastMembershipIntervalPropertyInfo = Word64
    type AttrGetType SettingBridgeMulticastMembershipIntervalPropertyInfo = Word64
    type AttrLabel SettingBridgeMulticastMembershipIntervalPropertyInfo = "multicast-membership-interval"
    type AttrOrigin SettingBridgeMulticastMembershipIntervalPropertyInfo = SettingBridge
    attrGet = getSettingBridgeMulticastMembershipInterval
    attrSet = setSettingBridgeMulticastMembershipInterval
    attrTransfer _ v = do
        return v
    attrConstruct = constructSettingBridgeMulticastMembershipInterval
    attrClear = undefined
    dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.multicastMembershipInterval"
        , O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#g:attr:multicastMembershipInterval"
        })
#endif

-- VVV Prop "multicast-querier"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Just False,Nothing)

-- | Get the value of the “@multicast-querier@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' settingBridge #multicastQuerier
-- @
getSettingBridgeMulticastQuerier :: (MonadIO m, IsSettingBridge o) => o -> m Bool
getSettingBridgeMulticastQuerier :: forall (m :: * -> *) o.
(MonadIO m, IsSettingBridge o) =>
o -> m Bool
getSettingBridgeMulticastQuerier o
obj = IO Bool -> m Bool
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Bool
forall a. GObject a => a -> String -> IO Bool
B.Properties.getObjectPropertyBool o
obj String
"multicast-querier"

-- | Set the value of the “@multicast-querier@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' settingBridge [ #multicastQuerier 'Data.GI.Base.Attributes.:=' value ]
-- @
setSettingBridgeMulticastQuerier :: (MonadIO m, IsSettingBridge o) => o -> Bool -> m ()
setSettingBridgeMulticastQuerier :: forall (m :: * -> *) o.
(MonadIO m, IsSettingBridge o) =>
o -> Bool -> m ()
setSettingBridgeMulticastQuerier o
obj Bool
val = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    o -> String -> Bool -> IO ()
forall a. GObject a => a -> String -> Bool -> IO ()
B.Properties.setObjectPropertyBool o
obj String
"multicast-querier" Bool
val

-- | Construct a t'GValueConstruct' with valid value for the “@multicast-querier@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
constructSettingBridgeMulticastQuerier :: (IsSettingBridge o, MIO.MonadIO m) => Bool -> m (GValueConstruct o)
constructSettingBridgeMulticastQuerier :: forall o (m :: * -> *).
(IsSettingBridge o, MonadIO m) =>
Bool -> m (GValueConstruct o)
constructSettingBridgeMulticastQuerier Bool
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ do
    IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a. IO a -> IO a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> IO (GValueConstruct o))
-> IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Bool -> IO (GValueConstruct o)
forall o. String -> Bool -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyBool String
"multicast-querier" Bool
val

#if defined(ENABLE_OVERLOADING)
data SettingBridgeMulticastQuerierPropertyInfo
instance AttrInfo SettingBridgeMulticastQuerierPropertyInfo where
    type AttrAllowedOps SettingBridgeMulticastQuerierPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrBaseTypeConstraint SettingBridgeMulticastQuerierPropertyInfo = IsSettingBridge
    type AttrSetTypeConstraint SettingBridgeMulticastQuerierPropertyInfo = (~) Bool
    type AttrTransferTypeConstraint SettingBridgeMulticastQuerierPropertyInfo = (~) Bool
    type AttrTransferType SettingBridgeMulticastQuerierPropertyInfo = Bool
    type AttrGetType SettingBridgeMulticastQuerierPropertyInfo = Bool
    type AttrLabel SettingBridgeMulticastQuerierPropertyInfo = "multicast-querier"
    type AttrOrigin SettingBridgeMulticastQuerierPropertyInfo = SettingBridge
    attrGet = getSettingBridgeMulticastQuerier
    attrSet = setSettingBridgeMulticastQuerier
    attrTransfer _ v = do
        return v
    attrConstruct = constructSettingBridgeMulticastQuerier
    attrClear = undefined
    dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.multicastQuerier"
        , O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#g:attr:multicastQuerier"
        })
#endif

-- VVV Prop "multicast-querier-interval"
   -- Type: TBasicType TUInt64
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Just False,Nothing)

-- | Get the value of the “@multicast-querier-interval@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' settingBridge #multicastQuerierInterval
-- @
getSettingBridgeMulticastQuerierInterval :: (MonadIO m, IsSettingBridge o) => o -> m Word64
getSettingBridgeMulticastQuerierInterval :: forall (m :: * -> *) o.
(MonadIO m, IsSettingBridge o) =>
o -> m Word64
getSettingBridgeMulticastQuerierInterval o
obj = IO Word64 -> m Word64
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO Word64 -> m Word64) -> IO Word64 -> m Word64
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Word64
forall a. GObject a => a -> String -> IO Word64
B.Properties.getObjectPropertyUInt64 o
obj String
"multicast-querier-interval"

-- | Set the value of the “@multicast-querier-interval@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' settingBridge [ #multicastQuerierInterval 'Data.GI.Base.Attributes.:=' value ]
-- @
setSettingBridgeMulticastQuerierInterval :: (MonadIO m, IsSettingBridge o) => o -> Word64 -> m ()
setSettingBridgeMulticastQuerierInterval :: forall (m :: * -> *) o.
(MonadIO m, IsSettingBridge o) =>
o -> Word64 -> m ()
setSettingBridgeMulticastQuerierInterval o
obj Word64
val = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    o -> String -> Word64 -> IO ()
forall a. GObject a => a -> String -> Word64 -> IO ()
B.Properties.setObjectPropertyUInt64 o
obj String
"multicast-querier-interval" Word64
val

-- | Construct a t'GValueConstruct' with valid value for the “@multicast-querier-interval@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
constructSettingBridgeMulticastQuerierInterval :: (IsSettingBridge o, MIO.MonadIO m) => Word64 -> m (GValueConstruct o)
constructSettingBridgeMulticastQuerierInterval :: forall o (m :: * -> *).
(IsSettingBridge o, MonadIO m) =>
Word64 -> m (GValueConstruct o)
constructSettingBridgeMulticastQuerierInterval Word64
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ do
    IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a. IO a -> IO a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> IO (GValueConstruct o))
-> IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Word64 -> IO (GValueConstruct o)
forall o. String -> Word64 -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyUInt64 String
"multicast-querier-interval" Word64
val

#if defined(ENABLE_OVERLOADING)
data SettingBridgeMulticastQuerierIntervalPropertyInfo
instance AttrInfo SettingBridgeMulticastQuerierIntervalPropertyInfo where
    type AttrAllowedOps SettingBridgeMulticastQuerierIntervalPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrBaseTypeConstraint SettingBridgeMulticastQuerierIntervalPropertyInfo = IsSettingBridge
    type AttrSetTypeConstraint SettingBridgeMulticastQuerierIntervalPropertyInfo = (~) Word64
    type AttrTransferTypeConstraint SettingBridgeMulticastQuerierIntervalPropertyInfo = (~) Word64
    type AttrTransferType SettingBridgeMulticastQuerierIntervalPropertyInfo = Word64
    type AttrGetType SettingBridgeMulticastQuerierIntervalPropertyInfo = Word64
    type AttrLabel SettingBridgeMulticastQuerierIntervalPropertyInfo = "multicast-querier-interval"
    type AttrOrigin SettingBridgeMulticastQuerierIntervalPropertyInfo = SettingBridge
    attrGet = getSettingBridgeMulticastQuerierInterval
    attrSet = setSettingBridgeMulticastQuerierInterval
    attrTransfer _ v = do
        return v
    attrConstruct = constructSettingBridgeMulticastQuerierInterval
    attrClear = undefined
    dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.multicastQuerierInterval"
        , O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#g:attr:multicastQuerierInterval"
        })
#endif

-- VVV Prop "multicast-query-interval"
   -- Type: TBasicType TUInt64
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Just False,Nothing)

-- | Get the value of the “@multicast-query-interval@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' settingBridge #multicastQueryInterval
-- @
getSettingBridgeMulticastQueryInterval :: (MonadIO m, IsSettingBridge o) => o -> m Word64
getSettingBridgeMulticastQueryInterval :: forall (m :: * -> *) o.
(MonadIO m, IsSettingBridge o) =>
o -> m Word64
getSettingBridgeMulticastQueryInterval o
obj = IO Word64 -> m Word64
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO Word64 -> m Word64) -> IO Word64 -> m Word64
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Word64
forall a. GObject a => a -> String -> IO Word64
B.Properties.getObjectPropertyUInt64 o
obj String
"multicast-query-interval"

-- | Set the value of the “@multicast-query-interval@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' settingBridge [ #multicastQueryInterval 'Data.GI.Base.Attributes.:=' value ]
-- @
setSettingBridgeMulticastQueryInterval :: (MonadIO m, IsSettingBridge o) => o -> Word64 -> m ()
setSettingBridgeMulticastQueryInterval :: forall (m :: * -> *) o.
(MonadIO m, IsSettingBridge o) =>
o -> Word64 -> m ()
setSettingBridgeMulticastQueryInterval o
obj Word64
val = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    o -> String -> Word64 -> IO ()
forall a. GObject a => a -> String -> Word64 -> IO ()
B.Properties.setObjectPropertyUInt64 o
obj String
"multicast-query-interval" Word64
val

-- | Construct a t'GValueConstruct' with valid value for the “@multicast-query-interval@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
constructSettingBridgeMulticastQueryInterval :: (IsSettingBridge o, MIO.MonadIO m) => Word64 -> m (GValueConstruct o)
constructSettingBridgeMulticastQueryInterval :: forall o (m :: * -> *).
(IsSettingBridge o, MonadIO m) =>
Word64 -> m (GValueConstruct o)
constructSettingBridgeMulticastQueryInterval Word64
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ do
    IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a. IO a -> IO a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> IO (GValueConstruct o))
-> IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Word64 -> IO (GValueConstruct o)
forall o. String -> Word64 -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyUInt64 String
"multicast-query-interval" Word64
val

#if defined(ENABLE_OVERLOADING)
data SettingBridgeMulticastQueryIntervalPropertyInfo
instance AttrInfo SettingBridgeMulticastQueryIntervalPropertyInfo where
    type AttrAllowedOps SettingBridgeMulticastQueryIntervalPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrBaseTypeConstraint SettingBridgeMulticastQueryIntervalPropertyInfo = IsSettingBridge
    type AttrSetTypeConstraint SettingBridgeMulticastQueryIntervalPropertyInfo = (~) Word64
    type AttrTransferTypeConstraint SettingBridgeMulticastQueryIntervalPropertyInfo = (~) Word64
    type AttrTransferType SettingBridgeMulticastQueryIntervalPropertyInfo = Word64
    type AttrGetType SettingBridgeMulticastQueryIntervalPropertyInfo = Word64
    type AttrLabel SettingBridgeMulticastQueryIntervalPropertyInfo = "multicast-query-interval"
    type AttrOrigin SettingBridgeMulticastQueryIntervalPropertyInfo = SettingBridge
    attrGet = getSettingBridgeMulticastQueryInterval
    attrSet = setSettingBridgeMulticastQueryInterval
    attrTransfer _ v = do
        return v
    attrConstruct = constructSettingBridgeMulticastQueryInterval
    attrClear = undefined
    dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.multicastQueryInterval"
        , O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#g:attr:multicastQueryInterval"
        })
#endif

-- VVV Prop "multicast-query-response-interval"
   -- Type: TBasicType TUInt64
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Just False,Nothing)

-- | Get the value of the “@multicast-query-response-interval@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' settingBridge #multicastQueryResponseInterval
-- @
getSettingBridgeMulticastQueryResponseInterval :: (MonadIO m, IsSettingBridge o) => o -> m Word64
getSettingBridgeMulticastQueryResponseInterval :: forall (m :: * -> *) o.
(MonadIO m, IsSettingBridge o) =>
o -> m Word64
getSettingBridgeMulticastQueryResponseInterval o
obj = IO Word64 -> m Word64
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO Word64 -> m Word64) -> IO Word64 -> m Word64
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Word64
forall a. GObject a => a -> String -> IO Word64
B.Properties.getObjectPropertyUInt64 o
obj String
"multicast-query-response-interval"

-- | Set the value of the “@multicast-query-response-interval@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' settingBridge [ #multicastQueryResponseInterval 'Data.GI.Base.Attributes.:=' value ]
-- @
setSettingBridgeMulticastQueryResponseInterval :: (MonadIO m, IsSettingBridge o) => o -> Word64 -> m ()
setSettingBridgeMulticastQueryResponseInterval :: forall (m :: * -> *) o.
(MonadIO m, IsSettingBridge o) =>
o -> Word64 -> m ()
setSettingBridgeMulticastQueryResponseInterval o
obj Word64
val = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    o -> String -> Word64 -> IO ()
forall a. GObject a => a -> String -> Word64 -> IO ()
B.Properties.setObjectPropertyUInt64 o
obj String
"multicast-query-response-interval" Word64
val

-- | Construct a t'GValueConstruct' with valid value for the “@multicast-query-response-interval@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
constructSettingBridgeMulticastQueryResponseInterval :: (IsSettingBridge o, MIO.MonadIO m) => Word64 -> m (GValueConstruct o)
constructSettingBridgeMulticastQueryResponseInterval :: forall o (m :: * -> *).
(IsSettingBridge o, MonadIO m) =>
Word64 -> m (GValueConstruct o)
constructSettingBridgeMulticastQueryResponseInterval Word64
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ do
    IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a. IO a -> IO a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> IO (GValueConstruct o))
-> IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Word64 -> IO (GValueConstruct o)
forall o. String -> Word64 -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyUInt64 String
"multicast-query-response-interval" Word64
val

#if defined(ENABLE_OVERLOADING)
data SettingBridgeMulticastQueryResponseIntervalPropertyInfo
instance AttrInfo SettingBridgeMulticastQueryResponseIntervalPropertyInfo where
    type AttrAllowedOps SettingBridgeMulticastQueryResponseIntervalPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrBaseTypeConstraint SettingBridgeMulticastQueryResponseIntervalPropertyInfo = IsSettingBridge
    type AttrSetTypeConstraint SettingBridgeMulticastQueryResponseIntervalPropertyInfo = (~) Word64
    type AttrTransferTypeConstraint SettingBridgeMulticastQueryResponseIntervalPropertyInfo = (~) Word64
    type AttrTransferType SettingBridgeMulticastQueryResponseIntervalPropertyInfo = Word64
    type AttrGetType SettingBridgeMulticastQueryResponseIntervalPropertyInfo = Word64
    type AttrLabel SettingBridgeMulticastQueryResponseIntervalPropertyInfo = "multicast-query-response-interval"
    type AttrOrigin SettingBridgeMulticastQueryResponseIntervalPropertyInfo = SettingBridge
    attrGet = getSettingBridgeMulticastQueryResponseInterval
    attrSet = setSettingBridgeMulticastQueryResponseInterval
    attrTransfer _ v = do
        return v
    attrConstruct = constructSettingBridgeMulticastQueryResponseInterval
    attrClear = undefined
    dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.multicastQueryResponseInterval"
        , O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#g:attr:multicastQueryResponseInterval"
        })
#endif

-- VVV Prop "multicast-query-use-ifaddr"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Just False,Nothing)

-- | Get the value of the “@multicast-query-use-ifaddr@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' settingBridge #multicastQueryUseIfaddr
-- @
getSettingBridgeMulticastQueryUseIfaddr :: (MonadIO m, IsSettingBridge o) => o -> m Bool
getSettingBridgeMulticastQueryUseIfaddr :: forall (m :: * -> *) o.
(MonadIO m, IsSettingBridge o) =>
o -> m Bool
getSettingBridgeMulticastQueryUseIfaddr o
obj = IO Bool -> m Bool
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Bool
forall a. GObject a => a -> String -> IO Bool
B.Properties.getObjectPropertyBool o
obj String
"multicast-query-use-ifaddr"

-- | Set the value of the “@multicast-query-use-ifaddr@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' settingBridge [ #multicastQueryUseIfaddr 'Data.GI.Base.Attributes.:=' value ]
-- @
setSettingBridgeMulticastQueryUseIfaddr :: (MonadIO m, IsSettingBridge o) => o -> Bool -> m ()
setSettingBridgeMulticastQueryUseIfaddr :: forall (m :: * -> *) o.
(MonadIO m, IsSettingBridge o) =>
o -> Bool -> m ()
setSettingBridgeMulticastQueryUseIfaddr o
obj Bool
val = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    o -> String -> Bool -> IO ()
forall a. GObject a => a -> String -> Bool -> IO ()
B.Properties.setObjectPropertyBool o
obj String
"multicast-query-use-ifaddr" Bool
val

-- | Construct a t'GValueConstruct' with valid value for the “@multicast-query-use-ifaddr@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
constructSettingBridgeMulticastQueryUseIfaddr :: (IsSettingBridge o, MIO.MonadIO m) => Bool -> m (GValueConstruct o)
constructSettingBridgeMulticastQueryUseIfaddr :: forall o (m :: * -> *).
(IsSettingBridge o, MonadIO m) =>
Bool -> m (GValueConstruct o)
constructSettingBridgeMulticastQueryUseIfaddr Bool
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ do
    IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a. IO a -> IO a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> IO (GValueConstruct o))
-> IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Bool -> IO (GValueConstruct o)
forall o. String -> Bool -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyBool String
"multicast-query-use-ifaddr" Bool
val

#if defined(ENABLE_OVERLOADING)
data SettingBridgeMulticastQueryUseIfaddrPropertyInfo
instance AttrInfo SettingBridgeMulticastQueryUseIfaddrPropertyInfo where
    type AttrAllowedOps SettingBridgeMulticastQueryUseIfaddrPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrBaseTypeConstraint SettingBridgeMulticastQueryUseIfaddrPropertyInfo = IsSettingBridge
    type AttrSetTypeConstraint SettingBridgeMulticastQueryUseIfaddrPropertyInfo = (~) Bool
    type AttrTransferTypeConstraint SettingBridgeMulticastQueryUseIfaddrPropertyInfo = (~) Bool
    type AttrTransferType SettingBridgeMulticastQueryUseIfaddrPropertyInfo = Bool
    type AttrGetType SettingBridgeMulticastQueryUseIfaddrPropertyInfo = Bool
    type AttrLabel SettingBridgeMulticastQueryUseIfaddrPropertyInfo = "multicast-query-use-ifaddr"
    type AttrOrigin SettingBridgeMulticastQueryUseIfaddrPropertyInfo = SettingBridge
    attrGet = getSettingBridgeMulticastQueryUseIfaddr
    attrSet = setSettingBridgeMulticastQueryUseIfaddr
    attrTransfer _ v = do
        return v
    attrConstruct = constructSettingBridgeMulticastQueryUseIfaddr
    attrClear = undefined
    dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.multicastQueryUseIfaddr"
        , O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#g:attr:multicastQueryUseIfaddr"
        })
#endif

-- VVV Prop "multicast-router"
   -- Type: TBasicType TUTF8
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Just False,Nothing)

-- | Get the value of the “@multicast-router@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' settingBridge #multicastRouter
-- @
getSettingBridgeMulticastRouter :: (MonadIO m, IsSettingBridge o) => o -> m T.Text
getSettingBridgeMulticastRouter :: forall (m :: * -> *) o.
(MonadIO m, IsSettingBridge o) =>
o -> m Text
getSettingBridgeMulticastRouter o
obj = IO Text -> m Text
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO Text -> m Text) -> IO Text -> m Text
forall a b. (a -> b) -> a -> b
$ Text -> IO (Maybe Text) -> IO Text
forall a. HasCallStack => Text -> IO (Maybe a) -> IO a
checkUnexpectedNothing Text
"getSettingBridgeMulticastRouter" (IO (Maybe Text) -> IO Text) -> IO (Maybe Text) -> IO Text
forall a b. (a -> b) -> a -> b
$ o -> String -> IO (Maybe Text)
forall a. GObject a => a -> String -> IO (Maybe Text)
B.Properties.getObjectPropertyString o
obj String
"multicast-router"

-- | Set the value of the “@multicast-router@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' settingBridge [ #multicastRouter 'Data.GI.Base.Attributes.:=' value ]
-- @
setSettingBridgeMulticastRouter :: (MonadIO m, IsSettingBridge o) => o -> T.Text -> m ()
setSettingBridgeMulticastRouter :: forall (m :: * -> *) o.
(MonadIO m, IsSettingBridge o) =>
o -> Text -> m ()
setSettingBridgeMulticastRouter o
obj Text
val = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    o -> String -> Maybe Text -> IO ()
forall a. GObject a => a -> String -> Maybe Text -> IO ()
B.Properties.setObjectPropertyString o
obj String
"multicast-router" (Text -> Maybe Text
forall a. a -> Maybe a
Just Text
val)

-- | Construct a t'GValueConstruct' with valid value for the “@multicast-router@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
constructSettingBridgeMulticastRouter :: (IsSettingBridge o, MIO.MonadIO m) => T.Text -> m (GValueConstruct o)
constructSettingBridgeMulticastRouter :: forall o (m :: * -> *).
(IsSettingBridge o, MonadIO m) =>
Text -> m (GValueConstruct o)
constructSettingBridgeMulticastRouter Text
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ do
    IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a. IO a -> IO a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> IO (GValueConstruct o))
-> IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Maybe Text -> IO (GValueConstruct o)
forall o. String -> Maybe Text -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyString String
"multicast-router" (Text -> Maybe Text
forall a. a -> Maybe a
P.Just Text
val)

-- | Set the value of the “@multicast-router@” property to `Nothing`.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.clear' #multicastRouter
-- @
clearSettingBridgeMulticastRouter :: (MonadIO m, IsSettingBridge o) => o -> m ()
clearSettingBridgeMulticastRouter :: forall (m :: * -> *) o. (MonadIO m, IsSettingBridge o) => o -> m ()
clearSettingBridgeMulticastRouter o
obj = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ o -> String -> Maybe Text -> IO ()
forall a. GObject a => a -> String -> Maybe Text -> IO ()
B.Properties.setObjectPropertyString o
obj String
"multicast-router" (Maybe Text
forall a. Maybe a
Nothing :: Maybe T.Text)

#if defined(ENABLE_OVERLOADING)
data SettingBridgeMulticastRouterPropertyInfo
instance AttrInfo SettingBridgeMulticastRouterPropertyInfo where
    type AttrAllowedOps SettingBridgeMulticastRouterPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet, 'AttrClear]
    type AttrBaseTypeConstraint SettingBridgeMulticastRouterPropertyInfo = IsSettingBridge
    type AttrSetTypeConstraint SettingBridgeMulticastRouterPropertyInfo = (~) T.Text
    type AttrTransferTypeConstraint SettingBridgeMulticastRouterPropertyInfo = (~) T.Text
    type AttrTransferType SettingBridgeMulticastRouterPropertyInfo = T.Text
    type AttrGetType SettingBridgeMulticastRouterPropertyInfo = T.Text
    type AttrLabel SettingBridgeMulticastRouterPropertyInfo = "multicast-router"
    type AttrOrigin SettingBridgeMulticastRouterPropertyInfo = SettingBridge
    attrGet = getSettingBridgeMulticastRouter
    attrSet = setSettingBridgeMulticastRouter
    attrTransfer _ v = do
        return v
    attrConstruct = constructSettingBridgeMulticastRouter
    attrClear = clearSettingBridgeMulticastRouter
    dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.multicastRouter"
        , O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#g:attr:multicastRouter"
        })
#endif

-- VVV Prop "multicast-snooping"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Just False,Nothing)

-- | Get the value of the “@multicast-snooping@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' settingBridge #multicastSnooping
-- @
getSettingBridgeMulticastSnooping :: (MonadIO m, IsSettingBridge o) => o -> m Bool
getSettingBridgeMulticastSnooping :: forall (m :: * -> *) o.
(MonadIO m, IsSettingBridge o) =>
o -> m Bool
getSettingBridgeMulticastSnooping o
obj = IO Bool -> m Bool
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Bool
forall a. GObject a => a -> String -> IO Bool
B.Properties.getObjectPropertyBool o
obj String
"multicast-snooping"

-- | Set the value of the “@multicast-snooping@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' settingBridge [ #multicastSnooping 'Data.GI.Base.Attributes.:=' value ]
-- @
setSettingBridgeMulticastSnooping :: (MonadIO m, IsSettingBridge o) => o -> Bool -> m ()
setSettingBridgeMulticastSnooping :: forall (m :: * -> *) o.
(MonadIO m, IsSettingBridge o) =>
o -> Bool -> m ()
setSettingBridgeMulticastSnooping o
obj Bool
val = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    o -> String -> Bool -> IO ()
forall a. GObject a => a -> String -> Bool -> IO ()
B.Properties.setObjectPropertyBool o
obj String
"multicast-snooping" Bool
val

-- | Construct a t'GValueConstruct' with valid value for the “@multicast-snooping@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
constructSettingBridgeMulticastSnooping :: (IsSettingBridge o, MIO.MonadIO m) => Bool -> m (GValueConstruct o)
constructSettingBridgeMulticastSnooping :: forall o (m :: * -> *).
(IsSettingBridge o, MonadIO m) =>
Bool -> m (GValueConstruct o)
constructSettingBridgeMulticastSnooping Bool
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ do
    IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a. IO a -> IO a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> IO (GValueConstruct o))
-> IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Bool -> IO (GValueConstruct o)
forall o. String -> Bool -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyBool String
"multicast-snooping" Bool
val

#if defined(ENABLE_OVERLOADING)
data SettingBridgeMulticastSnoopingPropertyInfo
instance AttrInfo SettingBridgeMulticastSnoopingPropertyInfo where
    type AttrAllowedOps SettingBridgeMulticastSnoopingPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrBaseTypeConstraint SettingBridgeMulticastSnoopingPropertyInfo = IsSettingBridge
    type AttrSetTypeConstraint SettingBridgeMulticastSnoopingPropertyInfo = (~) Bool
    type AttrTransferTypeConstraint SettingBridgeMulticastSnoopingPropertyInfo = (~) Bool
    type AttrTransferType SettingBridgeMulticastSnoopingPropertyInfo = Bool
    type AttrGetType SettingBridgeMulticastSnoopingPropertyInfo = Bool
    type AttrLabel SettingBridgeMulticastSnoopingPropertyInfo = "multicast-snooping"
    type AttrOrigin SettingBridgeMulticastSnoopingPropertyInfo = SettingBridge
    attrGet = getSettingBridgeMulticastSnooping
    attrSet = setSettingBridgeMulticastSnooping
    attrTransfer _ v = do
        return v
    attrConstruct = constructSettingBridgeMulticastSnooping
    attrClear = undefined
    dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.multicastSnooping"
        , O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#g:attr:multicastSnooping"
        })
#endif

-- VVV Prop "multicast-startup-query-count"
   -- Type: TBasicType TUInt
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

-- | Get the value of the “@multicast-startup-query-count@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' settingBridge #multicastStartupQueryCount
-- @
getSettingBridgeMulticastStartupQueryCount :: (MonadIO m, IsSettingBridge o) => o -> m Word32
getSettingBridgeMulticastStartupQueryCount :: forall (m :: * -> *) o.
(MonadIO m, IsSettingBridge o) =>
o -> m Word32
getSettingBridgeMulticastStartupQueryCount o
obj = IO Word32 -> m Word32
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO Word32 -> m Word32) -> IO Word32 -> m Word32
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Word32
forall a. GObject a => a -> String -> IO Word32
B.Properties.getObjectPropertyUInt32 o
obj String
"multicast-startup-query-count"

-- | Set the value of the “@multicast-startup-query-count@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' settingBridge [ #multicastStartupQueryCount 'Data.GI.Base.Attributes.:=' value ]
-- @
setSettingBridgeMulticastStartupQueryCount :: (MonadIO m, IsSettingBridge o) => o -> Word32 -> m ()
setSettingBridgeMulticastStartupQueryCount :: forall (m :: * -> *) o.
(MonadIO m, IsSettingBridge o) =>
o -> Word32 -> m ()
setSettingBridgeMulticastStartupQueryCount o
obj Word32
val = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    o -> String -> Word32 -> IO ()
forall a. GObject a => a -> String -> Word32 -> IO ()
B.Properties.setObjectPropertyUInt32 o
obj String
"multicast-startup-query-count" Word32
val

-- | Construct a t'GValueConstruct' with valid value for the “@multicast-startup-query-count@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
constructSettingBridgeMulticastStartupQueryCount :: (IsSettingBridge o, MIO.MonadIO m) => Word32 -> m (GValueConstruct o)
constructSettingBridgeMulticastStartupQueryCount :: forall o (m :: * -> *).
(IsSettingBridge o, MonadIO m) =>
Word32 -> m (GValueConstruct o)
constructSettingBridgeMulticastStartupQueryCount Word32
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ do
    IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a. IO a -> IO a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> IO (GValueConstruct o))
-> IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Word32 -> IO (GValueConstruct o)
forall o. String -> Word32 -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyUInt32 String
"multicast-startup-query-count" Word32
val

#if defined(ENABLE_OVERLOADING)
data SettingBridgeMulticastStartupQueryCountPropertyInfo
instance AttrInfo SettingBridgeMulticastStartupQueryCountPropertyInfo where
    type AttrAllowedOps SettingBridgeMulticastStartupQueryCountPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrBaseTypeConstraint SettingBridgeMulticastStartupQueryCountPropertyInfo = IsSettingBridge
    type AttrSetTypeConstraint SettingBridgeMulticastStartupQueryCountPropertyInfo = (~) Word32
    type AttrTransferTypeConstraint SettingBridgeMulticastStartupQueryCountPropertyInfo = (~) Word32
    type AttrTransferType SettingBridgeMulticastStartupQueryCountPropertyInfo = Word32
    type AttrGetType SettingBridgeMulticastStartupQueryCountPropertyInfo = Word32
    type AttrLabel SettingBridgeMulticastStartupQueryCountPropertyInfo = "multicast-startup-query-count"
    type AttrOrigin SettingBridgeMulticastStartupQueryCountPropertyInfo = SettingBridge
    attrGet = getSettingBridgeMulticastStartupQueryCount
    attrSet = setSettingBridgeMulticastStartupQueryCount
    attrTransfer _ v = do
        return v
    attrConstruct = constructSettingBridgeMulticastStartupQueryCount
    attrClear = undefined
    dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.multicastStartupQueryCount"
        , O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#g:attr:multicastStartupQueryCount"
        })
#endif

-- VVV Prop "multicast-startup-query-interval"
   -- Type: TBasicType TUInt64
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Just False,Nothing)

-- | Get the value of the “@multicast-startup-query-interval@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' settingBridge #multicastStartupQueryInterval
-- @
getSettingBridgeMulticastStartupQueryInterval :: (MonadIO m, IsSettingBridge o) => o -> m Word64
getSettingBridgeMulticastStartupQueryInterval :: forall (m :: * -> *) o.
(MonadIO m, IsSettingBridge o) =>
o -> m Word64
getSettingBridgeMulticastStartupQueryInterval o
obj = IO Word64 -> m Word64
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO Word64 -> m Word64) -> IO Word64 -> m Word64
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Word64
forall a. GObject a => a -> String -> IO Word64
B.Properties.getObjectPropertyUInt64 o
obj String
"multicast-startup-query-interval"

-- | Set the value of the “@multicast-startup-query-interval@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' settingBridge [ #multicastStartupQueryInterval 'Data.GI.Base.Attributes.:=' value ]
-- @
setSettingBridgeMulticastStartupQueryInterval :: (MonadIO m, IsSettingBridge o) => o -> Word64 -> m ()
setSettingBridgeMulticastStartupQueryInterval :: forall (m :: * -> *) o.
(MonadIO m, IsSettingBridge o) =>
o -> Word64 -> m ()
setSettingBridgeMulticastStartupQueryInterval o
obj Word64
val = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    o -> String -> Word64 -> IO ()
forall a. GObject a => a -> String -> Word64 -> IO ()
B.Properties.setObjectPropertyUInt64 o
obj String
"multicast-startup-query-interval" Word64
val

-- | Construct a t'GValueConstruct' with valid value for the “@multicast-startup-query-interval@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
constructSettingBridgeMulticastStartupQueryInterval :: (IsSettingBridge o, MIO.MonadIO m) => Word64 -> m (GValueConstruct o)
constructSettingBridgeMulticastStartupQueryInterval :: forall o (m :: * -> *).
(IsSettingBridge o, MonadIO m) =>
Word64 -> m (GValueConstruct o)
constructSettingBridgeMulticastStartupQueryInterval Word64
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ do
    IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a. IO a -> IO a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> IO (GValueConstruct o))
-> IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Word64 -> IO (GValueConstruct o)
forall o. String -> Word64 -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyUInt64 String
"multicast-startup-query-interval" Word64
val

#if defined(ENABLE_OVERLOADING)
data SettingBridgeMulticastStartupQueryIntervalPropertyInfo
instance AttrInfo SettingBridgeMulticastStartupQueryIntervalPropertyInfo where
    type AttrAllowedOps SettingBridgeMulticastStartupQueryIntervalPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrBaseTypeConstraint SettingBridgeMulticastStartupQueryIntervalPropertyInfo = IsSettingBridge
    type AttrSetTypeConstraint SettingBridgeMulticastStartupQueryIntervalPropertyInfo = (~) Word64
    type AttrTransferTypeConstraint SettingBridgeMulticastStartupQueryIntervalPropertyInfo = (~) Word64
    type AttrTransferType SettingBridgeMulticastStartupQueryIntervalPropertyInfo = Word64
    type AttrGetType SettingBridgeMulticastStartupQueryIntervalPropertyInfo = Word64
    type AttrLabel SettingBridgeMulticastStartupQueryIntervalPropertyInfo = "multicast-startup-query-interval"
    type AttrOrigin SettingBridgeMulticastStartupQueryIntervalPropertyInfo = SettingBridge
    attrGet = getSettingBridgeMulticastStartupQueryInterval
    attrSet = setSettingBridgeMulticastStartupQueryInterval
    attrTransfer _ v = do
        return v
    attrConstruct = constructSettingBridgeMulticastStartupQueryInterval
    attrClear = undefined
    dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.multicastStartupQueryInterval"
        , O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#g:attr:multicastStartupQueryInterval"
        })
#endif

-- VVV Prop "priority"
   -- Type: TBasicType TUInt
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

-- | Get the value of the “@priority@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' settingBridge #priority
-- @
getSettingBridgePriority :: (MonadIO m, IsSettingBridge o) => o -> m Word32
getSettingBridgePriority :: forall (m :: * -> *) o.
(MonadIO m, IsSettingBridge o) =>
o -> m Word32
getSettingBridgePriority o
obj = IO Word32 -> m Word32
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO Word32 -> m Word32) -> IO Word32 -> m Word32
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Word32
forall a. GObject a => a -> String -> IO Word32
B.Properties.getObjectPropertyUInt32 o
obj String
"priority"

-- | Set the value of the “@priority@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' settingBridge [ #priority 'Data.GI.Base.Attributes.:=' value ]
-- @
setSettingBridgePriority :: (MonadIO m, IsSettingBridge o) => o -> Word32 -> m ()
setSettingBridgePriority :: forall (m :: * -> *) o.
(MonadIO m, IsSettingBridge o) =>
o -> Word32 -> m ()
setSettingBridgePriority o
obj Word32
val = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    o -> String -> Word32 -> IO ()
forall a. GObject a => a -> String -> Word32 -> IO ()
B.Properties.setObjectPropertyUInt32 o
obj String
"priority" Word32
val

-- | Construct a t'GValueConstruct' with valid value for the “@priority@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
constructSettingBridgePriority :: (IsSettingBridge o, MIO.MonadIO m) => Word32 -> m (GValueConstruct o)
constructSettingBridgePriority :: forall o (m :: * -> *).
(IsSettingBridge o, MonadIO m) =>
Word32 -> m (GValueConstruct o)
constructSettingBridgePriority Word32
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ do
    IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a. IO a -> IO a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> IO (GValueConstruct o))
-> IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Word32 -> IO (GValueConstruct o)
forall o. String -> Word32 -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyUInt32 String
"priority" Word32
val

#if defined(ENABLE_OVERLOADING)
data SettingBridgePriorityPropertyInfo
instance AttrInfo SettingBridgePriorityPropertyInfo where
    type AttrAllowedOps SettingBridgePriorityPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrBaseTypeConstraint SettingBridgePriorityPropertyInfo = IsSettingBridge
    type AttrSetTypeConstraint SettingBridgePriorityPropertyInfo = (~) Word32
    type AttrTransferTypeConstraint SettingBridgePriorityPropertyInfo = (~) Word32
    type AttrTransferType SettingBridgePriorityPropertyInfo = Word32
    type AttrGetType SettingBridgePriorityPropertyInfo = Word32
    type AttrLabel SettingBridgePriorityPropertyInfo = "priority"
    type AttrOrigin SettingBridgePriorityPropertyInfo = SettingBridge
    attrGet = getSettingBridgePriority
    attrSet = setSettingBridgePriority
    attrTransfer _ v = do
        return v
    attrConstruct = constructSettingBridgePriority
    attrClear = undefined
    dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.priority"
        , O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#g:attr:priority"
        })
#endif

-- VVV Prop "stp"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Just False,Nothing)

-- | Get the value of the “@stp@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' settingBridge #stp
-- @
getSettingBridgeStp :: (MonadIO m, IsSettingBridge o) => o -> m Bool
getSettingBridgeStp :: forall (m :: * -> *) o.
(MonadIO m, IsSettingBridge o) =>
o -> m Bool
getSettingBridgeStp o
obj = IO Bool -> m Bool
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Bool
forall a. GObject a => a -> String -> IO Bool
B.Properties.getObjectPropertyBool o
obj String
"stp"

-- | Set the value of the “@stp@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' settingBridge [ #stp 'Data.GI.Base.Attributes.:=' value ]
-- @
setSettingBridgeStp :: (MonadIO m, IsSettingBridge o) => o -> Bool -> m ()
setSettingBridgeStp :: forall (m :: * -> *) o.
(MonadIO m, IsSettingBridge o) =>
o -> Bool -> m ()
setSettingBridgeStp o
obj Bool
val = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    o -> String -> Bool -> IO ()
forall a. GObject a => a -> String -> Bool -> IO ()
B.Properties.setObjectPropertyBool o
obj String
"stp" Bool
val

-- | Construct a t'GValueConstruct' with valid value for the “@stp@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
constructSettingBridgeStp :: (IsSettingBridge o, MIO.MonadIO m) => Bool -> m (GValueConstruct o)
constructSettingBridgeStp :: forall o (m :: * -> *).
(IsSettingBridge o, MonadIO m) =>
Bool -> m (GValueConstruct o)
constructSettingBridgeStp Bool
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ do
    IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a. IO a -> IO a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> IO (GValueConstruct o))
-> IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Bool -> IO (GValueConstruct o)
forall o. String -> Bool -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyBool String
"stp" Bool
val

#if defined(ENABLE_OVERLOADING)
data SettingBridgeStpPropertyInfo
instance AttrInfo SettingBridgeStpPropertyInfo where
    type AttrAllowedOps SettingBridgeStpPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrBaseTypeConstraint SettingBridgeStpPropertyInfo = IsSettingBridge
    type AttrSetTypeConstraint SettingBridgeStpPropertyInfo = (~) Bool
    type AttrTransferTypeConstraint SettingBridgeStpPropertyInfo = (~) Bool
    type AttrTransferType SettingBridgeStpPropertyInfo = Bool
    type AttrGetType SettingBridgeStpPropertyInfo = Bool
    type AttrLabel SettingBridgeStpPropertyInfo = "stp"
    type AttrOrigin SettingBridgeStpPropertyInfo = SettingBridge
    attrGet = getSettingBridgeStp
    attrSet = setSettingBridgeStp
    attrTransfer _ v = do
        return v
    attrConstruct = constructSettingBridgeStp
    attrClear = undefined
    dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.stp"
        , O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#g:attr:stp"
        })
#endif

-- VVV Prop "vlan-default-pvid"
   -- Type: TBasicType TUInt
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

-- | Get the value of the “@vlan-default-pvid@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' settingBridge #vlanDefaultPvid
-- @
getSettingBridgeVlanDefaultPvid :: (MonadIO m, IsSettingBridge o) => o -> m Word32
getSettingBridgeVlanDefaultPvid :: forall (m :: * -> *) o.
(MonadIO m, IsSettingBridge o) =>
o -> m Word32
getSettingBridgeVlanDefaultPvid o
obj = IO Word32 -> m Word32
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO Word32 -> m Word32) -> IO Word32 -> m Word32
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Word32
forall a. GObject a => a -> String -> IO Word32
B.Properties.getObjectPropertyUInt32 o
obj String
"vlan-default-pvid"

-- | Set the value of the “@vlan-default-pvid@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' settingBridge [ #vlanDefaultPvid 'Data.GI.Base.Attributes.:=' value ]
-- @
setSettingBridgeVlanDefaultPvid :: (MonadIO m, IsSettingBridge o) => o -> Word32 -> m ()
setSettingBridgeVlanDefaultPvid :: forall (m :: * -> *) o.
(MonadIO m, IsSettingBridge o) =>
o -> Word32 -> m ()
setSettingBridgeVlanDefaultPvid o
obj Word32
val = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    o -> String -> Word32 -> IO ()
forall a. GObject a => a -> String -> Word32 -> IO ()
B.Properties.setObjectPropertyUInt32 o
obj String
"vlan-default-pvid" Word32
val

-- | Construct a t'GValueConstruct' with valid value for the “@vlan-default-pvid@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
constructSettingBridgeVlanDefaultPvid :: (IsSettingBridge o, MIO.MonadIO m) => Word32 -> m (GValueConstruct o)
constructSettingBridgeVlanDefaultPvid :: forall o (m :: * -> *).
(IsSettingBridge o, MonadIO m) =>
Word32 -> m (GValueConstruct o)
constructSettingBridgeVlanDefaultPvid Word32
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ do
    IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a. IO a -> IO a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> IO (GValueConstruct o))
-> IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Word32 -> IO (GValueConstruct o)
forall o. String -> Word32 -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyUInt32 String
"vlan-default-pvid" Word32
val

#if defined(ENABLE_OVERLOADING)
data SettingBridgeVlanDefaultPvidPropertyInfo
instance AttrInfo SettingBridgeVlanDefaultPvidPropertyInfo where
    type AttrAllowedOps SettingBridgeVlanDefaultPvidPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrBaseTypeConstraint SettingBridgeVlanDefaultPvidPropertyInfo = IsSettingBridge
    type AttrSetTypeConstraint SettingBridgeVlanDefaultPvidPropertyInfo = (~) Word32
    type AttrTransferTypeConstraint SettingBridgeVlanDefaultPvidPropertyInfo = (~) Word32
    type AttrTransferType SettingBridgeVlanDefaultPvidPropertyInfo = Word32
    type AttrGetType SettingBridgeVlanDefaultPvidPropertyInfo = Word32
    type AttrLabel SettingBridgeVlanDefaultPvidPropertyInfo = "vlan-default-pvid"
    type AttrOrigin SettingBridgeVlanDefaultPvidPropertyInfo = SettingBridge
    attrGet = getSettingBridgeVlanDefaultPvid
    attrSet = setSettingBridgeVlanDefaultPvid
    attrTransfer _ v = do
        return v
    attrConstruct = constructSettingBridgeVlanDefaultPvid
    attrClear = undefined
    dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.vlanDefaultPvid"
        , O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#g:attr:vlanDefaultPvid"
        })
#endif

-- VVV Prop "vlan-filtering"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Just False,Nothing)

-- | Get the value of the “@vlan-filtering@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' settingBridge #vlanFiltering
-- @
getSettingBridgeVlanFiltering :: (MonadIO m, IsSettingBridge o) => o -> m Bool
getSettingBridgeVlanFiltering :: forall (m :: * -> *) o.
(MonadIO m, IsSettingBridge o) =>
o -> m Bool
getSettingBridgeVlanFiltering o
obj = IO Bool -> m Bool
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Bool
forall a. GObject a => a -> String -> IO Bool
B.Properties.getObjectPropertyBool o
obj String
"vlan-filtering"

-- | Set the value of the “@vlan-filtering@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' settingBridge [ #vlanFiltering 'Data.GI.Base.Attributes.:=' value ]
-- @
setSettingBridgeVlanFiltering :: (MonadIO m, IsSettingBridge o) => o -> Bool -> m ()
setSettingBridgeVlanFiltering :: forall (m :: * -> *) o.
(MonadIO m, IsSettingBridge o) =>
o -> Bool -> m ()
setSettingBridgeVlanFiltering o
obj Bool
val = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    o -> String -> Bool -> IO ()
forall a. GObject a => a -> String -> Bool -> IO ()
B.Properties.setObjectPropertyBool o
obj String
"vlan-filtering" Bool
val

-- | Construct a t'GValueConstruct' with valid value for the “@vlan-filtering@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
constructSettingBridgeVlanFiltering :: (IsSettingBridge o, MIO.MonadIO m) => Bool -> m (GValueConstruct o)
constructSettingBridgeVlanFiltering :: forall o (m :: * -> *).
(IsSettingBridge o, MonadIO m) =>
Bool -> m (GValueConstruct o)
constructSettingBridgeVlanFiltering Bool
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ do
    IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a. IO a -> IO a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> IO (GValueConstruct o))
-> IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Bool -> IO (GValueConstruct o)
forall o. String -> Bool -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyBool String
"vlan-filtering" Bool
val

#if defined(ENABLE_OVERLOADING)
data SettingBridgeVlanFilteringPropertyInfo
instance AttrInfo SettingBridgeVlanFilteringPropertyInfo where
    type AttrAllowedOps SettingBridgeVlanFilteringPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrBaseTypeConstraint SettingBridgeVlanFilteringPropertyInfo = IsSettingBridge
    type AttrSetTypeConstraint SettingBridgeVlanFilteringPropertyInfo = (~) Bool
    type AttrTransferTypeConstraint SettingBridgeVlanFilteringPropertyInfo = (~) Bool
    type AttrTransferType SettingBridgeVlanFilteringPropertyInfo = Bool
    type AttrGetType SettingBridgeVlanFilteringPropertyInfo = Bool
    type AttrLabel SettingBridgeVlanFilteringPropertyInfo = "vlan-filtering"
    type AttrOrigin SettingBridgeVlanFilteringPropertyInfo = SettingBridge
    attrGet = getSettingBridgeVlanFiltering
    attrSet = setSettingBridgeVlanFiltering
    attrTransfer _ v = do
        return v
    attrConstruct = constructSettingBridgeVlanFiltering
    attrClear = undefined
    dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.vlanFiltering"
        , O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#g:attr:vlanFiltering"
        })
#endif

-- VVV Prop "vlan-protocol"
   -- Type: TBasicType TUTF8
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Just False,Nothing)

-- | Get the value of the “@vlan-protocol@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' settingBridge #vlanProtocol
-- @
getSettingBridgeVlanProtocol :: (MonadIO m, IsSettingBridge o) => o -> m T.Text
getSettingBridgeVlanProtocol :: forall (m :: * -> *) o.
(MonadIO m, IsSettingBridge o) =>
o -> m Text
getSettingBridgeVlanProtocol o
obj = IO Text -> m Text
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO Text -> m Text) -> IO Text -> m Text
forall a b. (a -> b) -> a -> b
$ Text -> IO (Maybe Text) -> IO Text
forall a. HasCallStack => Text -> IO (Maybe a) -> IO a
checkUnexpectedNothing Text
"getSettingBridgeVlanProtocol" (IO (Maybe Text) -> IO Text) -> IO (Maybe Text) -> IO Text
forall a b. (a -> b) -> a -> b
$ o -> String -> IO (Maybe Text)
forall a. GObject a => a -> String -> IO (Maybe Text)
B.Properties.getObjectPropertyString o
obj String
"vlan-protocol"

-- | Set the value of the “@vlan-protocol@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' settingBridge [ #vlanProtocol 'Data.GI.Base.Attributes.:=' value ]
-- @
setSettingBridgeVlanProtocol :: (MonadIO m, IsSettingBridge o) => o -> T.Text -> m ()
setSettingBridgeVlanProtocol :: forall (m :: * -> *) o.
(MonadIO m, IsSettingBridge o) =>
o -> Text -> m ()
setSettingBridgeVlanProtocol o
obj Text
val = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    o -> String -> Maybe Text -> IO ()
forall a. GObject a => a -> String -> Maybe Text -> IO ()
B.Properties.setObjectPropertyString o
obj String
"vlan-protocol" (Text -> Maybe Text
forall a. a -> Maybe a
Just Text
val)

-- | Construct a t'GValueConstruct' with valid value for the “@vlan-protocol@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
constructSettingBridgeVlanProtocol :: (IsSettingBridge o, MIO.MonadIO m) => T.Text -> m (GValueConstruct o)
constructSettingBridgeVlanProtocol :: forall o (m :: * -> *).
(IsSettingBridge o, MonadIO m) =>
Text -> m (GValueConstruct o)
constructSettingBridgeVlanProtocol Text
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ do
    IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a. IO a -> IO a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> IO (GValueConstruct o))
-> IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Maybe Text -> IO (GValueConstruct o)
forall o. String -> Maybe Text -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyString String
"vlan-protocol" (Text -> Maybe Text
forall a. a -> Maybe a
P.Just Text
val)

-- | Set the value of the “@vlan-protocol@” property to `Nothing`.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.clear' #vlanProtocol
-- @
clearSettingBridgeVlanProtocol :: (MonadIO m, IsSettingBridge o) => o -> m ()
clearSettingBridgeVlanProtocol :: forall (m :: * -> *) o. (MonadIO m, IsSettingBridge o) => o -> m ()
clearSettingBridgeVlanProtocol o
obj = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ o -> String -> Maybe Text -> IO ()
forall a. GObject a => a -> String -> Maybe Text -> IO ()
B.Properties.setObjectPropertyString o
obj String
"vlan-protocol" (Maybe Text
forall a. Maybe a
Nothing :: Maybe T.Text)

#if defined(ENABLE_OVERLOADING)
data SettingBridgeVlanProtocolPropertyInfo
instance AttrInfo SettingBridgeVlanProtocolPropertyInfo where
    type AttrAllowedOps SettingBridgeVlanProtocolPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet, 'AttrClear]
    type AttrBaseTypeConstraint SettingBridgeVlanProtocolPropertyInfo = IsSettingBridge
    type AttrSetTypeConstraint SettingBridgeVlanProtocolPropertyInfo = (~) T.Text
    type AttrTransferTypeConstraint SettingBridgeVlanProtocolPropertyInfo = (~) T.Text
    type AttrTransferType SettingBridgeVlanProtocolPropertyInfo = T.Text
    type AttrGetType SettingBridgeVlanProtocolPropertyInfo = T.Text
    type AttrLabel SettingBridgeVlanProtocolPropertyInfo = "vlan-protocol"
    type AttrOrigin SettingBridgeVlanProtocolPropertyInfo = SettingBridge
    attrGet = getSettingBridgeVlanProtocol
    attrSet = setSettingBridgeVlanProtocol
    attrTransfer _ v = do
        return v
    attrConstruct = constructSettingBridgeVlanProtocol
    attrClear = clearSettingBridgeVlanProtocol
    dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.vlanProtocol"
        , O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#g:attr:vlanProtocol"
        })
#endif

-- VVV Prop "vlan-stats-enabled"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Just False,Nothing)

-- | Get the value of the “@vlan-stats-enabled@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' settingBridge #vlanStatsEnabled
-- @
getSettingBridgeVlanStatsEnabled :: (MonadIO m, IsSettingBridge o) => o -> m Bool
getSettingBridgeVlanStatsEnabled :: forall (m :: * -> *) o.
(MonadIO m, IsSettingBridge o) =>
o -> m Bool
getSettingBridgeVlanStatsEnabled o
obj = IO Bool -> m Bool
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Bool
forall a. GObject a => a -> String -> IO Bool
B.Properties.getObjectPropertyBool o
obj String
"vlan-stats-enabled"

-- | Set the value of the “@vlan-stats-enabled@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' settingBridge [ #vlanStatsEnabled 'Data.GI.Base.Attributes.:=' value ]
-- @
setSettingBridgeVlanStatsEnabled :: (MonadIO m, IsSettingBridge o) => o -> Bool -> m ()
setSettingBridgeVlanStatsEnabled :: forall (m :: * -> *) o.
(MonadIO m, IsSettingBridge o) =>
o -> Bool -> m ()
setSettingBridgeVlanStatsEnabled o
obj Bool
val = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    o -> String -> Bool -> IO ()
forall a. GObject a => a -> String -> Bool -> IO ()
B.Properties.setObjectPropertyBool o
obj String
"vlan-stats-enabled" Bool
val

-- | Construct a t'GValueConstruct' with valid value for the “@vlan-stats-enabled@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
constructSettingBridgeVlanStatsEnabled :: (IsSettingBridge o, MIO.MonadIO m) => Bool -> m (GValueConstruct o)
constructSettingBridgeVlanStatsEnabled :: forall o (m :: * -> *).
(IsSettingBridge o, MonadIO m) =>
Bool -> m (GValueConstruct o)
constructSettingBridgeVlanStatsEnabled Bool
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ do
    IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a. IO a -> IO a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> IO (GValueConstruct o))
-> IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Bool -> IO (GValueConstruct o)
forall o. String -> Bool -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyBool String
"vlan-stats-enabled" Bool
val

#if defined(ENABLE_OVERLOADING)
data SettingBridgeVlanStatsEnabledPropertyInfo
instance AttrInfo SettingBridgeVlanStatsEnabledPropertyInfo where
    type AttrAllowedOps SettingBridgeVlanStatsEnabledPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrBaseTypeConstraint SettingBridgeVlanStatsEnabledPropertyInfo = IsSettingBridge
    type AttrSetTypeConstraint SettingBridgeVlanStatsEnabledPropertyInfo = (~) Bool
    type AttrTransferTypeConstraint SettingBridgeVlanStatsEnabledPropertyInfo = (~) Bool
    type AttrTransferType SettingBridgeVlanStatsEnabledPropertyInfo = Bool
    type AttrGetType SettingBridgeVlanStatsEnabledPropertyInfo = Bool
    type AttrLabel SettingBridgeVlanStatsEnabledPropertyInfo = "vlan-stats-enabled"
    type AttrOrigin SettingBridgeVlanStatsEnabledPropertyInfo = SettingBridge
    attrGet = getSettingBridgeVlanStatsEnabled
    attrSet = setSettingBridgeVlanStatsEnabled
    attrTransfer _ v = do
        return v
    attrConstruct = constructSettingBridgeVlanStatsEnabled
    attrClear = undefined
    dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.vlanStatsEnabled"
        , O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#g:attr:vlanStatsEnabled"
        })
#endif

-- XXX Generation of property "vlans" of object "SettingBridge" failed.
-- Not implemented: Don't know how to handle properties of type TPtrArray (TInterface (Name {namespace = "NM", name = "BridgeVlan"}))
#if defined(ENABLE_OVERLOADING)
-- XXX Placeholder
data SettingBridgeVlansPropertyInfo
instance AttrInfo SettingBridgeVlansPropertyInfo where
    type AttrAllowedOps SettingBridgeVlansPropertyInfo = '[]
    type AttrSetTypeConstraint SettingBridgeVlansPropertyInfo = (~) ()
    type AttrTransferTypeConstraint SettingBridgeVlansPropertyInfo = (~) ()
    type AttrTransferType SettingBridgeVlansPropertyInfo = ()
    type AttrBaseTypeConstraint SettingBridgeVlansPropertyInfo = (~) ()
    type AttrGetType SettingBridgeVlansPropertyInfo = ()
    type AttrLabel SettingBridgeVlansPropertyInfo = ""
    type AttrOrigin SettingBridgeVlansPropertyInfo = SettingBridge
    attrGet = undefined
    attrSet = undefined
    attrConstruct = undefined
    attrClear = undefined
    attrTransfer = undefined
#endif

#if defined(ENABLE_OVERLOADING)
instance O.HasAttributeList SettingBridge
type instance O.AttributeList SettingBridge = SettingBridgeAttributeList
type SettingBridgeAttributeList = ('[ '("ageingTime", SettingBridgeAgeingTimePropertyInfo), '("forwardDelay", SettingBridgeForwardDelayPropertyInfo), '("groupAddress", SettingBridgeGroupAddressPropertyInfo), '("groupForwardMask", SettingBridgeGroupForwardMaskPropertyInfo), '("helloTime", SettingBridgeHelloTimePropertyInfo), '("macAddress", SettingBridgeMacAddressPropertyInfo), '("maxAge", SettingBridgeMaxAgePropertyInfo), '("multicastHashMax", SettingBridgeMulticastHashMaxPropertyInfo), '("multicastLastMemberCount", SettingBridgeMulticastLastMemberCountPropertyInfo), '("multicastLastMemberInterval", SettingBridgeMulticastLastMemberIntervalPropertyInfo), '("multicastMembershipInterval", SettingBridgeMulticastMembershipIntervalPropertyInfo), '("multicastQuerier", SettingBridgeMulticastQuerierPropertyInfo), '("multicastQuerierInterval", SettingBridgeMulticastQuerierIntervalPropertyInfo), '("multicastQueryInterval", SettingBridgeMulticastQueryIntervalPropertyInfo), '("multicastQueryResponseInterval", SettingBridgeMulticastQueryResponseIntervalPropertyInfo), '("multicastQueryUseIfaddr", SettingBridgeMulticastQueryUseIfaddrPropertyInfo), '("multicastRouter", SettingBridgeMulticastRouterPropertyInfo), '("multicastSnooping", SettingBridgeMulticastSnoopingPropertyInfo), '("multicastStartupQueryCount", SettingBridgeMulticastStartupQueryCountPropertyInfo), '("multicastStartupQueryInterval", SettingBridgeMulticastStartupQueryIntervalPropertyInfo), '("name", NM.Setting.SettingNamePropertyInfo), '("priority", SettingBridgePriorityPropertyInfo), '("stp", SettingBridgeStpPropertyInfo), '("vlanDefaultPvid", SettingBridgeVlanDefaultPvidPropertyInfo), '("vlanFiltering", SettingBridgeVlanFilteringPropertyInfo), '("vlanProtocol", SettingBridgeVlanProtocolPropertyInfo), '("vlanStatsEnabled", SettingBridgeVlanStatsEnabledPropertyInfo), '("vlans", SettingBridgeVlansPropertyInfo)] :: [(Symbol, DK.Type)])
#endif

#if defined(ENABLE_OVERLOADING)
settingBridgeAgeingTime :: AttrLabelProxy "ageingTime"
settingBridgeAgeingTime = AttrLabelProxy

settingBridgeForwardDelay :: AttrLabelProxy "forwardDelay"
settingBridgeForwardDelay = AttrLabelProxy

settingBridgeGroupAddress :: AttrLabelProxy "groupAddress"
settingBridgeGroupAddress = AttrLabelProxy

settingBridgeGroupForwardMask :: AttrLabelProxy "groupForwardMask"
settingBridgeGroupForwardMask = AttrLabelProxy

settingBridgeHelloTime :: AttrLabelProxy "helloTime"
settingBridgeHelloTime = AttrLabelProxy

settingBridgeMacAddress :: AttrLabelProxy "macAddress"
settingBridgeMacAddress = AttrLabelProxy

settingBridgeMaxAge :: AttrLabelProxy "maxAge"
settingBridgeMaxAge = AttrLabelProxy

settingBridgeMulticastHashMax :: AttrLabelProxy "multicastHashMax"
settingBridgeMulticastHashMax = AttrLabelProxy

settingBridgeMulticastLastMemberCount :: AttrLabelProxy "multicastLastMemberCount"
settingBridgeMulticastLastMemberCount = AttrLabelProxy

settingBridgeMulticastLastMemberInterval :: AttrLabelProxy "multicastLastMemberInterval"
settingBridgeMulticastLastMemberInterval = AttrLabelProxy

settingBridgeMulticastMembershipInterval :: AttrLabelProxy "multicastMembershipInterval"
settingBridgeMulticastMembershipInterval = AttrLabelProxy

settingBridgeMulticastQuerier :: AttrLabelProxy "multicastQuerier"
settingBridgeMulticastQuerier = AttrLabelProxy

settingBridgeMulticastQuerierInterval :: AttrLabelProxy "multicastQuerierInterval"
settingBridgeMulticastQuerierInterval = AttrLabelProxy

settingBridgeMulticastQueryInterval :: AttrLabelProxy "multicastQueryInterval"
settingBridgeMulticastQueryInterval = AttrLabelProxy

settingBridgeMulticastQueryResponseInterval :: AttrLabelProxy "multicastQueryResponseInterval"
settingBridgeMulticastQueryResponseInterval = AttrLabelProxy

settingBridgeMulticastQueryUseIfaddr :: AttrLabelProxy "multicastQueryUseIfaddr"
settingBridgeMulticastQueryUseIfaddr = AttrLabelProxy

settingBridgeMulticastRouter :: AttrLabelProxy "multicastRouter"
settingBridgeMulticastRouter = AttrLabelProxy

settingBridgeMulticastSnooping :: AttrLabelProxy "multicastSnooping"
settingBridgeMulticastSnooping = AttrLabelProxy

settingBridgeMulticastStartupQueryCount :: AttrLabelProxy "multicastStartupQueryCount"
settingBridgeMulticastStartupQueryCount = AttrLabelProxy

settingBridgeMulticastStartupQueryInterval :: AttrLabelProxy "multicastStartupQueryInterval"
settingBridgeMulticastStartupQueryInterval = AttrLabelProxy

settingBridgePriority :: AttrLabelProxy "priority"
settingBridgePriority = AttrLabelProxy

settingBridgeStp :: AttrLabelProxy "stp"
settingBridgeStp = AttrLabelProxy

settingBridgeVlanDefaultPvid :: AttrLabelProxy "vlanDefaultPvid"
settingBridgeVlanDefaultPvid = AttrLabelProxy

settingBridgeVlanFiltering :: AttrLabelProxy "vlanFiltering"
settingBridgeVlanFiltering = AttrLabelProxy

settingBridgeVlanProtocol :: AttrLabelProxy "vlanProtocol"
settingBridgeVlanProtocol = AttrLabelProxy

settingBridgeVlanStatsEnabled :: AttrLabelProxy "vlanStatsEnabled"
settingBridgeVlanStatsEnabled = AttrLabelProxy

settingBridgeVlans :: AttrLabelProxy "vlans"
settingBridgeVlans = AttrLabelProxy

#endif

#if defined(ENABLE_OVERLOADING)
type instance O.SignalList SettingBridge = SettingBridgeSignalList
type SettingBridgeSignalList = ('[ '("notify", GObject.Object.ObjectNotifySignalInfo)] :: [(Symbol, DK.Type)])

#endif

-- method SettingBridge::new
-- method type : Constructor
-- Args: []
-- Lengths: []
-- returnType: Just
--               (TInterface Name { namespace = "NM" , name = "SettingBridge" })
-- throws : False
-- Skip return : False

foreign import ccall "nm_setting_bridge_new" nm_setting_bridge_new :: 
    IO (Ptr SettingBridge)

-- | Creates a new t'GI.NM.Objects.SettingBridge.SettingBridge' object with default values.
settingBridgeNew ::
    (B.CallStack.HasCallStack, MonadIO m) =>
    m SettingBridge
    -- ^ __Returns:__ the new empty t'GI.NM.Objects.SettingBridge.SettingBridge' object
settingBridgeNew :: forall (m :: * -> *). (HasCallStack, MonadIO m) => m SettingBridge
settingBridgeNew  = IO SettingBridge -> m SettingBridge
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SettingBridge -> m SettingBridge)
-> IO SettingBridge -> m SettingBridge
forall a b. (a -> b) -> a -> b
$ do
    Ptr SettingBridge
result <- IO (Ptr SettingBridge)
nm_setting_bridge_new
    Text -> Ptr SettingBridge -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"settingBridgeNew" Ptr SettingBridge
result
    SettingBridge
result' <- ((ManagedPtr SettingBridge -> SettingBridge)
-> Ptr SettingBridge -> IO SettingBridge
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
wrapObject ManagedPtr SettingBridge -> SettingBridge
SettingBridge) Ptr SettingBridge
result
    SettingBridge -> IO SettingBridge
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return SettingBridge
result'

#if defined(ENABLE_OVERLOADING)
#endif

-- method SettingBridge::add_vlan
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "setting"
--           , argType =
--               TInterface Name { namespace = "NM" , name = "SettingBridge" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "the #NMSettingBridge"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , argCallbackUserData = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "vlan"
--           , argType =
--               TInterface Name { namespace = "NM" , name = "BridgeVlan" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "the vlan to add" , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , argCallbackUserData = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Nothing
-- throws : False
-- Skip return : False

foreign import ccall "nm_setting_bridge_add_vlan" nm_setting_bridge_add_vlan :: 
    Ptr SettingBridge ->                    -- setting : TInterface (Name {namespace = "NM", name = "SettingBridge"})
    Ptr NM.BridgeVlan.BridgeVlan ->         -- vlan : TInterface (Name {namespace = "NM", name = "BridgeVlan"})
    IO ()

-- | Appends a new vlan and associated information to the setting.  The
-- given vlan gets sealed and a reference to it is added.
-- 
-- /Since: 1.18/
settingBridgeAddVlan ::
    (B.CallStack.HasCallStack, MonadIO m, IsSettingBridge a) =>
    a
    -- ^ /@setting@/: the t'GI.NM.Objects.SettingBridge.SettingBridge'
    -> NM.BridgeVlan.BridgeVlan
    -- ^ /@vlan@/: the vlan to add
    -> m ()
settingBridgeAddVlan :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsSettingBridge a) =>
a -> BridgeVlan -> m ()
settingBridgeAddVlan a
setting BridgeVlan
vlan = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    Ptr SettingBridge
setting' <- a -> IO (Ptr SettingBridge)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
setting
    Ptr BridgeVlan
vlan' <- BridgeVlan -> IO (Ptr BridgeVlan)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr BridgeVlan
vlan
    Ptr SettingBridge -> Ptr BridgeVlan -> IO ()
nm_setting_bridge_add_vlan Ptr SettingBridge
setting' Ptr BridgeVlan
vlan'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
setting
    BridgeVlan -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr BridgeVlan
vlan
    () -> IO ()
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data SettingBridgeAddVlanMethodInfo
instance (signature ~ (NM.BridgeVlan.BridgeVlan -> m ()), MonadIO m, IsSettingBridge a) => O.OverloadedMethod SettingBridgeAddVlanMethodInfo a signature where
    overloadedMethod = settingBridgeAddVlan

instance O.OverloadedMethodInfo SettingBridgeAddVlanMethodInfo a where
    overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.settingBridgeAddVlan",
        O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#v:settingBridgeAddVlan"
        })


#endif

-- method SettingBridge::clear_vlans
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "setting"
--           , argType =
--               TInterface Name { namespace = "NM" , name = "SettingBridge" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "the #NMSettingBridge"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , argCallbackUserData = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Nothing
-- throws : False
-- Skip return : False

foreign import ccall "nm_setting_bridge_clear_vlans" nm_setting_bridge_clear_vlans :: 
    Ptr SettingBridge ->                    -- setting : TInterface (Name {namespace = "NM", name = "SettingBridge"})
    IO ()

-- | Removes all configured VLANs.
-- 
-- /Since: 1.18/
settingBridgeClearVlans ::
    (B.CallStack.HasCallStack, MonadIO m, IsSettingBridge a) =>
    a
    -- ^ /@setting@/: the t'GI.NM.Objects.SettingBridge.SettingBridge'
    -> m ()
settingBridgeClearVlans :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsSettingBridge a) =>
a -> m ()
settingBridgeClearVlans a
setting = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    Ptr SettingBridge
setting' <- a -> IO (Ptr SettingBridge)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
setting
    Ptr SettingBridge -> IO ()
nm_setting_bridge_clear_vlans Ptr SettingBridge
setting'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
setting
    () -> IO ()
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data SettingBridgeClearVlansMethodInfo
instance (signature ~ (m ()), MonadIO m, IsSettingBridge a) => O.OverloadedMethod SettingBridgeClearVlansMethodInfo a signature where
    overloadedMethod = settingBridgeClearVlans

instance O.OverloadedMethodInfo SettingBridgeClearVlansMethodInfo a where
    overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.settingBridgeClearVlans",
        O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#v:settingBridgeClearVlans"
        })


#endif

-- method SettingBridge::get_ageing_time
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "setting"
--           , argType =
--               TInterface Name { namespace = "NM" , name = "SettingBridge" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "the #NMSettingBridge"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , argCallbackUserData = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just (TBasicType TUInt32)
-- throws : False
-- Skip return : False

foreign import ccall "nm_setting_bridge_get_ageing_time" nm_setting_bridge_get_ageing_time :: 
    Ptr SettingBridge ->                    -- setting : TInterface (Name {namespace = "NM", name = "SettingBridge"})
    IO Word32

-- | /No description available in the introspection data./
settingBridgeGetAgeingTime ::
    (B.CallStack.HasCallStack, MonadIO m, IsSettingBridge a) =>
    a
    -- ^ /@setting@/: the t'GI.NM.Objects.SettingBridge.SettingBridge'
    -> m Word32
    -- ^ __Returns:__ the [SettingBridge:ageingTime]("GI.NM.Objects.SettingBridge#g:attr:ageingTime") property of the setting
settingBridgeGetAgeingTime :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsSettingBridge a) =>
a -> m Word32
settingBridgeGetAgeingTime a
setting = IO Word32 -> m Word32
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Word32 -> m Word32) -> IO Word32 -> m Word32
forall a b. (a -> b) -> a -> b
$ do
    Ptr SettingBridge
setting' <- a -> IO (Ptr SettingBridge)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
setting
    Word32
result <- Ptr SettingBridge -> IO Word32
nm_setting_bridge_get_ageing_time Ptr SettingBridge
setting'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
setting
    Word32 -> IO Word32
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Word32
result

#if defined(ENABLE_OVERLOADING)
data SettingBridgeGetAgeingTimeMethodInfo
instance (signature ~ (m Word32), MonadIO m, IsSettingBridge a) => O.OverloadedMethod SettingBridgeGetAgeingTimeMethodInfo a signature where
    overloadedMethod = settingBridgeGetAgeingTime

instance O.OverloadedMethodInfo SettingBridgeGetAgeingTimeMethodInfo a where
    overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.settingBridgeGetAgeingTime",
        O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#v:settingBridgeGetAgeingTime"
        })


#endif

-- method SettingBridge::get_forward_delay
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "setting"
--           , argType =
--               TInterface Name { namespace = "NM" , name = "SettingBridge" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "the #NMSettingBridge"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , argCallbackUserData = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just (TBasicType TUInt16)
-- throws : False
-- Skip return : False

foreign import ccall "nm_setting_bridge_get_forward_delay" nm_setting_bridge_get_forward_delay :: 
    Ptr SettingBridge ->                    -- setting : TInterface (Name {namespace = "NM", name = "SettingBridge"})
    IO Word16

-- | /No description available in the introspection data./
settingBridgeGetForwardDelay ::
    (B.CallStack.HasCallStack, MonadIO m, IsSettingBridge a) =>
    a
    -- ^ /@setting@/: the t'GI.NM.Objects.SettingBridge.SettingBridge'
    -> m Word16
    -- ^ __Returns:__ the [SettingBridge:forwardDelay]("GI.NM.Objects.SettingBridge#g:attr:forwardDelay") property of the setting
settingBridgeGetForwardDelay :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsSettingBridge a) =>
a -> m Word16
settingBridgeGetForwardDelay a
setting = IO Word16 -> m Word16
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Word16 -> m Word16) -> IO Word16 -> m Word16
forall a b. (a -> b) -> a -> b
$ do
    Ptr SettingBridge
setting' <- a -> IO (Ptr SettingBridge)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
setting
    Word16
result <- Ptr SettingBridge -> IO Word16
nm_setting_bridge_get_forward_delay Ptr SettingBridge
setting'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
setting
    Word16 -> IO Word16
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Word16
result

#if defined(ENABLE_OVERLOADING)
data SettingBridgeGetForwardDelayMethodInfo
instance (signature ~ (m Word16), MonadIO m, IsSettingBridge a) => O.OverloadedMethod SettingBridgeGetForwardDelayMethodInfo a signature where
    overloadedMethod = settingBridgeGetForwardDelay

instance O.OverloadedMethodInfo SettingBridgeGetForwardDelayMethodInfo a where
    overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.settingBridgeGetForwardDelay",
        O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#v:settingBridgeGetForwardDelay"
        })


#endif

-- method SettingBridge::get_group_address
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "setting"
--           , argType =
--               TInterface Name { namespace = "NM" , name = "SettingBridge" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "the #NMSettingBridge"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , argCallbackUserData = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just (TBasicType TUTF8)
-- throws : False
-- Skip return : False

foreign import ccall "nm_setting_bridge_get_group_address" nm_setting_bridge_get_group_address :: 
    Ptr SettingBridge ->                    -- setting : TInterface (Name {namespace = "NM", name = "SettingBridge"})
    IO CString

-- | /No description available in the introspection data./
-- 
-- /Since: 1.24/
settingBridgeGetGroupAddress ::
    (B.CallStack.HasCallStack, MonadIO m, IsSettingBridge a) =>
    a
    -- ^ /@setting@/: the t'GI.NM.Objects.SettingBridge.SettingBridge'
    -> m T.Text
    -- ^ __Returns:__ the [SettingBridge:groupAddress]("GI.NM.Objects.SettingBridge#g:attr:groupAddress") property of the setting
settingBridgeGetGroupAddress :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsSettingBridge a) =>
a -> m Text
settingBridgeGetGroupAddress a
setting = IO Text -> m Text
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Text -> m Text) -> IO Text -> m Text
forall a b. (a -> b) -> a -> b
$ do
    Ptr SettingBridge
setting' <- a -> IO (Ptr SettingBridge)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
setting
    CString
result <- Ptr SettingBridge -> IO CString
nm_setting_bridge_get_group_address Ptr SettingBridge
setting'
    Text -> CString -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"settingBridgeGetGroupAddress" CString
result
    Text
result' <- HasCallStack => CString -> IO Text
CString -> IO Text
cstringToText CString
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
setting
    Text -> IO Text
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Text
result'

#if defined(ENABLE_OVERLOADING)
data SettingBridgeGetGroupAddressMethodInfo
instance (signature ~ (m T.Text), MonadIO m, IsSettingBridge a) => O.OverloadedMethod SettingBridgeGetGroupAddressMethodInfo a signature where
    overloadedMethod = settingBridgeGetGroupAddress

instance O.OverloadedMethodInfo SettingBridgeGetGroupAddressMethodInfo a where
    overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.settingBridgeGetGroupAddress",
        O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#v:settingBridgeGetGroupAddress"
        })


#endif

-- method SettingBridge::get_group_forward_mask
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "setting"
--           , argType =
--               TInterface Name { namespace = "NM" , name = "SettingBridge" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "the #NMSettingBridge"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , argCallbackUserData = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just (TBasicType TUInt16)
-- throws : False
-- Skip return : False

foreign import ccall "nm_setting_bridge_get_group_forward_mask" nm_setting_bridge_get_group_forward_mask :: 
    Ptr SettingBridge ->                    -- setting : TInterface (Name {namespace = "NM", name = "SettingBridge"})
    IO Word16

-- | /No description available in the introspection data./
-- 
-- /Since: 1.10/
settingBridgeGetGroupForwardMask ::
    (B.CallStack.HasCallStack, MonadIO m, IsSettingBridge a) =>
    a
    -- ^ /@setting@/: the t'GI.NM.Objects.SettingBridge.SettingBridge'
    -> m Word16
    -- ^ __Returns:__ the [SettingBridge:groupForwardMask]("GI.NM.Objects.SettingBridge#g:attr:groupForwardMask") property of the setting
settingBridgeGetGroupForwardMask :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsSettingBridge a) =>
a -> m Word16
settingBridgeGetGroupForwardMask a
setting = IO Word16 -> m Word16
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Word16 -> m Word16) -> IO Word16 -> m Word16
forall a b. (a -> b) -> a -> b
$ do
    Ptr SettingBridge
setting' <- a -> IO (Ptr SettingBridge)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
setting
    Word16
result <- Ptr SettingBridge -> IO Word16
nm_setting_bridge_get_group_forward_mask Ptr SettingBridge
setting'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
setting
    Word16 -> IO Word16
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Word16
result

#if defined(ENABLE_OVERLOADING)
data SettingBridgeGetGroupForwardMaskMethodInfo
instance (signature ~ (m Word16), MonadIO m, IsSettingBridge a) => O.OverloadedMethod SettingBridgeGetGroupForwardMaskMethodInfo a signature where
    overloadedMethod = settingBridgeGetGroupForwardMask

instance O.OverloadedMethodInfo SettingBridgeGetGroupForwardMaskMethodInfo a where
    overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.settingBridgeGetGroupForwardMask",
        O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#v:settingBridgeGetGroupForwardMask"
        })


#endif

-- method SettingBridge::get_hello_time
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "setting"
--           , argType =
--               TInterface Name { namespace = "NM" , name = "SettingBridge" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "the #NMSettingBridge"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , argCallbackUserData = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just (TBasicType TUInt16)
-- throws : False
-- Skip return : False

foreign import ccall "nm_setting_bridge_get_hello_time" nm_setting_bridge_get_hello_time :: 
    Ptr SettingBridge ->                    -- setting : TInterface (Name {namespace = "NM", name = "SettingBridge"})
    IO Word16

-- | /No description available in the introspection data./
settingBridgeGetHelloTime ::
    (B.CallStack.HasCallStack, MonadIO m, IsSettingBridge a) =>
    a
    -- ^ /@setting@/: the t'GI.NM.Objects.SettingBridge.SettingBridge'
    -> m Word16
    -- ^ __Returns:__ the [SettingBridge:helloTime]("GI.NM.Objects.SettingBridge#g:attr:helloTime") property of the setting
settingBridgeGetHelloTime :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsSettingBridge a) =>
a -> m Word16
settingBridgeGetHelloTime a
setting = IO Word16 -> m Word16
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Word16 -> m Word16) -> IO Word16 -> m Word16
forall a b. (a -> b) -> a -> b
$ do
    Ptr SettingBridge
setting' <- a -> IO (Ptr SettingBridge)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
setting
    Word16
result <- Ptr SettingBridge -> IO Word16
nm_setting_bridge_get_hello_time Ptr SettingBridge
setting'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
setting
    Word16 -> IO Word16
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Word16
result

#if defined(ENABLE_OVERLOADING)
data SettingBridgeGetHelloTimeMethodInfo
instance (signature ~ (m Word16), MonadIO m, IsSettingBridge a) => O.OverloadedMethod SettingBridgeGetHelloTimeMethodInfo a signature where
    overloadedMethod = settingBridgeGetHelloTime

instance O.OverloadedMethodInfo SettingBridgeGetHelloTimeMethodInfo a where
    overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.settingBridgeGetHelloTime",
        O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#v:settingBridgeGetHelloTime"
        })


#endif

-- method SettingBridge::get_mac_address
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "setting"
--           , argType =
--               TInterface Name { namespace = "NM" , name = "SettingBridge" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "the #NMSettingBridge"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , argCallbackUserData = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just (TBasicType TUTF8)
-- throws : False
-- Skip return : False

foreign import ccall "nm_setting_bridge_get_mac_address" nm_setting_bridge_get_mac_address :: 
    Ptr SettingBridge ->                    -- setting : TInterface (Name {namespace = "NM", name = "SettingBridge"})
    IO CString

-- | /No description available in the introspection data./
settingBridgeGetMacAddress ::
    (B.CallStack.HasCallStack, MonadIO m, IsSettingBridge a) =>
    a
    -- ^ /@setting@/: the t'GI.NM.Objects.SettingBridge.SettingBridge'
    -> m T.Text
    -- ^ __Returns:__ the [SettingBridge:macAddress]("GI.NM.Objects.SettingBridge#g:attr:macAddress") property of the setting
settingBridgeGetMacAddress :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsSettingBridge a) =>
a -> m Text
settingBridgeGetMacAddress a
setting = IO Text -> m Text
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Text -> m Text) -> IO Text -> m Text
forall a b. (a -> b) -> a -> b
$ do
    Ptr SettingBridge
setting' <- a -> IO (Ptr SettingBridge)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
setting
    CString
result <- Ptr SettingBridge -> IO CString
nm_setting_bridge_get_mac_address Ptr SettingBridge
setting'
    Text -> CString -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"settingBridgeGetMacAddress" CString
result
    Text
result' <- HasCallStack => CString -> IO Text
CString -> IO Text
cstringToText CString
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
setting
    Text -> IO Text
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Text
result'

#if defined(ENABLE_OVERLOADING)
data SettingBridgeGetMacAddressMethodInfo
instance (signature ~ (m T.Text), MonadIO m, IsSettingBridge a) => O.OverloadedMethod SettingBridgeGetMacAddressMethodInfo a signature where
    overloadedMethod = settingBridgeGetMacAddress

instance O.OverloadedMethodInfo SettingBridgeGetMacAddressMethodInfo a where
    overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.settingBridgeGetMacAddress",
        O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#v:settingBridgeGetMacAddress"
        })


#endif

-- method SettingBridge::get_max_age
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "setting"
--           , argType =
--               TInterface Name { namespace = "NM" , name = "SettingBridge" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "the #NMSettingBridge"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , argCallbackUserData = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just (TBasicType TUInt16)
-- throws : False
-- Skip return : False

foreign import ccall "nm_setting_bridge_get_max_age" nm_setting_bridge_get_max_age :: 
    Ptr SettingBridge ->                    -- setting : TInterface (Name {namespace = "NM", name = "SettingBridge"})
    IO Word16

-- | /No description available in the introspection data./
settingBridgeGetMaxAge ::
    (B.CallStack.HasCallStack, MonadIO m, IsSettingBridge a) =>
    a
    -- ^ /@setting@/: the t'GI.NM.Objects.SettingBridge.SettingBridge'
    -> m Word16
    -- ^ __Returns:__ the [SettingBridge:maxAge]("GI.NM.Objects.SettingBridge#g:attr:maxAge") property of the setting
settingBridgeGetMaxAge :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsSettingBridge a) =>
a -> m Word16
settingBridgeGetMaxAge a
setting = IO Word16 -> m Word16
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Word16 -> m Word16) -> IO Word16 -> m Word16
forall a b. (a -> b) -> a -> b
$ do
    Ptr SettingBridge
setting' <- a -> IO (Ptr SettingBridge)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
setting
    Word16
result <- Ptr SettingBridge -> IO Word16
nm_setting_bridge_get_max_age Ptr SettingBridge
setting'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
setting
    Word16 -> IO Word16
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Word16
result

#if defined(ENABLE_OVERLOADING)
data SettingBridgeGetMaxAgeMethodInfo
instance (signature ~ (m Word16), MonadIO m, IsSettingBridge a) => O.OverloadedMethod SettingBridgeGetMaxAgeMethodInfo a signature where
    overloadedMethod = settingBridgeGetMaxAge

instance O.OverloadedMethodInfo SettingBridgeGetMaxAgeMethodInfo a where
    overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.settingBridgeGetMaxAge",
        O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#v:settingBridgeGetMaxAge"
        })


#endif

-- method SettingBridge::get_multicast_hash_max
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "setting"
--           , argType =
--               TInterface Name { namespace = "NM" , name = "SettingBridge" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "the #NMSettingBridge"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , argCallbackUserData = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just (TBasicType TUInt32)
-- throws : False
-- Skip return : False

foreign import ccall "nm_setting_bridge_get_multicast_hash_max" nm_setting_bridge_get_multicast_hash_max :: 
    Ptr SettingBridge ->                    -- setting : TInterface (Name {namespace = "NM", name = "SettingBridge"})
    IO Word32

-- | /No description available in the introspection data./
-- 
-- /Since: 1.26/
settingBridgeGetMulticastHashMax ::
    (B.CallStack.HasCallStack, MonadIO m, IsSettingBridge a) =>
    a
    -- ^ /@setting@/: the t'GI.NM.Objects.SettingBridge.SettingBridge'
    -> m Word32
    -- ^ __Returns:__ the [SettingBridge:multicastHashMax]("GI.NM.Objects.SettingBridge#g:attr:multicastHashMax") property of the setting
settingBridgeGetMulticastHashMax :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsSettingBridge a) =>
a -> m Word32
settingBridgeGetMulticastHashMax a
setting = IO Word32 -> m Word32
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Word32 -> m Word32) -> IO Word32 -> m Word32
forall a b. (a -> b) -> a -> b
$ do
    Ptr SettingBridge
setting' <- a -> IO (Ptr SettingBridge)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
setting
    Word32
result <- Ptr SettingBridge -> IO Word32
nm_setting_bridge_get_multicast_hash_max Ptr SettingBridge
setting'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
setting
    Word32 -> IO Word32
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Word32
result

#if defined(ENABLE_OVERLOADING)
data SettingBridgeGetMulticastHashMaxMethodInfo
instance (signature ~ (m Word32), MonadIO m, IsSettingBridge a) => O.OverloadedMethod SettingBridgeGetMulticastHashMaxMethodInfo a signature where
    overloadedMethod = settingBridgeGetMulticastHashMax

instance O.OverloadedMethodInfo SettingBridgeGetMulticastHashMaxMethodInfo a where
    overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.settingBridgeGetMulticastHashMax",
        O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#v:settingBridgeGetMulticastHashMax"
        })


#endif

-- method SettingBridge::get_multicast_last_member_count
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "setting"
--           , argType =
--               TInterface Name { namespace = "NM" , name = "SettingBridge" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "the #NMSettingBridge"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , argCallbackUserData = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just (TBasicType TUInt32)
-- throws : False
-- Skip return : False

foreign import ccall "nm_setting_bridge_get_multicast_last_member_count" nm_setting_bridge_get_multicast_last_member_count :: 
    Ptr SettingBridge ->                    -- setting : TInterface (Name {namespace = "NM", name = "SettingBridge"})
    IO Word32

-- | /No description available in the introspection data./
-- 
-- /Since: 1.26/
settingBridgeGetMulticastLastMemberCount ::
    (B.CallStack.HasCallStack, MonadIO m, IsSettingBridge a) =>
    a
    -- ^ /@setting@/: the t'GI.NM.Objects.SettingBridge.SettingBridge'
    -> m Word32
    -- ^ __Returns:__ the [SettingBridge:multicastLastMemberCount]("GI.NM.Objects.SettingBridge#g:attr:multicastLastMemberCount") property of the setting
settingBridgeGetMulticastLastMemberCount :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsSettingBridge a) =>
a -> m Word32
settingBridgeGetMulticastLastMemberCount a
setting = IO Word32 -> m Word32
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Word32 -> m Word32) -> IO Word32 -> m Word32
forall a b. (a -> b) -> a -> b
$ do
    Ptr SettingBridge
setting' <- a -> IO (Ptr SettingBridge)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
setting
    Word32
result <- Ptr SettingBridge -> IO Word32
nm_setting_bridge_get_multicast_last_member_count Ptr SettingBridge
setting'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
setting
    Word32 -> IO Word32
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Word32
result

#if defined(ENABLE_OVERLOADING)
data SettingBridgeGetMulticastLastMemberCountMethodInfo
instance (signature ~ (m Word32), MonadIO m, IsSettingBridge a) => O.OverloadedMethod SettingBridgeGetMulticastLastMemberCountMethodInfo a signature where
    overloadedMethod = settingBridgeGetMulticastLastMemberCount

instance O.OverloadedMethodInfo SettingBridgeGetMulticastLastMemberCountMethodInfo a where
    overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.settingBridgeGetMulticastLastMemberCount",
        O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#v:settingBridgeGetMulticastLastMemberCount"
        })


#endif

-- method SettingBridge::get_multicast_last_member_interval
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "setting"
--           , argType =
--               TInterface Name { namespace = "NM" , name = "SettingBridge" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "the #NMSettingBridge"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , argCallbackUserData = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just (TBasicType TUInt64)
-- throws : False
-- Skip return : False

foreign import ccall "nm_setting_bridge_get_multicast_last_member_interval" nm_setting_bridge_get_multicast_last_member_interval :: 
    Ptr SettingBridge ->                    -- setting : TInterface (Name {namespace = "NM", name = "SettingBridge"})
    IO Word64

-- | /No description available in the introspection data./
-- 
-- /Since: 1.26/
settingBridgeGetMulticastLastMemberInterval ::
    (B.CallStack.HasCallStack, MonadIO m, IsSettingBridge a) =>
    a
    -- ^ /@setting@/: the t'GI.NM.Objects.SettingBridge.SettingBridge'
    -> m Word64
    -- ^ __Returns:__ the [SettingBridge:multicastLastMemberInterval]("GI.NM.Objects.SettingBridge#g:attr:multicastLastMemberInterval") property of the setting
settingBridgeGetMulticastLastMemberInterval :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsSettingBridge a) =>
a -> m Word64
settingBridgeGetMulticastLastMemberInterval a
setting = IO Word64 -> m Word64
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Word64 -> m Word64) -> IO Word64 -> m Word64
forall a b. (a -> b) -> a -> b
$ do
    Ptr SettingBridge
setting' <- a -> IO (Ptr SettingBridge)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
setting
    Word64
result <- Ptr SettingBridge -> IO Word64
nm_setting_bridge_get_multicast_last_member_interval Ptr SettingBridge
setting'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
setting
    Word64 -> IO Word64
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Word64
result

#if defined(ENABLE_OVERLOADING)
data SettingBridgeGetMulticastLastMemberIntervalMethodInfo
instance (signature ~ (m Word64), MonadIO m, IsSettingBridge a) => O.OverloadedMethod SettingBridgeGetMulticastLastMemberIntervalMethodInfo a signature where
    overloadedMethod = settingBridgeGetMulticastLastMemberInterval

instance O.OverloadedMethodInfo SettingBridgeGetMulticastLastMemberIntervalMethodInfo a where
    overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.settingBridgeGetMulticastLastMemberInterval",
        O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#v:settingBridgeGetMulticastLastMemberInterval"
        })


#endif

-- method SettingBridge::get_multicast_membership_interval
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "setting"
--           , argType =
--               TInterface Name { namespace = "NM" , name = "SettingBridge" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "the #NMSettingBridge"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , argCallbackUserData = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just (TBasicType TUInt64)
-- throws : False
-- Skip return : False

foreign import ccall "nm_setting_bridge_get_multicast_membership_interval" nm_setting_bridge_get_multicast_membership_interval :: 
    Ptr SettingBridge ->                    -- setting : TInterface (Name {namespace = "NM", name = "SettingBridge"})
    IO Word64

-- | /No description available in the introspection data./
-- 
-- /Since: 1.26/
settingBridgeGetMulticastMembershipInterval ::
    (B.CallStack.HasCallStack, MonadIO m, IsSettingBridge a) =>
    a
    -- ^ /@setting@/: the t'GI.NM.Objects.SettingBridge.SettingBridge'
    -> m Word64
    -- ^ __Returns:__ the [SettingBridge:multicastMembershipInterval]("GI.NM.Objects.SettingBridge#g:attr:multicastMembershipInterval") property of the setting
settingBridgeGetMulticastMembershipInterval :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsSettingBridge a) =>
a -> m Word64
settingBridgeGetMulticastMembershipInterval a
setting = IO Word64 -> m Word64
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Word64 -> m Word64) -> IO Word64 -> m Word64
forall a b. (a -> b) -> a -> b
$ do
    Ptr SettingBridge
setting' <- a -> IO (Ptr SettingBridge)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
setting
    Word64
result <- Ptr SettingBridge -> IO Word64
nm_setting_bridge_get_multicast_membership_interval Ptr SettingBridge
setting'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
setting
    Word64 -> IO Word64
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Word64
result

#if defined(ENABLE_OVERLOADING)
data SettingBridgeGetMulticastMembershipIntervalMethodInfo
instance (signature ~ (m Word64), MonadIO m, IsSettingBridge a) => O.OverloadedMethod SettingBridgeGetMulticastMembershipIntervalMethodInfo a signature where
    overloadedMethod = settingBridgeGetMulticastMembershipInterval

instance O.OverloadedMethodInfo SettingBridgeGetMulticastMembershipIntervalMethodInfo a where
    overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.settingBridgeGetMulticastMembershipInterval",
        O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#v:settingBridgeGetMulticastMembershipInterval"
        })


#endif

-- method SettingBridge::get_multicast_querier
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "setting"
--           , argType =
--               TInterface Name { namespace = "NM" , name = "SettingBridge" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "the #NMSettingBridge"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , argCallbackUserData = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just (TBasicType TBoolean)
-- throws : False
-- Skip return : False

foreign import ccall "nm_setting_bridge_get_multicast_querier" nm_setting_bridge_get_multicast_querier :: 
    Ptr SettingBridge ->                    -- setting : TInterface (Name {namespace = "NM", name = "SettingBridge"})
    IO CInt

-- | /No description available in the introspection data./
-- 
-- /Since: 1.24/
settingBridgeGetMulticastQuerier ::
    (B.CallStack.HasCallStack, MonadIO m, IsSettingBridge a) =>
    a
    -- ^ /@setting@/: the t'GI.NM.Objects.SettingBridge.SettingBridge'
    -> m Bool
    -- ^ __Returns:__ the [SettingBridge:multicastQuerier]("GI.NM.Objects.SettingBridge#g:attr:multicastQuerier") property of the setting
settingBridgeGetMulticastQuerier :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsSettingBridge a) =>
a -> m Bool
settingBridgeGetMulticastQuerier a
setting = IO Bool -> m Bool
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ do
    Ptr SettingBridge
setting' <- a -> IO (Ptr SettingBridge)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
setting
    CInt
result <- Ptr SettingBridge -> IO CInt
nm_setting_bridge_get_multicast_querier Ptr SettingBridge
setting'
    let result' :: Bool
result' = (CInt -> CInt -> Bool
forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
setting
    Bool -> IO Bool
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'

#if defined(ENABLE_OVERLOADING)
data SettingBridgeGetMulticastQuerierMethodInfo
instance (signature ~ (m Bool), MonadIO m, IsSettingBridge a) => O.OverloadedMethod SettingBridgeGetMulticastQuerierMethodInfo a signature where
    overloadedMethod = settingBridgeGetMulticastQuerier

instance O.OverloadedMethodInfo SettingBridgeGetMulticastQuerierMethodInfo a where
    overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.settingBridgeGetMulticastQuerier",
        O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#v:settingBridgeGetMulticastQuerier"
        })


#endif

-- method SettingBridge::get_multicast_querier_interval
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "setting"
--           , argType =
--               TInterface Name { namespace = "NM" , name = "SettingBridge" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "the #NMSettingBridge"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , argCallbackUserData = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just (TBasicType TUInt64)
-- throws : False
-- Skip return : False

foreign import ccall "nm_setting_bridge_get_multicast_querier_interval" nm_setting_bridge_get_multicast_querier_interval :: 
    Ptr SettingBridge ->                    -- setting : TInterface (Name {namespace = "NM", name = "SettingBridge"})
    IO Word64

-- | /No description available in the introspection data./
-- 
-- /Since: 1.26/
settingBridgeGetMulticastQuerierInterval ::
    (B.CallStack.HasCallStack, MonadIO m, IsSettingBridge a) =>
    a
    -- ^ /@setting@/: the t'GI.NM.Objects.SettingBridge.SettingBridge'
    -> m Word64
    -- ^ __Returns:__ the [SettingBridge:multicastQuerierInterval]("GI.NM.Objects.SettingBridge#g:attr:multicastQuerierInterval") property of the setting
settingBridgeGetMulticastQuerierInterval :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsSettingBridge a) =>
a -> m Word64
settingBridgeGetMulticastQuerierInterval a
setting = IO Word64 -> m Word64
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Word64 -> m Word64) -> IO Word64 -> m Word64
forall a b. (a -> b) -> a -> b
$ do
    Ptr SettingBridge
setting' <- a -> IO (Ptr SettingBridge)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
setting
    Word64
result <- Ptr SettingBridge -> IO Word64
nm_setting_bridge_get_multicast_querier_interval Ptr SettingBridge
setting'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
setting
    Word64 -> IO Word64
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Word64
result

#if defined(ENABLE_OVERLOADING)
data SettingBridgeGetMulticastQuerierIntervalMethodInfo
instance (signature ~ (m Word64), MonadIO m, IsSettingBridge a) => O.OverloadedMethod SettingBridgeGetMulticastQuerierIntervalMethodInfo a signature where
    overloadedMethod = settingBridgeGetMulticastQuerierInterval

instance O.OverloadedMethodInfo SettingBridgeGetMulticastQuerierIntervalMethodInfo a where
    overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.settingBridgeGetMulticastQuerierInterval",
        O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#v:settingBridgeGetMulticastQuerierInterval"
        })


#endif

-- method SettingBridge::get_multicast_query_interval
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "setting"
--           , argType =
--               TInterface Name { namespace = "NM" , name = "SettingBridge" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "the #NMSettingBridge"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , argCallbackUserData = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just (TBasicType TUInt64)
-- throws : False
-- Skip return : False

foreign import ccall "nm_setting_bridge_get_multicast_query_interval" nm_setting_bridge_get_multicast_query_interval :: 
    Ptr SettingBridge ->                    -- setting : TInterface (Name {namespace = "NM", name = "SettingBridge"})
    IO Word64

-- | /No description available in the introspection data./
-- 
-- /Since: 1.26/
settingBridgeGetMulticastQueryInterval ::
    (B.CallStack.HasCallStack, MonadIO m, IsSettingBridge a) =>
    a
    -- ^ /@setting@/: the t'GI.NM.Objects.SettingBridge.SettingBridge'
    -> m Word64
    -- ^ __Returns:__ the [SettingBridge:multicastQueryInterval]("GI.NM.Objects.SettingBridge#g:attr:multicastQueryInterval") property of the setting
settingBridgeGetMulticastQueryInterval :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsSettingBridge a) =>
a -> m Word64
settingBridgeGetMulticastQueryInterval a
setting = IO Word64 -> m Word64
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Word64 -> m Word64) -> IO Word64 -> m Word64
forall a b. (a -> b) -> a -> b
$ do
    Ptr SettingBridge
setting' <- a -> IO (Ptr SettingBridge)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
setting
    Word64
result <- Ptr SettingBridge -> IO Word64
nm_setting_bridge_get_multicast_query_interval Ptr SettingBridge
setting'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
setting
    Word64 -> IO Word64
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Word64
result

#if defined(ENABLE_OVERLOADING)
data SettingBridgeGetMulticastQueryIntervalMethodInfo
instance (signature ~ (m Word64), MonadIO m, IsSettingBridge a) => O.OverloadedMethod SettingBridgeGetMulticastQueryIntervalMethodInfo a signature where
    overloadedMethod = settingBridgeGetMulticastQueryInterval

instance O.OverloadedMethodInfo SettingBridgeGetMulticastQueryIntervalMethodInfo a where
    overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.settingBridgeGetMulticastQueryInterval",
        O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#v:settingBridgeGetMulticastQueryInterval"
        })


#endif

-- method SettingBridge::get_multicast_query_response_interval
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "setting"
--           , argType =
--               TInterface Name { namespace = "NM" , name = "SettingBridge" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "the #NMSettingBridge"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , argCallbackUserData = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just (TBasicType TUInt64)
-- throws : False
-- Skip return : False

foreign import ccall "nm_setting_bridge_get_multicast_query_response_interval" nm_setting_bridge_get_multicast_query_response_interval :: 
    Ptr SettingBridge ->                    -- setting : TInterface (Name {namespace = "NM", name = "SettingBridge"})
    IO Word64

-- | /No description available in the introspection data./
-- 
-- /Since: 1.26/
settingBridgeGetMulticastQueryResponseInterval ::
    (B.CallStack.HasCallStack, MonadIO m, IsSettingBridge a) =>
    a
    -- ^ /@setting@/: the t'GI.NM.Objects.SettingBridge.SettingBridge'
    -> m Word64
    -- ^ __Returns:__ the [SettingBridge:multicastQueryResponseInterval]("GI.NM.Objects.SettingBridge#g:attr:multicastQueryResponseInterval") property of the setting
settingBridgeGetMulticastQueryResponseInterval :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsSettingBridge a) =>
a -> m Word64
settingBridgeGetMulticastQueryResponseInterval a
setting = IO Word64 -> m Word64
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Word64 -> m Word64) -> IO Word64 -> m Word64
forall a b. (a -> b) -> a -> b
$ do
    Ptr SettingBridge
setting' <- a -> IO (Ptr SettingBridge)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
setting
    Word64
result <- Ptr SettingBridge -> IO Word64
nm_setting_bridge_get_multicast_query_response_interval Ptr SettingBridge
setting'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
setting
    Word64 -> IO Word64
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Word64
result

#if defined(ENABLE_OVERLOADING)
data SettingBridgeGetMulticastQueryResponseIntervalMethodInfo
instance (signature ~ (m Word64), MonadIO m, IsSettingBridge a) => O.OverloadedMethod SettingBridgeGetMulticastQueryResponseIntervalMethodInfo a signature where
    overloadedMethod = settingBridgeGetMulticastQueryResponseInterval

instance O.OverloadedMethodInfo SettingBridgeGetMulticastQueryResponseIntervalMethodInfo a where
    overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.settingBridgeGetMulticastQueryResponseInterval",
        O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#v:settingBridgeGetMulticastQueryResponseInterval"
        })


#endif

-- method SettingBridge::get_multicast_query_use_ifaddr
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "setting"
--           , argType =
--               TInterface Name { namespace = "NM" , name = "SettingBridge" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "the #NMSettingBridge"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , argCallbackUserData = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just (TBasicType TBoolean)
-- throws : False
-- Skip return : False

foreign import ccall "nm_setting_bridge_get_multicast_query_use_ifaddr" nm_setting_bridge_get_multicast_query_use_ifaddr :: 
    Ptr SettingBridge ->                    -- setting : TInterface (Name {namespace = "NM", name = "SettingBridge"})
    IO CInt

-- | /No description available in the introspection data./
-- 
-- /Since: 1.24/
settingBridgeGetMulticastQueryUseIfaddr ::
    (B.CallStack.HasCallStack, MonadIO m, IsSettingBridge a) =>
    a
    -- ^ /@setting@/: the t'GI.NM.Objects.SettingBridge.SettingBridge'
    -> m Bool
    -- ^ __Returns:__ the [SettingBridge:multicastQueryUseIfaddr]("GI.NM.Objects.SettingBridge#g:attr:multicastQueryUseIfaddr") property of the setting
settingBridgeGetMulticastQueryUseIfaddr :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsSettingBridge a) =>
a -> m Bool
settingBridgeGetMulticastQueryUseIfaddr a
setting = IO Bool -> m Bool
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ do
    Ptr SettingBridge
setting' <- a -> IO (Ptr SettingBridge)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
setting
    CInt
result <- Ptr SettingBridge -> IO CInt
nm_setting_bridge_get_multicast_query_use_ifaddr Ptr SettingBridge
setting'
    let result' :: Bool
result' = (CInt -> CInt -> Bool
forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
setting
    Bool -> IO Bool
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'

#if defined(ENABLE_OVERLOADING)
data SettingBridgeGetMulticastQueryUseIfaddrMethodInfo
instance (signature ~ (m Bool), MonadIO m, IsSettingBridge a) => O.OverloadedMethod SettingBridgeGetMulticastQueryUseIfaddrMethodInfo a signature where
    overloadedMethod = settingBridgeGetMulticastQueryUseIfaddr

instance O.OverloadedMethodInfo SettingBridgeGetMulticastQueryUseIfaddrMethodInfo a where
    overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.settingBridgeGetMulticastQueryUseIfaddr",
        O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#v:settingBridgeGetMulticastQueryUseIfaddr"
        })


#endif

-- method SettingBridge::get_multicast_router
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "setting"
--           , argType =
--               TInterface Name { namespace = "NM" , name = "SettingBridge" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "the #NMSettingBridge"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , argCallbackUserData = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just (TBasicType TUTF8)
-- throws : False
-- Skip return : False

foreign import ccall "nm_setting_bridge_get_multicast_router" nm_setting_bridge_get_multicast_router :: 
    Ptr SettingBridge ->                    -- setting : TInterface (Name {namespace = "NM", name = "SettingBridge"})
    IO CString

-- | /No description available in the introspection data./
-- 
-- /Since: 1.24/
settingBridgeGetMulticastRouter ::
    (B.CallStack.HasCallStack, MonadIO m, IsSettingBridge a) =>
    a
    -- ^ /@setting@/: the t'GI.NM.Objects.SettingBridge.SettingBridge'
    -> m T.Text
    -- ^ __Returns:__ the [SettingBridge:multicastRouter]("GI.NM.Objects.SettingBridge#g:attr:multicastRouter") property of the setting
settingBridgeGetMulticastRouter :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsSettingBridge a) =>
a -> m Text
settingBridgeGetMulticastRouter a
setting = IO Text -> m Text
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Text -> m Text) -> IO Text -> m Text
forall a b. (a -> b) -> a -> b
$ do
    Ptr SettingBridge
setting' <- a -> IO (Ptr SettingBridge)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
setting
    CString
result <- Ptr SettingBridge -> IO CString
nm_setting_bridge_get_multicast_router Ptr SettingBridge
setting'
    Text -> CString -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"settingBridgeGetMulticastRouter" CString
result
    Text
result' <- HasCallStack => CString -> IO Text
CString -> IO Text
cstringToText CString
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
setting
    Text -> IO Text
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Text
result'

#if defined(ENABLE_OVERLOADING)
data SettingBridgeGetMulticastRouterMethodInfo
instance (signature ~ (m T.Text), MonadIO m, IsSettingBridge a) => O.OverloadedMethod SettingBridgeGetMulticastRouterMethodInfo a signature where
    overloadedMethod = settingBridgeGetMulticastRouter

instance O.OverloadedMethodInfo SettingBridgeGetMulticastRouterMethodInfo a where
    overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.settingBridgeGetMulticastRouter",
        O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#v:settingBridgeGetMulticastRouter"
        })


#endif

-- method SettingBridge::get_multicast_snooping
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "setting"
--           , argType =
--               TInterface Name { namespace = "NM" , name = "SettingBridge" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "the #NMSettingBridge"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , argCallbackUserData = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just (TBasicType TBoolean)
-- throws : False
-- Skip return : False

foreign import ccall "nm_setting_bridge_get_multicast_snooping" nm_setting_bridge_get_multicast_snooping :: 
    Ptr SettingBridge ->                    -- setting : TInterface (Name {namespace = "NM", name = "SettingBridge"})
    IO CInt

-- | /No description available in the introspection data./
-- 
-- /Since: 1.2/
settingBridgeGetMulticastSnooping ::
    (B.CallStack.HasCallStack, MonadIO m, IsSettingBridge a) =>
    a
    -- ^ /@setting@/: the t'GI.NM.Objects.SettingBridge.SettingBridge'
    -> m Bool
    -- ^ __Returns:__ the [SettingBridge:multicastSnooping]("GI.NM.Objects.SettingBridge#g:attr:multicastSnooping") property of the setting
settingBridgeGetMulticastSnooping :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsSettingBridge a) =>
a -> m Bool
settingBridgeGetMulticastSnooping a
setting = IO Bool -> m Bool
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ do
    Ptr SettingBridge
setting' <- a -> IO (Ptr SettingBridge)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
setting
    CInt
result <- Ptr SettingBridge -> IO CInt
nm_setting_bridge_get_multicast_snooping Ptr SettingBridge
setting'
    let result' :: Bool
result' = (CInt -> CInt -> Bool
forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
setting
    Bool -> IO Bool
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'

#if defined(ENABLE_OVERLOADING)
data SettingBridgeGetMulticastSnoopingMethodInfo
instance (signature ~ (m Bool), MonadIO m, IsSettingBridge a) => O.OverloadedMethod SettingBridgeGetMulticastSnoopingMethodInfo a signature where
    overloadedMethod = settingBridgeGetMulticastSnooping

instance O.OverloadedMethodInfo SettingBridgeGetMulticastSnoopingMethodInfo a where
    overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.settingBridgeGetMulticastSnooping",
        O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#v:settingBridgeGetMulticastSnooping"
        })


#endif

-- method SettingBridge::get_multicast_startup_query_count
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "setting"
--           , argType =
--               TInterface Name { namespace = "NM" , name = "SettingBridge" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "the #NMSettingBridge"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , argCallbackUserData = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just (TBasicType TUInt32)
-- throws : False
-- Skip return : False

foreign import ccall "nm_setting_bridge_get_multicast_startup_query_count" nm_setting_bridge_get_multicast_startup_query_count :: 
    Ptr SettingBridge ->                    -- setting : TInterface (Name {namespace = "NM", name = "SettingBridge"})
    IO Word32

-- | /No description available in the introspection data./
-- 
-- /Since: 1.26/
settingBridgeGetMulticastStartupQueryCount ::
    (B.CallStack.HasCallStack, MonadIO m, IsSettingBridge a) =>
    a
    -- ^ /@setting@/: the t'GI.NM.Objects.SettingBridge.SettingBridge'
    -> m Word32
    -- ^ __Returns:__ the [SettingBridge:multicastQueryResponseInterval]("GI.NM.Objects.SettingBridge#g:attr:multicastQueryResponseInterval") property of the setting
settingBridgeGetMulticastStartupQueryCount :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsSettingBridge a) =>
a -> m Word32
settingBridgeGetMulticastStartupQueryCount a
setting = IO Word32 -> m Word32
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Word32 -> m Word32) -> IO Word32 -> m Word32
forall a b. (a -> b) -> a -> b
$ do
    Ptr SettingBridge
setting' <- a -> IO (Ptr SettingBridge)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
setting
    Word32
result <- Ptr SettingBridge -> IO Word32
nm_setting_bridge_get_multicast_startup_query_count Ptr SettingBridge
setting'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
setting
    Word32 -> IO Word32
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Word32
result

#if defined(ENABLE_OVERLOADING)
data SettingBridgeGetMulticastStartupQueryCountMethodInfo
instance (signature ~ (m Word32), MonadIO m, IsSettingBridge a) => O.OverloadedMethod SettingBridgeGetMulticastStartupQueryCountMethodInfo a signature where
    overloadedMethod = settingBridgeGetMulticastStartupQueryCount

instance O.OverloadedMethodInfo SettingBridgeGetMulticastStartupQueryCountMethodInfo a where
    overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.settingBridgeGetMulticastStartupQueryCount",
        O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#v:settingBridgeGetMulticastStartupQueryCount"
        })


#endif

-- method SettingBridge::get_multicast_startup_query_interval
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "setting"
--           , argType =
--               TInterface Name { namespace = "NM" , name = "SettingBridge" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "the #NMSettingBridge"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , argCallbackUserData = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just (TBasicType TUInt64)
-- throws : False
-- Skip return : False

foreign import ccall "nm_setting_bridge_get_multicast_startup_query_interval" nm_setting_bridge_get_multicast_startup_query_interval :: 
    Ptr SettingBridge ->                    -- setting : TInterface (Name {namespace = "NM", name = "SettingBridge"})
    IO Word64

-- | /No description available in the introspection data./
-- 
-- /Since: 1.26/
settingBridgeGetMulticastStartupQueryInterval ::
    (B.CallStack.HasCallStack, MonadIO m, IsSettingBridge a) =>
    a
    -- ^ /@setting@/: the t'GI.NM.Objects.SettingBridge.SettingBridge'
    -> m Word64
    -- ^ __Returns:__ the [SettingBridge:multicastStartupQueryInterval]("GI.NM.Objects.SettingBridge#g:attr:multicastStartupQueryInterval") property of the setting
settingBridgeGetMulticastStartupQueryInterval :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsSettingBridge a) =>
a -> m Word64
settingBridgeGetMulticastStartupQueryInterval a
setting = IO Word64 -> m Word64
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Word64 -> m Word64) -> IO Word64 -> m Word64
forall a b. (a -> b) -> a -> b
$ do
    Ptr SettingBridge
setting' <- a -> IO (Ptr SettingBridge)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
setting
    Word64
result <- Ptr SettingBridge -> IO Word64
nm_setting_bridge_get_multicast_startup_query_interval Ptr SettingBridge
setting'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
setting
    Word64 -> IO Word64
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Word64
result

#if defined(ENABLE_OVERLOADING)
data SettingBridgeGetMulticastStartupQueryIntervalMethodInfo
instance (signature ~ (m Word64), MonadIO m, IsSettingBridge a) => O.OverloadedMethod SettingBridgeGetMulticastStartupQueryIntervalMethodInfo a signature where
    overloadedMethod = settingBridgeGetMulticastStartupQueryInterval

instance O.OverloadedMethodInfo SettingBridgeGetMulticastStartupQueryIntervalMethodInfo a where
    overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.settingBridgeGetMulticastStartupQueryInterval",
        O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#v:settingBridgeGetMulticastStartupQueryInterval"
        })


#endif

-- method SettingBridge::get_num_vlans
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "setting"
--           , argType =
--               TInterface Name { namespace = "NM" , name = "SettingBridge" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "the #NMSettingBridge"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , argCallbackUserData = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just (TBasicType TUInt)
-- throws : False
-- Skip return : False

foreign import ccall "nm_setting_bridge_get_num_vlans" nm_setting_bridge_get_num_vlans :: 
    Ptr SettingBridge ->                    -- setting : TInterface (Name {namespace = "NM", name = "SettingBridge"})
    IO Word32

-- | /No description available in the introspection data./
-- 
-- /Since: 1.18/
settingBridgeGetNumVlans ::
    (B.CallStack.HasCallStack, MonadIO m, IsSettingBridge a) =>
    a
    -- ^ /@setting@/: the t'GI.NM.Objects.SettingBridge.SettingBridge'
    -> m Word32
    -- ^ __Returns:__ the number of VLANs
settingBridgeGetNumVlans :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsSettingBridge a) =>
a -> m Word32
settingBridgeGetNumVlans a
setting = IO Word32 -> m Word32
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Word32 -> m Word32) -> IO Word32 -> m Word32
forall a b. (a -> b) -> a -> b
$ do
    Ptr SettingBridge
setting' <- a -> IO (Ptr SettingBridge)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
setting
    Word32
result <- Ptr SettingBridge -> IO Word32
nm_setting_bridge_get_num_vlans Ptr SettingBridge
setting'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
setting
    Word32 -> IO Word32
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Word32
result

#if defined(ENABLE_OVERLOADING)
data SettingBridgeGetNumVlansMethodInfo
instance (signature ~ (m Word32), MonadIO m, IsSettingBridge a) => O.OverloadedMethod SettingBridgeGetNumVlansMethodInfo a signature where
    overloadedMethod = settingBridgeGetNumVlans

instance O.OverloadedMethodInfo SettingBridgeGetNumVlansMethodInfo a where
    overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.settingBridgeGetNumVlans",
        O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#v:settingBridgeGetNumVlans"
        })


#endif

-- method SettingBridge::get_priority
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "setting"
--           , argType =
--               TInterface Name { namespace = "NM" , name = "SettingBridge" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "the #NMSettingBridge"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , argCallbackUserData = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just (TBasicType TUInt16)
-- throws : False
-- Skip return : False

foreign import ccall "nm_setting_bridge_get_priority" nm_setting_bridge_get_priority :: 
    Ptr SettingBridge ->                    -- setting : TInterface (Name {namespace = "NM", name = "SettingBridge"})
    IO Word16

-- | /No description available in the introspection data./
settingBridgeGetPriority ::
    (B.CallStack.HasCallStack, MonadIO m, IsSettingBridge a) =>
    a
    -- ^ /@setting@/: the t'GI.NM.Objects.SettingBridge.SettingBridge'
    -> m Word16
    -- ^ __Returns:__ the [SettingBridge:priority]("GI.NM.Objects.SettingBridge#g:attr:priority") property of the setting
settingBridgeGetPriority :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsSettingBridge a) =>
a -> m Word16
settingBridgeGetPriority a
setting = IO Word16 -> m Word16
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Word16 -> m Word16) -> IO Word16 -> m Word16
forall a b. (a -> b) -> a -> b
$ do
    Ptr SettingBridge
setting' <- a -> IO (Ptr SettingBridge)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
setting
    Word16
result <- Ptr SettingBridge -> IO Word16
nm_setting_bridge_get_priority Ptr SettingBridge
setting'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
setting
    Word16 -> IO Word16
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Word16
result

#if defined(ENABLE_OVERLOADING)
data SettingBridgeGetPriorityMethodInfo
instance (signature ~ (m Word16), MonadIO m, IsSettingBridge a) => O.OverloadedMethod SettingBridgeGetPriorityMethodInfo a signature where
    overloadedMethod = settingBridgeGetPriority

instance O.OverloadedMethodInfo SettingBridgeGetPriorityMethodInfo a where
    overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.settingBridgeGetPriority",
        O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#v:settingBridgeGetPriority"
        })


#endif

-- method SettingBridge::get_stp
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "setting"
--           , argType =
--               TInterface Name { namespace = "NM" , name = "SettingBridge" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "the #NMSettingBridge"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , argCallbackUserData = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just (TBasicType TBoolean)
-- throws : False
-- Skip return : False

foreign import ccall "nm_setting_bridge_get_stp" nm_setting_bridge_get_stp :: 
    Ptr SettingBridge ->                    -- setting : TInterface (Name {namespace = "NM", name = "SettingBridge"})
    IO CInt

-- | /No description available in the introspection data./
settingBridgeGetStp ::
    (B.CallStack.HasCallStack, MonadIO m, IsSettingBridge a) =>
    a
    -- ^ /@setting@/: the t'GI.NM.Objects.SettingBridge.SettingBridge'
    -> m Bool
    -- ^ __Returns:__ the [SettingBridge:stp]("GI.NM.Objects.SettingBridge#g:attr:stp") property of the setting
settingBridgeGetStp :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsSettingBridge a) =>
a -> m Bool
settingBridgeGetStp a
setting = IO Bool -> m Bool
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ do
    Ptr SettingBridge
setting' <- a -> IO (Ptr SettingBridge)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
setting
    CInt
result <- Ptr SettingBridge -> IO CInt
nm_setting_bridge_get_stp Ptr SettingBridge
setting'
    let result' :: Bool
result' = (CInt -> CInt -> Bool
forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
setting
    Bool -> IO Bool
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'

#if defined(ENABLE_OVERLOADING)
data SettingBridgeGetStpMethodInfo
instance (signature ~ (m Bool), MonadIO m, IsSettingBridge a) => O.OverloadedMethod SettingBridgeGetStpMethodInfo a signature where
    overloadedMethod = settingBridgeGetStp

instance O.OverloadedMethodInfo SettingBridgeGetStpMethodInfo a where
    overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.settingBridgeGetStp",
        O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#v:settingBridgeGetStp"
        })


#endif

-- method SettingBridge::get_vlan
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "setting"
--           , argType =
--               TInterface Name { namespace = "NM" , name = "SettingBridge" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "the #NMSettingBridge"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , argCallbackUserData = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "idx"
--           , argType = TBasicType TUInt
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "index number of the VLAN to return"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , argCallbackUserData = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just (TInterface Name { namespace = "NM" , name = "BridgeVlan" })
-- throws : False
-- Skip return : False

foreign import ccall "nm_setting_bridge_get_vlan" nm_setting_bridge_get_vlan :: 
    Ptr SettingBridge ->                    -- setting : TInterface (Name {namespace = "NM", name = "SettingBridge"})
    Word32 ->                               -- idx : TBasicType TUInt
    IO (Ptr NM.BridgeVlan.BridgeVlan)

-- | /No description available in the introspection data./
-- 
-- /Since: 1.18/
settingBridgeGetVlan ::
    (B.CallStack.HasCallStack, MonadIO m, IsSettingBridge a) =>
    a
    -- ^ /@setting@/: the t'GI.NM.Objects.SettingBridge.SettingBridge'
    -> Word32
    -- ^ /@idx@/: index number of the VLAN to return
    -> m NM.BridgeVlan.BridgeVlan
    -- ^ __Returns:__ the VLAN at index /@idx@/
settingBridgeGetVlan :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsSettingBridge a) =>
a -> Word32 -> m BridgeVlan
settingBridgeGetVlan a
setting Word32
idx = IO BridgeVlan -> m BridgeVlan
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO BridgeVlan -> m BridgeVlan) -> IO BridgeVlan -> m BridgeVlan
forall a b. (a -> b) -> a -> b
$ do
    Ptr SettingBridge
setting' <- a -> IO (Ptr SettingBridge)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
setting
    Ptr BridgeVlan
result <- Ptr SettingBridge -> Word32 -> IO (Ptr BridgeVlan)
nm_setting_bridge_get_vlan Ptr SettingBridge
setting' Word32
idx
    Text -> Ptr BridgeVlan -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"settingBridgeGetVlan" Ptr BridgeVlan
result
    BridgeVlan
result' <- ((ManagedPtr BridgeVlan -> BridgeVlan)
-> Ptr BridgeVlan -> IO BridgeVlan
forall a.
(HasCallStack, GBoxed a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
newBoxed ManagedPtr BridgeVlan -> BridgeVlan
NM.BridgeVlan.BridgeVlan) Ptr BridgeVlan
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
setting
    BridgeVlan -> IO BridgeVlan
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return BridgeVlan
result'

#if defined(ENABLE_OVERLOADING)
data SettingBridgeGetVlanMethodInfo
instance (signature ~ (Word32 -> m NM.BridgeVlan.BridgeVlan), MonadIO m, IsSettingBridge a) => O.OverloadedMethod SettingBridgeGetVlanMethodInfo a signature where
    overloadedMethod = settingBridgeGetVlan

instance O.OverloadedMethodInfo SettingBridgeGetVlanMethodInfo a where
    overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.settingBridgeGetVlan",
        O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#v:settingBridgeGetVlan"
        })


#endif

-- method SettingBridge::get_vlan_default_pvid
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "setting"
--           , argType =
--               TInterface Name { namespace = "NM" , name = "SettingBridge" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "the #NMSettingBridge"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , argCallbackUserData = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just (TBasicType TUInt16)
-- throws : False
-- Skip return : False

foreign import ccall "nm_setting_bridge_get_vlan_default_pvid" nm_setting_bridge_get_vlan_default_pvid :: 
    Ptr SettingBridge ->                    -- setting : TInterface (Name {namespace = "NM", name = "SettingBridge"})
    IO Word16

-- | /No description available in the introspection data./
-- 
-- /Since: 1.18/
settingBridgeGetVlanDefaultPvid ::
    (B.CallStack.HasCallStack, MonadIO m, IsSettingBridge a) =>
    a
    -- ^ /@setting@/: the t'GI.NM.Objects.SettingBridge.SettingBridge'
    -> m Word16
    -- ^ __Returns:__ the [SettingBridge:vlanDefaultPvid]("GI.NM.Objects.SettingBridge#g:attr:vlanDefaultPvid") property of the setting
settingBridgeGetVlanDefaultPvid :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsSettingBridge a) =>
a -> m Word16
settingBridgeGetVlanDefaultPvid a
setting = IO Word16 -> m Word16
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Word16 -> m Word16) -> IO Word16 -> m Word16
forall a b. (a -> b) -> a -> b
$ do
    Ptr SettingBridge
setting' <- a -> IO (Ptr SettingBridge)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
setting
    Word16
result <- Ptr SettingBridge -> IO Word16
nm_setting_bridge_get_vlan_default_pvid Ptr SettingBridge
setting'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
setting
    Word16 -> IO Word16
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Word16
result

#if defined(ENABLE_OVERLOADING)
data SettingBridgeGetVlanDefaultPvidMethodInfo
instance (signature ~ (m Word16), MonadIO m, IsSettingBridge a) => O.OverloadedMethod SettingBridgeGetVlanDefaultPvidMethodInfo a signature where
    overloadedMethod = settingBridgeGetVlanDefaultPvid

instance O.OverloadedMethodInfo SettingBridgeGetVlanDefaultPvidMethodInfo a where
    overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.settingBridgeGetVlanDefaultPvid",
        O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#v:settingBridgeGetVlanDefaultPvid"
        })


#endif

-- method SettingBridge::get_vlan_filtering
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "setting"
--           , argType =
--               TInterface Name { namespace = "NM" , name = "SettingBridge" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "the #NMSettingBridge"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , argCallbackUserData = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just (TBasicType TBoolean)
-- throws : False
-- Skip return : False

foreign import ccall "nm_setting_bridge_get_vlan_filtering" nm_setting_bridge_get_vlan_filtering :: 
    Ptr SettingBridge ->                    -- setting : TInterface (Name {namespace = "NM", name = "SettingBridge"})
    IO CInt

-- | /No description available in the introspection data./
-- 
-- /Since: 1.18/
settingBridgeGetVlanFiltering ::
    (B.CallStack.HasCallStack, MonadIO m, IsSettingBridge a) =>
    a
    -- ^ /@setting@/: the t'GI.NM.Objects.SettingBridge.SettingBridge'
    -> m Bool
    -- ^ __Returns:__ the [SettingBridge:vlanFiltering]("GI.NM.Objects.SettingBridge#g:attr:vlanFiltering") property of the setting
settingBridgeGetVlanFiltering :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsSettingBridge a) =>
a -> m Bool
settingBridgeGetVlanFiltering a
setting = IO Bool -> m Bool
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ do
    Ptr SettingBridge
setting' <- a -> IO (Ptr SettingBridge)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
setting
    CInt
result <- Ptr SettingBridge -> IO CInt
nm_setting_bridge_get_vlan_filtering Ptr SettingBridge
setting'
    let result' :: Bool
result' = (CInt -> CInt -> Bool
forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
setting
    Bool -> IO Bool
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'

#if defined(ENABLE_OVERLOADING)
data SettingBridgeGetVlanFilteringMethodInfo
instance (signature ~ (m Bool), MonadIO m, IsSettingBridge a) => O.OverloadedMethod SettingBridgeGetVlanFilteringMethodInfo a signature where
    overloadedMethod = settingBridgeGetVlanFiltering

instance O.OverloadedMethodInfo SettingBridgeGetVlanFilteringMethodInfo a where
    overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.settingBridgeGetVlanFiltering",
        O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#v:settingBridgeGetVlanFiltering"
        })


#endif

-- method SettingBridge::get_vlan_protocol
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "setting"
--           , argType =
--               TInterface Name { namespace = "NM" , name = "SettingBridge" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "the #NMSettingBridge"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , argCallbackUserData = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just (TBasicType TUTF8)
-- throws : False
-- Skip return : False

foreign import ccall "nm_setting_bridge_get_vlan_protocol" nm_setting_bridge_get_vlan_protocol :: 
    Ptr SettingBridge ->                    -- setting : TInterface (Name {namespace = "NM", name = "SettingBridge"})
    IO CString

-- | /No description available in the introspection data./
-- 
-- /Since: 1.24/
settingBridgeGetVlanProtocol ::
    (B.CallStack.HasCallStack, MonadIO m, IsSettingBridge a) =>
    a
    -- ^ /@setting@/: the t'GI.NM.Objects.SettingBridge.SettingBridge'
    -> m T.Text
    -- ^ __Returns:__ the [SettingBridge:vlanProtocol]("GI.NM.Objects.SettingBridge#g:attr:vlanProtocol") property of the setting
settingBridgeGetVlanProtocol :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsSettingBridge a) =>
a -> m Text
settingBridgeGetVlanProtocol a
setting = IO Text -> m Text
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Text -> m Text) -> IO Text -> m Text
forall a b. (a -> b) -> a -> b
$ do
    Ptr SettingBridge
setting' <- a -> IO (Ptr SettingBridge)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
setting
    CString
result <- Ptr SettingBridge -> IO CString
nm_setting_bridge_get_vlan_protocol Ptr SettingBridge
setting'
    Text -> CString -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"settingBridgeGetVlanProtocol" CString
result
    Text
result' <- HasCallStack => CString -> IO Text
CString -> IO Text
cstringToText CString
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
setting
    Text -> IO Text
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Text
result'

#if defined(ENABLE_OVERLOADING)
data SettingBridgeGetVlanProtocolMethodInfo
instance (signature ~ (m T.Text), MonadIO m, IsSettingBridge a) => O.OverloadedMethod SettingBridgeGetVlanProtocolMethodInfo a signature where
    overloadedMethod = settingBridgeGetVlanProtocol

instance O.OverloadedMethodInfo SettingBridgeGetVlanProtocolMethodInfo a where
    overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.settingBridgeGetVlanProtocol",
        O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#v:settingBridgeGetVlanProtocol"
        })


#endif

-- method SettingBridge::get_vlan_stats_enabled
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "setting"
--           , argType =
--               TInterface Name { namespace = "NM" , name = "SettingBridge" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "the #NMSettingBridge"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , argCallbackUserData = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just (TBasicType TBoolean)
-- throws : False
-- Skip return : False

foreign import ccall "nm_setting_bridge_get_vlan_stats_enabled" nm_setting_bridge_get_vlan_stats_enabled :: 
    Ptr SettingBridge ->                    -- setting : TInterface (Name {namespace = "NM", name = "SettingBridge"})
    IO CInt

-- | /No description available in the introspection data./
-- 
-- /Since: 1.24/
settingBridgeGetVlanStatsEnabled ::
    (B.CallStack.HasCallStack, MonadIO m, IsSettingBridge a) =>
    a
    -- ^ /@setting@/: the t'GI.NM.Objects.SettingBridge.SettingBridge'
    -> m Bool
    -- ^ __Returns:__ the [SettingBridge:vlanStatsEnabled]("GI.NM.Objects.SettingBridge#g:attr:vlanStatsEnabled") property of the setting
settingBridgeGetVlanStatsEnabled :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsSettingBridge a) =>
a -> m Bool
settingBridgeGetVlanStatsEnabled a
setting = IO Bool -> m Bool
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ do
    Ptr SettingBridge
setting' <- a -> IO (Ptr SettingBridge)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
setting
    CInt
result <- Ptr SettingBridge -> IO CInt
nm_setting_bridge_get_vlan_stats_enabled Ptr SettingBridge
setting'
    let result' :: Bool
result' = (CInt -> CInt -> Bool
forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
setting
    Bool -> IO Bool
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'

#if defined(ENABLE_OVERLOADING)
data SettingBridgeGetVlanStatsEnabledMethodInfo
instance (signature ~ (m Bool), MonadIO m, IsSettingBridge a) => O.OverloadedMethod SettingBridgeGetVlanStatsEnabledMethodInfo a signature where
    overloadedMethod = settingBridgeGetVlanStatsEnabled

instance O.OverloadedMethodInfo SettingBridgeGetVlanStatsEnabledMethodInfo a where
    overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.settingBridgeGetVlanStatsEnabled",
        O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#v:settingBridgeGetVlanStatsEnabled"
        })


#endif

-- method SettingBridge::remove_vlan
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "setting"
--           , argType =
--               TInterface Name { namespace = "NM" , name = "SettingBridge" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "the #NMSettingBridge"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , argCallbackUserData = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "idx"
--           , argType = TBasicType TUInt
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "index number of the VLAN."
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , argCallbackUserData = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Nothing
-- throws : False
-- Skip return : False

foreign import ccall "nm_setting_bridge_remove_vlan" nm_setting_bridge_remove_vlan :: 
    Ptr SettingBridge ->                    -- setting : TInterface (Name {namespace = "NM", name = "SettingBridge"})
    Word32 ->                               -- idx : TBasicType TUInt
    IO ()

-- | Removes the vlan at index /@idx@/.
-- 
-- /Since: 1.18/
settingBridgeRemoveVlan ::
    (B.CallStack.HasCallStack, MonadIO m, IsSettingBridge a) =>
    a
    -- ^ /@setting@/: the t'GI.NM.Objects.SettingBridge.SettingBridge'
    -> Word32
    -- ^ /@idx@/: index number of the VLAN.
    -> m ()
settingBridgeRemoveVlan :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsSettingBridge a) =>
a -> Word32 -> m ()
settingBridgeRemoveVlan a
setting Word32
idx = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    Ptr SettingBridge
setting' <- a -> IO (Ptr SettingBridge)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
setting
    Ptr SettingBridge -> Word32 -> IO ()
nm_setting_bridge_remove_vlan Ptr SettingBridge
setting' Word32
idx
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
setting
    () -> IO ()
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data SettingBridgeRemoveVlanMethodInfo
instance (signature ~ (Word32 -> m ()), MonadIO m, IsSettingBridge a) => O.OverloadedMethod SettingBridgeRemoveVlanMethodInfo a signature where
    overloadedMethod = settingBridgeRemoveVlan

instance O.OverloadedMethodInfo SettingBridgeRemoveVlanMethodInfo a where
    overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.settingBridgeRemoveVlan",
        O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#v:settingBridgeRemoveVlan"
        })


#endif

-- method SettingBridge::remove_vlan_by_vid
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "setting"
--           , argType =
--               TInterface Name { namespace = "NM" , name = "SettingBridge" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "the #NMSettingBridge"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , argCallbackUserData = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "vid_start"
--           , argType = TBasicType TUInt16
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "the vlan start index"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , argCallbackUserData = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "vid_end"
--           , argType = TBasicType TUInt16
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "the vlan end index" , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , argCallbackUserData = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just (TBasicType TBoolean)
-- throws : False
-- Skip return : False

foreign import ccall "nm_setting_bridge_remove_vlan_by_vid" nm_setting_bridge_remove_vlan_by_vid :: 
    Ptr SettingBridge ->                    -- setting : TInterface (Name {namespace = "NM", name = "SettingBridge"})
    Word16 ->                               -- vid_start : TBasicType TUInt16
    Word16 ->                               -- vid_end : TBasicType TUInt16
    IO CInt

-- | Remove the VLAN with range /@vidStart@/ to /@vidEnd@/.
-- If /@vidEnd@/ is zero, it is assumed to be equal to /@vidStart@/
-- and so the single-id VLAN with id /@vidStart@/ is removed.
-- 
-- /Since: 1.18/
settingBridgeRemoveVlanByVid ::
    (B.CallStack.HasCallStack, MonadIO m, IsSettingBridge a) =>
    a
    -- ^ /@setting@/: the t'GI.NM.Objects.SettingBridge.SettingBridge'
    -> Word16
    -- ^ /@vidStart@/: the vlan start index
    -> Word16
    -- ^ /@vidEnd@/: the vlan end index
    -> m Bool
    -- ^ __Returns:__ 'P.True' if the vlan was found and removed; 'P.False' otherwise
settingBridgeRemoveVlanByVid :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsSettingBridge a) =>
a -> Word16 -> Word16 -> m Bool
settingBridgeRemoveVlanByVid a
setting Word16
vidStart Word16
vidEnd = IO Bool -> m Bool
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ do
    Ptr SettingBridge
setting' <- a -> IO (Ptr SettingBridge)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
setting
    CInt
result <- Ptr SettingBridge -> Word16 -> Word16 -> IO CInt
nm_setting_bridge_remove_vlan_by_vid Ptr SettingBridge
setting' Word16
vidStart Word16
vidEnd
    let result' :: Bool
result' = (CInt -> CInt -> Bool
forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
setting
    Bool -> IO Bool
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'

#if defined(ENABLE_OVERLOADING)
data SettingBridgeRemoveVlanByVidMethodInfo
instance (signature ~ (Word16 -> Word16 -> m Bool), MonadIO m, IsSettingBridge a) => O.OverloadedMethod SettingBridgeRemoveVlanByVidMethodInfo a signature where
    overloadedMethod = settingBridgeRemoveVlanByVid

instance O.OverloadedMethodInfo SettingBridgeRemoveVlanByVidMethodInfo a where
    overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.NM.Objects.SettingBridge.settingBridgeRemoveVlanByVid",
        O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-nm-1.0.1/docs/GI-NM-Objects-SettingBridge.html#v:settingBridgeRemoveVlanByVid"
        })


#endif