File: utils.py

package info (click to toggle)
prompt-toolkit 1.0.9-1~bpo8%2B1
  • links: PTS, VCS
  • area: main
  • in suites: jessie-backports
  • size: 1,452 kB
  • sloc: python: 15,352; makefile: 3
file content (23 lines) | stat: -rw-r--r-- 497 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
from __future__ import unicode_literals
import time

__all__ = (
    'TimeIt',
)


class TimeIt(object):
    """
    Context manager that times the duration of the code body.
    The `duration` attribute will contain the execution time in seconds.
    """
    def __init__(self):
        self.duration = None

    def __enter__(self):
        self.start = time.time()
        return self

    def __exit__(self, *args):
        self.end = time.time()
        self.duration = self.end - self.start