diff --git a/src/Direction.elm b/src/Direction.elm index ccbd5de..3e46c92 100644 --- a/src/Direction.elm +++ b/src/Direction.elm @@ -1,4 +1,4 @@ -module Direction exposing (Direction, down, left, move, right, up) +module Direction exposing (Direction, down, left, move, opposite, right, up) type alias Direction = @@ -25,6 +25,11 @@ right = ( 0, 1 ) +opposite : Direction -> Direction +opposite ( row, column ) = + ( -row, -column ) + + move : { row : Int, column : Int } -> Direction -> { row : Int, column : Int } move { row, column } ( adjRow, adjCol ) = { row = row + adjRow