module Grid
where
+import Test.QuickCheck (Arbitrary(..), Gen, Positive(..))
+
import Cube (Cube(Cube))
import FunctionValues
import Misc (flatten)
deriving (Eq, Show)
+instance Arbitrary Grid where
+ arbitrary = do
+ (Positive h') <- arbitrary :: Gen (Positive Double)
+ fvs <- arbitrary :: Gen [[[Double]]]
+ return (make_grid h' fvs)
+
+
-- | The constructor that we want people to use. If we're passed a
-- non-positive grid size, we throw an error.
make_grid :: Double -> [[[Double]]] -> Grid