lmonad-0.1.0.0: LMonad is an Information Flow Control (IFC) framework for Haskell applications.

Safe HaskellSafe
LanguageHaskell98

LMonad.Label.PowerSet

Synopsis

Documentation

data Ord p => PSLabel p Source #

Power set label made of all combinations of the principals.

Constructors

PSLabel 

Instances

(Show p, Ord p) => Show (PSLabel p) Source # 

Methods

showsPrec :: Int -> PSLabel p -> ShowS #

show :: PSLabel p -> String #

showList :: [PSLabel p] -> ShowS #

Ord p => Label (PSLabel p) Source # 

Methods

lub :: PSLabel p -> PSLabel p -> PSLabel p

glb :: PSLabel p -> PSLabel p -> PSLabel p

canFlowTo :: PSLabel p -> PSLabel p -> Bool

bottom :: PSLabel p

psSingleton :: Ord p => p -> PSLabel p Source #

Convenience function to convert a principal to confidentiality and integrity PSLabel.

psConfidentialitySingleton :: Ord p => p -> PSLabel p Source #

Convenience function to convert a principal to confidentiality PSLabel.

psIntegritySingleton :: Ord p => p -> PSLabel p Source #

Convenience function to convert a principal to integrity PSLabel.

type PSLabeled p = Labeled (PSLabel p) Source #

Type alias for labeled power sets.