nl_tokens: Evaluates a function on the given page .
pl_tokens: function evaluatePage ( page , fn ) { var args = Array . prototype . slice . call ( arguments , 2 ) ; return this . ready . then ( function ( ) { var stack ; page = page || this . page ; var res = HorsemanPromise . fromCallback ( function ( done ) { // Wrap fn to be able to catch exceptions and reject Promise stack = HorsemanPromise . reject ( new Error ( 'See next line' ) ) ; return page . evaluate ( function evaluatePage ( fnstr , args ) { try { var fn ; eval ( 'fn = ' + fnstr ) ; var res = fn . apply ( this , args ) ; // Call fn with args return { res : res } ; } catch ( <mask> ) { return { err : err , iserr : err instanceof Error } ; } } , fn . toString ( ) , args , done ) ; } ) . then ( function handleErrback ( args ) { return stack . catch ( function ( err ) { if ( args . err ) { if ( args . iserr ) { var stack = err . stack . split ( '\n' ) . slice ( 1 ) ; // Append Node stack to Phantom stack args . err . stack += '\n' + stack . join ( '\n' ) ; } return HorsemanPromise . reject ( args . err ) ; } return args . res ; } ) ; } ) ; stack . catch ( function ( ) { } ) ; return res ; } ) ; }