def get_timer(frames_no):
    """Return a frame-based timer callable.

    That is, the callable returns True a pre-defined
    number of times, then turns False and restarts
    the cycle again.

    Parameters
    ==========
    frames_no (positive integer)
        considering the timer is called once per frame,
        this number represents how many frames or how
        many times True will be returned by calling the
        timer created until it returns False.
    """
    ### create and return timer callable;
    ###
    ### this is actually an instance of the
    ### itertools.cycle().__next__ method

    return cycle((True,) * frames_no + (False,)).__next__
Return a frame-based timer callable.

    That is, the callable returns True a pre-defined
    number of times, then turns False and restarts
    the cycle again.

    Parameters
    ==========
    frames_no (positive integer)
        considering the timer is called once per frame,
        this number represents how many frames or how
        many times True will be returned by calling the
        timer created until it returns False.
    
nodezator/splashscreen/animsetup.py