[{"name":"CellGrid","comment":" The CellGrid package provides a type for representing\na rectangular grid of cells.  CellGrids can be created,\ntransformed, and rendered as either SVG or HTML.\n\n## Types\n\n@docs CellGrid, CellType, CellRenderer\n\n## Constructing and rendering CellGrids\n\n@docs cellGridFromList, emptyCellGrid, renderAsHtml, renderAsSvg\n\n## Work with cells\n\n@docs mapWithIndex, transform, classifyCell, cellAtMatrixIndex, setValue\n\n","unions":[{"name":"CellGrid","comment":" A value of type `CellGrid a` is a rectangular array\nof values of type a.\n\n","args":["a"],"cases":[["CellGrid",["( Basics.Int, Basics.Int )","Array.Array a"]]]},{"name":"CellType","comment":" A cell can be in the interior of the grid,\non an edge, on in a cornder ","args":[],"cases":[["Corner",[]],["Edge",[]],["Interior",[]]]}],"aliases":[{"name":"CellRenderer","comment":" CellRenderer is a record that provides the information --\ncellSize, defaultColor, and the function cellColorizer --\nthat are needed to render a cell to SVG.\n\n","args":["a"],"type":"{ cellSize : Basics.Float, cellColorizer : a -> CellGrid.ColorValue, defaultColor : CellGrid.ColorValue }"}],"values":[{"name":"cellAtMatrixIndex","comment":" Return the Maybe value of the cell at (i,j) from grid\n\n    > cellAtMatrixIndex (1,1) cg\n    Just 4 : Maybe Float\n\n","type":"( Basics.Int, Basics.Int ) -> CellGrid.CellGrid a -> Maybe.Maybe a"},{"name":"cellGridFromList","comment":" Construct a Maybe CellGrid from a list of  values of type `a`.\nIf the length of the list is incompatible with the\ngiven number of rows and columns `Nothing` is returned.\n\n    > cg = cellGridFromList 2 2 [1.0,2.0,3.0,4.0]\n      Just (CellGrid (2,2) (Array.fromList [1,2,3,4]))\n      : Maybe (CellGrid Float)\n\n    > cellGridFromList 2 2 [1.0,2.0,3.0,4.0, 5.0]\n      Nothing : Maybe (CellGrid Float)\n\n","type":"Basics.Int -> Basics.Int -> List.List a -> Maybe.Maybe (CellGrid.CellGrid a)"},{"name":"classifyCell","comment":" return the type of the cell at location (i,j).  Thus\nclassifyCell grid (0,0) = Corner\n","type":"CellGrid.CellGrid a -> ( Basics.Int, Basics.Int ) -> CellGrid.CellType"},{"name":"emptyCellGrid","comment":"  The empty cell grid. Useful in conjunction with `Maybe.withDefault`\n","type":"CellGrid.CellGrid a"},{"name":"mapWithIndex","comment":" Transform a CellGrid a with a function ((Int, Int) -> a -> a).\nUsed when the transformed value depends on its matrixIndex as well\nas its value\n","type":"(( Basics.Int, Basics.Int ) -> a -> a) -> CellGrid.CellGrid a -> CellGrid.CellGrid a"},{"name":"renderAsHtml","comment":" Render a cell grid as Html\n\n","type":"CellGrid.CellRenderer a -> CellGrid.CellGrid a -> Html.Html msg"},{"name":"renderAsSvg","comment":" Render a cell grid as SVG\n\n","type":"CellGrid.CellRenderer a -> CellGrid.CellGrid a -> Svg.Svg msg"},{"name":"setValue","comment":" Set the value of the cell at location (i,j)\n\n","type":"CellGrid.CellGrid a -> ( Basics.Int, Basics.Int ) -> a -> CellGrid.CellGrid a"},{"name":"transform","comment":" Transform a CellGrid using a function\n\n    (Int, Int) -> CellGrid a -> a)\n\n","type":"(( Basics.Int, Basics.Int ) -> CellGrid.CellGrid a -> a) -> CellGrid.CellGrid a -> CellGrid.CellGrid a"}],"binops":[]}]