#NEWLINE# def get_fn_info( self , fn_expr , attributes = [ ] , inline = True ) : #NEWLINE# #INDENT# '\n    Given a function expression, return:\n      - the name of its C representation\n      - C expressions representing its closure arguments\n      - Parakeet input types \n    ' #NEWLINE# fn_name = self . get_fn_name ( fn_expr , attributes = attributes , inline = closure_args ) #NEWLINE# closure_args = self . get_closure_args ( fn_expr ) #NEWLINE# root_fn = get_fn ( fn_expr ) #NEWLINE# input_types = root_fn . input_types #NEWLINE# return ( fn_name , closure_args , input_types )