Hide keyboard shortcuts

Hot-keys on this page

r m x p   toggle line displays

j k   next/prev highlighted chunk

0   (zero) top of page

1   (one) first highlighted chunk

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

# -*- coding: utf-8 -*- 

# 

# Licensed under the Apache License, Version 2.0 (the "License"); 

# you may not use this file except in compliance with the License. 

# You may obtain a copy of the License at 

# 

# http://www.apache.org/licenses/LICENSE-2.0 

# 

# Unless required by applicable law or agreed to in writing, software 

# distributed under the License is distributed on an "AS IS" BASIS, 

# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 

# See the License for the specific language governing permissions and 

# limitations under the License. 

# 

from __future__ import absolute_import 

from __future__ import unicode_literals 

 

import errno 

import shutil 

from tempfile import mkdtemp 

 

from contextlib import contextmanager 

 

 

@contextmanager 

def TemporaryDirectory(suffix='', prefix=None, dir=None): 

name = mkdtemp(suffix=suffix, prefix=prefix, dir=dir) 

try: 

yield name 

finally: 

try: 

shutil.rmtree(name) 

except OSError as e: 

# ENOENT - no such file or directory 

if e.errno != errno.ENOENT: 

raise e