LSSTApplications  17.0+11,17.0+34,17.0+56,17.0+57,17.0+59,17.0+7,17.0-1-g377950a+33,17.0.1-1-g114240f+2,17.0.1-1-g4d4fbc4+28,17.0.1-1-g55520dc+49,17.0.1-1-g5f4ed7e+52,17.0.1-1-g6dd7d69+17,17.0.1-1-g8de6c91+11,17.0.1-1-gb9095d2+7,17.0.1-1-ge9fec5e+5,17.0.1-1-gf4e0155+55,17.0.1-1-gfc65f5f+50,17.0.1-1-gfc6fb1f+20,17.0.1-10-g87f9f3f+1,17.0.1-11-ge9de802+16,17.0.1-16-ga14f7d5c+4,17.0.1-17-gc79d625+1,17.0.1-17-gdae4c4a+8,17.0.1-2-g26618f5+29,17.0.1-2-g54f2ebc+9,17.0.1-2-gf403422+1,17.0.1-20-g2ca2f74+6,17.0.1-23-gf3eadeb7+1,17.0.1-3-g7e86b59+39,17.0.1-3-gb5ca14a,17.0.1-3-gd08d533+40,17.0.1-30-g596af8797,17.0.1-4-g59d126d+4,17.0.1-4-gc69c472+5,17.0.1-6-g5afd9b9+4,17.0.1-7-g35889ee+1,17.0.1-7-gc7c8782+18,17.0.1-9-gc4bbfb2+3,w.2019.22
LSSTDataManagementBasePackage
Classes | Functions
lsst.pex.config.callStack Namespace Reference

Classes

class  StackFrame
 

Functions

def getCallerFrame (relative=0)
 
def getStackFrame (relative=0)
 
def getCallStack (skip=0)
 

Function Documentation

◆ getCallerFrame()

def lsst.pex.config.callStack.getCallerFrame (   relative = 0)
Get the frame for the user's caller.

Parameters
----------
relative : `int`, optional
    Number of frames (0 or more) above the caller to retrieve. Default is 0.

Returns
-------
frame : `__builtin__.Frame`
    Frame for the caller.

Notes
-----
This function is excluded from the frame.

Definition at line 29 of file callStack.py.

29 def getCallerFrame(relative=0):
30  """Get the frame for the user's caller.
31 
32  Parameters
33  ----------
34  relative : `int`, optional
35  Number of frames (0 or more) above the caller to retrieve. Default is 0.
36 
37  Returns
38  -------
39  frame : `__builtin__.Frame`
40  Frame for the caller.
41 
42  Notes
43  -----
44  This function is excluded from the frame.
45  """
46  frame = inspect.currentframe().f_back.f_back # Our caller's caller
47  for ii in range(relative):
48  frame = frame.f_back
49  return frame
50 
51 
def getCallerFrame(relative=0)
Definition: callStack.py:29

◆ getCallStack()

def lsst.pex.config.callStack.getCallStack (   skip = 0)
Retrieve the call stack for the caller.

Parameters
----------
skip : `int`, non-negative
    Number of stack frames above caller to skip.

Returns
-------
output : `list` of `StackFrame`
    The call stack. The `list` is ordered with the most recent frame to
    last.

Notes
-----
This function is excluded from the call stack.

Definition at line 169 of file callStack.py.

169 def getCallStack(skip=0):
170  """Retrieve the call stack for the caller.
171 
172  Parameters
173  ----------
174  skip : `int`, non-negative
175  Number of stack frames above caller to skip.
176 
177  Returns
178  -------
179  output : `list` of `StackFrame`
180  The call stack. The `list` is ordered with the most recent frame to
181  last.
182 
183  Notes
184  -----
185  This function is excluded from the call stack.
186  """
187  frame = getCallerFrame(skip + 1)
188  stack = []
189  while frame:
190  stack.append(StackFrame.fromFrame(frame))
191  frame = frame.f_back
192  return list(reversed(stack))
193 
def getCallStack(skip=0)
Definition: callStack.py:169
def getCallerFrame(relative=0)
Definition: callStack.py:29
daf::base::PropertyList * list
Definition: fits.cc:885

◆ getStackFrame()

def lsst.pex.config.callStack.getStackFrame (   relative = 0)
Get the `StackFrame` for the user's caller.

Parameters
----------
relative : `int`, optional
    Number of frames (0 or more) above the caller to retrieve.

Returns
-------
frame : `StackFrame`
    Stack frame for the caller.

Definition at line 52 of file callStack.py.

52 def getStackFrame(relative=0):
53  """Get the `StackFrame` for the user's caller.
54 
55  Parameters
56  ----------
57  relative : `int`, optional
58  Number of frames (0 or more) above the caller to retrieve.
59 
60  Returns
61  -------
62  frame : `StackFrame`
63  Stack frame for the caller.
64  """
65  frame = getCallerFrame(relative + 1)
66  return StackFrame.fromFrame(frame)
67 
68 
def getStackFrame(relative=0)
Definition: callStack.py:52
def getCallerFrame(relative=0)
Definition: callStack.py:29