nl_tokens: Internal function that does a C call using a function not an identifier
pl_tokens: function ccallFunc ( func , returnType , argTypes , args ) { var stack = 0 ; function toC ( value , type ) { if ( type == 'string' ) { if ( value === null || <mask> === undefined || value === 0 ) return 0 ; // null string if ( ! stack ) stack = Runtime . stackSave ( ) ; var ret = Runtime . stackAlloc ( value . length + 1 ) ; writeStringToMemory ( value , ret ) ; return ret ; } else if ( type == 'array' ) { if ( ! stack ) stack = Runtime . stackSave ( ) ; var ret = Runtime . stackAlloc ( value . length ) ; writeArrayToMemory ( value , ret ) ; return ret ; } return value ; } function fromC ( value , type ) { if ( type == 'string' ) { return Pointer_stringify ( value ) ; } assert ( type != 'array' ) ; return value ; } var i = 0 ; var cArgs = args ? args . map ( function ( arg ) { return toC ( arg , argTypes [ i ++ ] ) ; } ) : [ ] ; var ret = fromC ( func . apply ( null , cArgs ) , returnType ) ; if ( stack ) Runtime . stackRestore ( stack ) ; return ret ; }