LSSTApplications  18.1.0
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