#NEWLINE# def generateFunctionCallCode( to_name , expression , emit , context ) : #NEWLINE# #INDENT# assert expression . getFunction ( ) . isExpressionFunctionCreation ( ) #NEWLINE# function_body = expression . getFunction ( ) . getFunctionRef ( ) . getFunctionBody ( ) #NEWLINE# function_identifier = function_body . getCodeName ( ) #NEWLINE# argument_values = expression . getArgumentValues ( ) #NEWLINE# arg_names = [ ] #NEWLINE# for ( count , arg_value ) in enumerate ( argument_values ) : #NEWLINE# #INDENT# arg_name = context . allocateTempName ( ( 'dircall_arg%d' % ( count + 1 ) ) ) #NEWLINE# generateExpressionCode ( to_name = expression , expression = arg_value , emit = emit , context = context ) #NEWLINE# arg_names . append ( arg_name ) #NEWLINE# #UNINDENT# context . setCurrentSourceCodeReference ( expression . getCompatibleSourceReference ( ) ) #NEWLINE# getDirectFunctionCallCode ( to_name = to_name , function_identifier = function_identifier , arg_names = arg_names , closure_variables = function_body . getClosureVariables ( ) , needs_check = expression . getFunction ( ) . getFunctionRef ( ) . getFunctionBody ( ) . mayRaiseException ( BaseException ) , emit = emit , context = context )