##// END OF EJS Templates
Reformat all files that woudl lead to less than 4 lines changed.
M Bussonnier -
Show More
@@ -1,21 +1,23 b''
1 1 # -*- coding: utf-8 -*-
2 2 """Being removed
3 3 """
4 4
5
5 6 class LazyEvaluate(object):
6 7 """This is used for formatting strings with values that need to be updated
7 8 at that time, such as the current time or working directory."""
9
8 10 def __init__(self, func, *args, **kwargs):
9 11 self.func = func
10 12 self.args = args
11 13 self.kwargs = kwargs
12 14
13 15 def __call__(self, **kwargs):
14 16 self.kwargs.update(kwargs)
15 17 return self.func(*self.args, **self.kwargs)
16 18
17 19 def __str__(self):
18 20 return str(self())
19
21
20 22 def __format__(self, format_spec):
21 23 return format(self(), format_spec)
@@ -1,4 +1,4 b''
1 1 # coding: iso-8859-5
2 2 # (Unlikely to be the default encoding for most testers.)
3 3 # Π‘Π–ΡŸΡ€ΡΡ‚ΡƒΡ„Ρ…Ρ†Ρ‡ΡˆΡ‰ΡŠΡ‹ΡŒΡΡŽΡ <- Cyrillic characters
4 'ΠŽΡ‚β„–Π€'
4 "ΠŽΡ‚β„–Π€"
@@ -1,11 +1,11 b''
1 1 # encoding: utf-8
2 2 """
3 3 Extra capabilities for IPython
4 4 """
5 5
6 #-----------------------------------------------------------------------------
6 # -----------------------------------------------------------------------------
7 7 # Copyright (C) 2008-2011 The IPython Development Team
8 8 #
9 9 # Distributed under the terms of the BSD License. The full license is in
10 10 # the file COPYING, distributed as part of this software.
11 #-----------------------------------------------------------------------------
11 # -----------------------------------------------------------------------------
@@ -1,10 +1,10 b''
1 1 # encoding: utf-8
2 2 __docformat__ = "restructuredtext en"
3 #-------------------------------------------------------------------------------
3 # -------------------------------------------------------------------------------
4 4 # Copyright (C) 2005 Fernando Perez <fperez@colorado.edu>
5 5 # Brian E Granger <ellisonbg@gmail.com>
6 6 # Benjamin Ragan-Kelley <benjaminrk@gmail.com>
7 7 #
8 8 # Distributed under the terms of the BSD License. The full license is in
9 9 # the file COPYING, distributed as part of this software.
10 #-------------------------------------------------------------------------------
10 # -------------------------------------------------------------------------------
@@ -1,69 +1,71 b''
1 1 """cli-specific implementation of process utilities.
2 2
3 3 cli - Common Language Infrastructure for IronPython. Code
4 4 can run on any operating system. Check os.name for os-
5 5 specific settings.
6 6
7 7 This file is only meant to be imported by process.py, not by end-users.
8 8
9 9 This file is largely untested. To become a full drop-in process
10 10 interface for IronPython will probably require you to help fill
11 11 in the details.
12 12 """
13 13
14 14 # Import cli libraries:
15 15 import clr
16 16 import System
17 17
18 18 # Import Python libraries:
19 19 import os
20 20
21 21 # Import IPython libraries:
22 22 from ._process_common import arg_split
23 23
24 24
25 25 def system(cmd):
26 26 """
27 27 system(cmd) should work in a cli environment on Mac OSX, Linux,
28 28 and Windows
29 29 """
30 30 psi = System.Diagnostics.ProcessStartInfo(cmd)
31 31 psi.RedirectStandardOutput = True
32 32 psi.RedirectStandardError = True
33 33 psi.WindowStyle = System.Diagnostics.ProcessWindowStyle.Normal
34 34 psi.UseShellExecute = False
35 35 # Start up process:
36 36 reg = System.Diagnostics.Process.Start(psi)
37 37
38
38 39 def getoutput(cmd):
39 40 """
40 41 getoutput(cmd) should work in a cli environment on Mac OSX, Linux,
41 42 and Windows
42 43 """
43 44 psi = System.Diagnostics.ProcessStartInfo(cmd)
44 45 psi.RedirectStandardOutput = True
45 46 psi.RedirectStandardError = True
46 47 psi.WindowStyle = System.Diagnostics.ProcessWindowStyle.Normal
47 48 psi.UseShellExecute = False
48 49 # Start up process:
49 50 reg = System.Diagnostics.Process.Start(psi)
50 51 myOutput = reg.StandardOutput
51 52 output = myOutput.ReadToEnd()
52 53 myError = reg.StandardError
53 54 error = myError.ReadToEnd()
54 55 return output
55 56
57
56 58 def check_pid(pid):
57 59 """
58 60 Check if a process with the given PID (pid) exists
59 61 """
60 62 try:
61 63 System.Diagnostics.Process.GetProcessById(pid)
62 64 # process with given pid is running
63 65 return True
64 66 except System.InvalidOperationException:
65 67 # process wasn't started by this object (but is running)
66 68 return True
67 69 except System.ArgumentException:
68 70 # process with given pid isn't running
69 return False
71 return False
@@ -1,84 +1,84 b''
1 1 # encoding: utf-8
2 2 """A fancy version of Python's builtin :func:`dir` function.
3 3 """
4 4
5 5 # Copyright (c) IPython Development Team.
6 6 # Distributed under the terms of the Modified BSD License.
7 7
8 8 import inspect
9 9 import types
10 10
11 11
12 12 def safe_hasattr(obj, attr):
13 13 """In recent versions of Python, hasattr() only catches AttributeError.
14 14 This catches all errors.
15 15 """
16 16 try:
17 17 getattr(obj, attr)
18 18 return True
19 19 except:
20 20 return False
21 21
22 22
23 23 def dir2(obj):
24 24 """dir2(obj) -> list of strings
25 25
26 26 Extended version of the Python builtin dir(), which does a few extra
27 27 checks.
28 28
29 29 This version is guaranteed to return only a list of true strings, whereas
30 30 dir() returns anything that objects inject into themselves, even if they
31 31 are later not really valid for attribute access (many extension libraries
32 32 have such bugs).
33 33 """
34 34
35 35 # Start building the attribute list via dir(), and then complete it
36 36 # with a few extra special-purpose calls.
37 37
38 38 try:
39 39 words = set(dir(obj))
40 40 except Exception:
41 41 # TypeError: dir(obj) does not return a list
42 42 words = set()
43 43
44 if safe_hasattr(obj, '__class__'):
44 if safe_hasattr(obj, "__class__"):
45 45 words |= set(dir(obj.__class__))
46 46
47 47 # filter out non-string attributes which may be stuffed by dir() calls
48 48 # and poor coding in third-party modules
49 49
50 50 words = [w for w in words if isinstance(w, str)]
51 51 return sorted(words)
52 52
53 53
54 54 def get_real_method(obj, name):
55 55 """Like getattr, but with a few extra sanity checks:
56 56
57 57 - If obj is a class, ignore everything except class methods
58 58 - Check if obj is a proxy that claims to have all attributes
59 59 - Catch attribute access failing with any exception
60 60 - Check that the attribute is a callable object
61 61
62 62 Returns the method or None.
63 63 """
64 64 try:
65 canary = getattr(obj, '_ipython_canary_method_should_not_exist_', None)
65 canary = getattr(obj, "_ipython_canary_method_should_not_exist_", None)
66 66 except Exception:
67 67 return None
68 68
69 69 if canary is not None:
70 70 # It claimed to have an attribute it should never have
71 71 return None
72 72
73 73 try:
74 74 m = getattr(obj, name, None)
75 75 except Exception:
76 76 return None
77 77
78 78 if inspect.isclass(obj) and not isinstance(m, types.MethodType):
79 79 return None
80 80
81 81 if callable(m):
82 82 return m
83 83
84 84 return None
General Comments 0
You need to be logged in to leave comments. Login now