def _infer_stmts(stmts, context, frame=None):
 stmt = None
 infered = False
 if (context is not None):
  name = context.lookupname
  context = context.clone()
 else:
  name = None
  context = InferenceContext()
 for stmt in stmts:
  if (stmt is YES):
   (yield stmt)
   infered = True
   continue
  context.lookupname = stmt._infer_name(frame, name)
  try:
   for infered in stmt.infer(context):
    (yield infered)
    infered = True
  except UnresolvableName:
   continue
  except InferenceError:
   (yield YES)
   infered = True
 if (not infered):
  raise InferenceError(str(stmt))

def _infer_stmts ( stmts , context , frame = None ) : stmt = None infered = False if ( context is not None ) : name = context . lookupname context = context . clone ( ) else : name = None context = InferenceContext ( ) for stmt in stmts : if ( stmt is YES ) : ( yield stmt ) infered = True continue context . lookupname = stmt . _infer_name ( frame , name ) try : for infered in stmt . infer ( context ) : ( yield infered ) infered = True except UnresolvableName : continue except InferenceError : ( yield YES ) infered = True if ( not infered ) : raise InferenceError ( str ( stmt ) )
return an iterator on statements inferred by each statement in <stmts> .