Sha256: 75ec5872cc097078ea1d9dfab9d6b84833f559c791c449fb13130889d0d8f819

Contents?: true

Size: 445 Bytes

Versions: 396

Compression:

Stored size: 445 Bytes

Contents

enum Allergen: UInt {
    case eggs = 1
    case peanuts = 2
    case shellfish = 4
    case strawberries = 8
    case tomatoes = 16
    case chocolate = 32
    case pollen = 64
    case cats = 128
}

struct Allergies {

    let score: UInt

    init(_ score: UInt) {
        self.score = UInt(score)
    }

    func hasAllergy(_ allergen: Allergen) -> Bool {
        return allergen.rawValue & score == allergen.rawValue ? true : false
    }
}

Version data entries

396 entries across 396 versions & 1 rubygems

Version Path
trackler-2.0.0.5 tracks/swift/exercises/allergies/AllergiesExample.swift
trackler-2.0.0.4 tracks/swift/exercises/allergies/AllergiesExample.swift
trackler-2.0.0.3 tracks/swift/exercises/allergies/AllergiesExample.swift
trackler-2.0.0.2 tracks/swift/exercises/allergies/AllergiesExample.swift
trackler-2.0.0.1 tracks/swift/exercises/allergies/AllergiesExample.swift
trackler-2.0.0.0 tracks/swift/exercises/allergies/AllergiesExample.swift
trackler-1.0.4.1 tracks/swift/exercises/allergies/AllergiesExample.swift
trackler-1.0.4.0 tracks/swift/exercises/allergies/AllergiesExample.swift
trackler-1.0.3.0 tracks/swift/exercises/allergies/AllergiesExample.swift
trackler-1.0.2.1 tracks/swift/exercises/allergies/AllergiesExample.swift
trackler-1.0.2.0 tracks/swift/exercises/allergies/AllergiesExample.swift
trackler-1.0.1.2 tracks/swift/exercises/allergies/AllergiesExample.swift
trackler-1.0.1.1 tracks/swift/exercises/allergies/AllergiesExample.swift
trackler-1.0.1.0 tracks/swift/exercises/allergies/AllergiesExample.swift
trackler-1.0.0.1 tracks/swift/exercises/allergies/AllergiesExample.swift
trackler-1.0.0 tracks/swift/exercises/allergies/AllergiesExample.swift