Sha256: b9b75da611f281c4e7ca3e2c23ed85b3fc2d4f59659d56b90c25d5c5dd894367

Contents?: true

Size: 557 Bytes

Versions: 284

Compression:

Stored size: 557 Bytes

Contents

module Allergies exposing (..)

import List
import Bitwise


isAllergicTo : String -> Int -> Bool
isAllergicTo name score =
    List.member name (toList score)


toList : Int -> List String
toList score =
    allergies
        |> List.indexedMap (\i n -> ( Bitwise.shiftLeftBy i 1, n ))
        |> List.filter (\( s, n ) -> Bitwise.and s score > 0)
        |> List.map Tuple.second


allergies : List String
allergies =
    [ "eggs"
    , "peanuts"
    , "shellfish"
    , "strawberries"
    , "tomatoes"
    , "chocolate"
    , "pollen"
    , "cats"
    ]

Version data entries

284 entries across 284 versions & 1 rubygems

Version Path
trackler-2.2.1.104 tracks/elm/exercises/allergies/Allergies.example.elm
trackler-2.2.1.103 tracks/elm/exercises/allergies/Allergies.example.elm
trackler-2.2.1.102 tracks/elm/exercises/allergies/Allergies.example.elm
trackler-2.2.1.101 tracks/elm/exercises/allergies/Allergies.example.elm
trackler-2.2.1.100 tracks/elm/exercises/allergies/Allergies.example.elm
trackler-2.2.1.99 tracks/elm/exercises/allergies/Allergies.example.elm
trackler-2.2.1.98 tracks/elm/exercises/allergies/Allergies.example.elm
trackler-2.2.1.97 tracks/elm/exercises/allergies/Allergies.example.elm
trackler-2.2.1.96 tracks/elm/exercises/allergies/Allergies.example.elm
trackler-2.2.1.95 tracks/elm/exercises/allergies/Allergies.example.elm
trackler-2.2.1.94 tracks/elm/exercises/allergies/Allergies.example.elm
trackler-2.2.1.93 tracks/elm/exercises/allergies/Allergies.example.elm
trackler-2.2.1.92 tracks/elm/exercises/allergies/Allergies.example.elm
trackler-2.2.1.91 tracks/elm/exercises/allergies/Allergies.example.elm
trackler-2.2.1.90 tracks/elm/exercises/allergies/Allergies.example.elm
trackler-2.2.1.89 tracks/elm/exercises/allergies/Allergies.example.elm
trackler-2.2.1.88 tracks/elm/exercises/allergies/Allergies.example.elm
trackler-2.2.1.87 tracks/elm/exercises/allergies/Allergies.example.elm
trackler-2.2.1.86 tracks/elm/exercises/allergies/Allergies.example.elm
trackler-2.2.1.85 tracks/elm/exercises/allergies/Allergies.example.elm