# CutBox.app

## Coverage Report

#### Created: 2024-03-12 03:40

    .../Source/Extensions/Int+doTimes.swift

    Line

    Count

    Source

    1

    //

    2

    //  Int+doTimes.swift

    3

    //  CutBox

    4

    //

    5

    //  Created by Jason Milkins on 22/8/23.

    6

    //  Copyright © 2023 ocodo. All rights reserved.

    7

    //

    8

    9

    import Foundation

    10

    11

    extension Int {

    12

        /// Loop equivalent to Ruby's `int.times {|count| code }`

    13

        /// Usage: `doTimes { code with $0 }`

    14

    4

        func doTimes(_ code: (Int) -> Void) {

    15

    4

            guard self > 0 else {

    16

    1

                return

    17

    3

            }

    18

    1.12k

            for count in 0..<self {

    19

    1.12k

                code(count)

    20

    1.12k

            }

    21

    3

        }

    22

    23

        /// Loop equivalent to Ruby's `int.times { code }`

    24

        /// Usage: `doTimes { code }`

    25

    3

        func doTimes(_ code: () -> Void) {

    26

    3

            guard self > 0 else {

    27

    1

                return

    28

    2

            }

    29

    111

            for _ in 0..<self {

    30

    111

                code()

    31

    111

            }

    32

    2

        }

    33

    }