Safe Haskell | None |
---|
Info.Types
Description
some useful types to use in Info's that don't really fit anywhere else
- data Arity = Arity Int Bool
- newtype Properties = Properties (EnumBitSet Property)
- class HasProperties a where
- modifyProperties :: (Properties -> Properties) -> a -> a
- getProperties :: a -> Properties
- putProperties :: Properties -> a -> a
- setProperty :: Property -> a -> a
- unsetProperty :: Property -> a -> a
- getProperty :: Property -> a -> Bool
- setProperties :: [Property] -> a -> a
- fetchProperties :: Info -> Maybe Properties
- data Property
- = PROP_INLINE
- | PROP_MULTISPECIALIZE
- | PROP_NOINLINE
- | PROP_SRCLOC_ANNOTATE
- | PROP_SUPERINLINE
- | PROP_NOETA
- | PROP_CYCLIC
- | PROP_EXPORTED
- | PROP_INSTANCE
- | PROP_JOINPOINT
- | PROP_METHOD
- | PROP_ONESHOT
- | PROP_PLACEHOLDER
- | PROP_RULEBINDER
- | PROP_SCRUTINIZED
- | PROP_SPECIALIZATION
- | PROP_SRCLOC_ANNOTATE_FUN
- | PROP_SUPERSPECIALIZE
- | PROP_UNSHARED
- | PROP_WHNF
- | PROP_WORKER
- | PROP_WRAPPER
- | PROP_HASRULE
- readProp :: Monad m => [Char] -> m Property
- prop_INLINE :: Property
- prop_MULTISPECIALIZE :: Property
- prop_NOINLINE :: Property
- prop_SRCLOC_ANNOTATE :: Property
- prop_SUPERINLINE :: Property
- prop_NOETA :: Property
- prop_CYCLIC :: Property
- prop_EXPORTED :: Property
- prop_INSTANCE :: Property
- prop_JOINPOINT :: Property
- prop_METHOD :: Property
- prop_ONESHOT :: Property
- prop_PLACEHOLDER :: Property
- prop_RULEBINDER :: Property
- prop_SCRUTINIZED :: Property
- prop_SPECIALIZATION :: Property
- prop_SRCLOC_ANNOTATE_FUN :: Property
- prop_SUPERSPECIALIZE :: Property
- prop_UNSHARED :: Property
- prop_WHNF :: Property
- prop_WORKER :: Property
- prop_WRAPPER :: Property
- prop_HASRULE :: Property
Documentation
how many arguments a function my be applied to before it performs work and whether it bottoms out after that many arguments
newtype Properties Source
list of properties of a function, such as specified by use pragmas or options
Constructors
Properties (EnumBitSet Property) |
Instances
Eq Properties | |
Show Properties | how the variable is bound data BindType = CaseDefault | CasePattern | LetBound | LambdaBound | PiBound deriving(Show,Ord,Eq) |
Typeable Properties | |
Monoid Properties | |
Binary Properties | |
HasSize Properties | |
IsEmpty Properties | |
SetLike Properties | |
Collection Properties | |
Unionize Properties | |
HasProperties Properties |
class HasProperties a whereSource
Methods
modifyProperties :: (Properties -> Properties) -> a -> aSource
getProperties :: a -> PropertiesSource
putProperties :: Properties -> a -> aSource
setProperty :: Property -> a -> aSource
unsetProperty :: Property -> a -> aSource
getProperty :: Property -> a -> BoolSource
setProperties :: [Property] -> a -> aSource
Constructors