Module Expr Str ImportFrom alias ClassDef bases NameLoad body Expr Str Assign NameStore Str Assign NameStore TupleLoad Str FunctionDef arguments args NameParam NameParam NameParam defaults body Expr Call AttributeLoad NameLoad attr NameLoad keyword Dict Str NameLoad keyword NameLoad Assign AttributeStore NameLoad attr NameLoad decorator_list FunctionDef arguments args NameParam defaults body Assign AttributeStore NameLoad attr NameLoad decorator_list FunctionDef arguments args NameParam defaults body Return AttributeLoad NameLoad attr decorator_list Assign NameStore Call AttributeLoad NameLoad attr Str FunctionDef arguments args NameParam NameParam defaults body Expr Call AttributeLoad NameLoad attr Call AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr NameLoad Expr Call AttributeLoad NameLoad attr NameLoad Return TupleLoad NameLoad NameLoad NameLoad decorator_list decorator_list ClassDef bases NameLoad body Expr Str Assign NameStore Str Assign NameStore TupleLoad Str FunctionDef arguments args NameParam NameParam NameParam defaults body Expr Call AttributeLoad NameLoad attr NameLoad keyword Dict Str NameLoad keyword NameLoad Assign AttributeStore NameLoad attr NameLoad decorator_list FunctionDef arguments args NameParam defaults body Assign AttributeStore NameLoad attr NameLoad decorator_list FunctionDef arguments args NameParam defaults body Return AttributeLoad NameLoad attr decorator_list Assign NameStore Call AttributeLoad NameLoad attr Str FunctionDef arguments args NameParam NameParam defaults body Expr Call AttributeLoad NameLoad attr Call AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr NameLoad Expr Call AttributeLoad NameLoad attr NameLoad Return TupleLoad NameLoad NameLoad NameLoad decorator_list decorator_list
N/A N/A  Yield node.

The yield node returns to the caller of the generator and therefore may execute
absolutely arbitrary code, from the point of view of this code. It then returns
something, which may often be 'None', but doesn't have to be.

Often it will be used as a statement, which should also be reflected in a
dedicated node.
 NodeBases ExpressionChildrenHavingBase ExpressionYield N/A ExpressionChildrenHavingBase N/A N/A  Yielding an expression.

        Typical code: yield expression

        Can only happen in a generator. Kind of explicitly suspends and
        resumes the execution. The user may inject any kind of exception
        or give any return value. The value of "None" is the most common
        though, esp. if it's not used.

     N/A kind EXPRESSION_YIELD N/A named_children N/A expression __init__ N/A N/A self expression source_ref N/A N/A N/A N/A N/A ExpressionChildrenHavingBase __init__ self values N/A expression expression source_ref source_ref N/A N/A self exception_preserving False N/A markAsExceptionPreserving N/A N/A self N/A N/A N/A N/A self exception_preserving True N/A isExceptionPreserving N/A N/A self N/A N/A N/A N/A self exception_preserving N/A N/A getExpression N/A N/A ExpressionChildrenHavingBase childGetter expression computeExpression N/A N/A self constraint_collection N/A N/A N/A N/A N/A constraint_collection removeKnowledge N/A N/A self getExpression N/A N/A N/A constraint_collection onControlFlowEscape self N/A N/A N/A constraint_collection onExceptionRaiseExit BaseException N/A N/A self None None N/A N/A ExpressionYieldFrom N/A ExpressionChildrenHavingBase N/A N/A  Yielding from an expression.

        Typical code: yield from expression (Python3)

        Can only happen in a generator and only in Python3. Similar to yield,
        but implies a loop and exception propagation to the yield from generator
        if such. Kind of explicitly suspends and resumes the execution. The
        user may inject any kind of exception or give any return value. Having
        a return value is what makes Python3 generators special, and with yield
        from, that value is the expression result.
     N/A kind EXPRESSION_YIELD_FROM N/A named_children N/A expression __init__ N/A N/A self expression source_ref N/A N/A N/A N/A N/A ExpressionChildrenHavingBase __init__ self values N/A expression expression source_ref source_ref N/A N/A self exception_preserving False N/A markAsExceptionPreserving N/A N/A self N/A N/A N/A N/A self exception_preserving True N/A isExceptionPreserving N/A N/A self N/A N/A N/A N/A self exception_preserving N/A N/A getExpression N/A N/A ExpressionChildrenHavingBase childGetter expression computeExpression N/A N/A self constraint_collection N/A N/A N/A N/A N/A constraint_collection removeKnowledge N/A N/A self getExpression N/A N/A N/A constraint_collection onControlFlowEscape self N/A N/A N/A constraint_collection onExceptionRaiseExit BaseException N/A N/A self None None N/A N/A