{-# language OverloadedStrings #-} module FastDownward.SAS.VariableAssignment ( VariableAssignment(..), toSAS ) where import qualified Data.Text.Lazy.Builder import FastDownward.SAS.DomainIndex ( DomainIndex ) import qualified FastDownward.SAS.DomainIndex as DomainIndex import FastDownward.SAS.VariableIndex ( VariableIndex ) import qualified FastDownward.SAS.VariableIndex as VariableIndex data VariableAssignment = VariableAssignment VariableIndex DomainIndex deriving ( VariableAssignment -> VariableAssignment -> Bool (VariableAssignment -> VariableAssignment -> Bool) -> (VariableAssignment -> VariableAssignment -> Bool) -> Eq VariableAssignment forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a /= :: VariableAssignment -> VariableAssignment -> Bool $c/= :: VariableAssignment -> VariableAssignment -> Bool == :: VariableAssignment -> VariableAssignment -> Bool $c== :: VariableAssignment -> VariableAssignment -> Bool Eq, Eq VariableAssignment Eq VariableAssignment -> (VariableAssignment -> VariableAssignment -> Ordering) -> (VariableAssignment -> VariableAssignment -> Bool) -> (VariableAssignment -> VariableAssignment -> Bool) -> (VariableAssignment -> VariableAssignment -> Bool) -> (VariableAssignment -> VariableAssignment -> Bool) -> (VariableAssignment -> VariableAssignment -> VariableAssignment) -> (VariableAssignment -> VariableAssignment -> VariableAssignment) -> Ord VariableAssignment VariableAssignment -> VariableAssignment -> Bool VariableAssignment -> VariableAssignment -> Ordering VariableAssignment -> VariableAssignment -> VariableAssignment forall a. Eq a -> (a -> a -> Ordering) -> (a -> a -> Bool) -> (a -> a -> Bool) -> (a -> a -> Bool) -> (a -> a -> Bool) -> (a -> a -> a) -> (a -> a -> a) -> Ord a min :: VariableAssignment -> VariableAssignment -> VariableAssignment $cmin :: VariableAssignment -> VariableAssignment -> VariableAssignment max :: VariableAssignment -> VariableAssignment -> VariableAssignment $cmax :: VariableAssignment -> VariableAssignment -> VariableAssignment >= :: VariableAssignment -> VariableAssignment -> Bool $c>= :: VariableAssignment -> VariableAssignment -> Bool > :: VariableAssignment -> VariableAssignment -> Bool $c> :: VariableAssignment -> VariableAssignment -> Bool <= :: VariableAssignment -> VariableAssignment -> Bool $c<= :: VariableAssignment -> VariableAssignment -> Bool < :: VariableAssignment -> VariableAssignment -> Bool $c< :: VariableAssignment -> VariableAssignment -> Bool compare :: VariableAssignment -> VariableAssignment -> Ordering $ccompare :: VariableAssignment -> VariableAssignment -> Ordering $cp1Ord :: Eq VariableAssignment Ord, Int -> VariableAssignment -> ShowS [VariableAssignment] -> ShowS VariableAssignment -> String (Int -> VariableAssignment -> ShowS) -> (VariableAssignment -> String) -> ([VariableAssignment] -> ShowS) -> Show VariableAssignment forall a. (Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a showList :: [VariableAssignment] -> ShowS $cshowList :: [VariableAssignment] -> ShowS show :: VariableAssignment -> String $cshow :: VariableAssignment -> String showsPrec :: Int -> VariableAssignment -> ShowS $cshowsPrec :: Int -> VariableAssignment -> ShowS Show ) toSAS :: VariableAssignment -> Data.Text.Lazy.Builder.Builder toSAS :: VariableAssignment -> Builder toSAS ( VariableAssignment VariableIndex x DomainIndex y ) = VariableIndex -> Builder VariableIndex.toSAS VariableIndex x Builder -> Builder -> Builder forall a. Semigroup a => a -> a -> a <> Builder " " Builder -> Builder -> Builder forall a. Semigroup a => a -> a -> a <> DomainIndex -> Builder DomainIndex.toSAS DomainIndex y