A data flow node that represents the value yielded by a callable with a
contextlib.contextmanager
decorator. We treat this as a normal return, which makes
things just work when used in a with
statement – technically calling the function
directly will give you a contextlib._GeneratorContextManager
instance, so it’s a
slight workaround solution.
See https://docs.python.org/3/library/contextlib.html#contextlib.contextmanager
Import path
import semmle.python.dataflow.new.internal.DataFlowDispatch
Direct supertypes
Predicates
getKind | Gets the kind of this return node. |
Inherited predicates
asCfgNode | Gets the control-flow node corresponding to this node, if any. | from CfgNode |
asExpr | Gets the expression corresponding to this node, if any. | from Node |
getALocalSource | Gets a local source node from which data may flow to this node in zero or more local data-flow steps. | from Node |
getEnclosingCallable | Gets the enclosing callable of this node. | from Node |
getLocation | Gets the location of this node | from CfgNode |
getNode | Gets the | from CfgNode |
getScope | Gets the scope of this node. | from CfgNode |
hasLocationInfo | Holds if this element is at the specified location. The location spans column | from Node |
toString | Gets a textual representation of this element. | from CfgNode |