Skip to content

Instantly share code, notes, and snippets.

@brucekirkpatrick
Last active January 2, 2016 01:39
Show Gist options
  • Save brucekirkpatrick/8231961 to your computer and use it in GitHub Desktop.
Save brucekirkpatrick/8231961 to your computer and use it in GitHub Desktop.
Functions passed as values should work like this in all CFML engines.
<cfcomponent output="yes">
<cffunction name="getF" output="no">
<cfreturn function(a){ return a+1;}>
</cffunction>
<cfscript>
function test2(closure1=function(a){ return a+1;}){
return arguments.closure1(4);
}
</cfscript>
<cffunction name="test" access="remote">
<cfargument name="a" type="any" required="no" default="#function(a){ return a+1;}#">
<cfset var b=function(b){ return b+1;}>
<cfscript>
c=function(d){ return d+1;};
writeoutput(arguments.a(0));
writeoutput(b(1));
var a=getF();
writeoutput(test2());
writeoutput(c(4));
// output of FunctionTest.cfc?method=test should be 1234
</cfscript>
<cfabort>
</cffunction>
</cfcomponent>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment