rest-rewrite-0.4.3: Rewriting library with online termination checking
Safe HaskellSafe-Inferred
LanguageHaskell2010

Language.REST.WQOConstraints.Lazy

Description

This module defines Lazy constraints on a WQO; the intention is that computations on this type do only the necessary amount of work to determine satisfiability (deferring further computations in a thunk).

Synopsis

Documentation

addConstraint :: (Ord a, Hashable a) => WQO a -> LazyOC a -> LazyOC a Source #

addConstraint o c strengthes c to also contain every relation in o

isSatisfiable :: LazyOC a -> Bool Source #

Returns true if any orderings are permitted

noConstraints :: LazyOC a Source #

Returns a new instance of LazyOC permitting all WQOs

data LazyOC a Source #

Implementation of Lazy ordering constraints.

Instances

Instances details
Generic (LazyOC a) Source # 
Instance details

Defined in Language.REST.WQOConstraints.Lazy

Associated Types

type Rep (LazyOC a) :: Type -> Type #

Methods

from :: LazyOC a -> Rep (LazyOC a) x #

to :: Rep (LazyOC a) x -> LazyOC a #

(Show a, Eq a, Ord a, Hashable a) => Show (LazyOC a) Source # 
Instance details

Defined in Language.REST.WQOConstraints.Lazy

Methods

showsPrec :: Int -> LazyOC a -> ShowS #

show :: LazyOC a -> String #

showList :: [LazyOC a] -> ShowS #

Eq a => Eq (LazyOC a) Source # 
Instance details

Defined in Language.REST.WQOConstraints.Lazy

Methods

(==) :: LazyOC a -> LazyOC a -> Bool #

(/=) :: LazyOC a -> LazyOC a -> Bool #

Ord a => Ord (LazyOC a) Source # 
Instance details

Defined in Language.REST.WQOConstraints.Lazy

Methods

compare :: LazyOC a -> LazyOC a -> Ordering #

(<) :: LazyOC a -> LazyOC a -> Bool #

(<=) :: LazyOC a -> LazyOC a -> Bool #

(>) :: LazyOC a -> LazyOC a -> Bool #

(>=) :: LazyOC a -> LazyOC a -> Bool #

max :: LazyOC a -> LazyOC a -> LazyOC a #

min :: LazyOC a -> LazyOC a -> LazyOC a #

Hashable a => Hashable (LazyOC a) Source # 
Instance details

Defined in Language.REST.WQOConstraints.Lazy

Methods

hashWithSalt :: Int -> LazyOC a -> Int #

hash :: LazyOC a -> Int #

type Rep (LazyOC a) Source # 
Instance details

Defined in Language.REST.WQOConstraints.Lazy

type Rep (LazyOC a)