1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54
|
module DBus.Introspection.Types where
import qualified DBus as T
data Object = Object
{ objectPath :: T.ObjectPath
, objectInterfaces :: [Interface]
, objectChildren :: [Object]
}
deriving (Show, Eq)
data Interface = Interface
{ interfaceName :: T.InterfaceName
, interfaceMethods :: [Method]
, interfaceSignals :: [Signal]
, interfaceProperties :: [Property]
}
deriving (Show, Eq)
data Method = Method
{ methodName :: T.MemberName
, methodArgs :: [MethodArg]
}
deriving (Show, Eq)
data MethodArg = MethodArg
{ methodArgName :: String
, methodArgType :: T.Type
, methodArgDirection :: Direction
}
deriving (Show, Eq)
data Direction = In | Out
deriving (Show, Eq)
data Signal = Signal
{ signalName :: T.MemberName
, signalArgs :: [SignalArg]
}
deriving (Show, Eq)
data SignalArg = SignalArg
{ signalArgName :: String
, signalArgType :: T.Type
}
deriving (Show, Eq)
data Property = Property
{ propertyName :: String
, propertyType :: T.Type
, propertyRead :: Bool
, propertyWrite :: Bool
}
deriving (Show, Eq)
|