nl_tokens: Returns a function that directly proxies the given function whilst reporting the given arity .
pl_tokens: function makeFuncWithArity ( fn , arity ) { // Need to handle each arity individually, but the body never changes. switch ( arity ) { <mask> 0 : return function f0 ( ) { var i , l = arguments . length , r = new Array ( l ) ; for ( i = 0 ; i < l ; ++ i ) r [ i ] = arguments [ i ] ; return fn . apply ( this , r ) ; } ; case 1 : return function f1 ( a ) { var i , l = arguments . length , r = new Array ( l ) ; for ( i = 0 ; i < l ; ++ i ) r [ i ] = arguments [ i ] ; return fn . apply ( this , r ) ; } ; case 2 : return function f2 ( a , b ) { var i , l = arguments . length , r = new Array ( l ) ; for ( i = 0 ; i < l ; ++ i ) r [ i ] = arguments [ i ] ; return fn . apply ( this , r ) ; } ; case 3 : return function f3 ( a , b , c ) { var i , l = arguments . length , r = new Array ( l ) ; for ( i = 0 ; i < l ; ++ i ) r [ i ] = arguments [ i ] ; return fn . apply ( this , r ) ; } ; case 4 : return function f4 ( a , b , c , d ) { var i , l = arguments . length , r = new Array ( l ) ; for ( i = 0 ; i < l ; ++ i ) r [ i ] = arguments [ i ] ; return fn . apply ( this , r ) ; } ; case 5 : return function f5 ( a , b , c , d , e ) { var i , l = arguments . length , r = new Array ( l ) ; for ( i = 0 ; i < l ; ++ i ) r [ i ] = arguments [ i ] ; return fn . apply ( this , r ) ; } ; case 6 : return function f6 ( a , b , c , d , e , f ) { var i , l = arguments . length , r = new Array ( l ) ; for ( i = 0 ; i < l ; ++ i ) r [ i ] = arguments [ i ] ; return fn . apply ( this , r ) ; } ; case 7 : return function f7 ( a , b , c , d , e , f , g ) { var i , l = arguments . length , r = new Array ( l ) ; for ( i = 0 ; i < l ; ++ i ) r [ i ] = arguments [ i ] ; return fn . apply ( this , r ) ; } ; case 8 : return function f8 ( a , b , c , d , e , f , g , h ) { var i , l = arguments . length , r = new Array ( l ) ; for ( i = 0 ; i < l ; ++ i ) r [ i ] = arguments [ i ] ; return fn . apply ( this , r ) ; } ; case 9 : return function f9 ( a , b , c , d , e , f , g , h , _i ) { var i , l = arguments . length , r = new Array ( l ) ; for ( i = 0 ; i < l ; ++ i ) r [ i ] = arguments [ i ] ; return fn . apply ( this , r ) ; } ; default : return fn ; // Bail out if arity is crazy high. } }