nl_tokens: For objects inverts the objects keys / values . If the value isn t a number or array it will be omitted . For strings it will reverse the string . For number it will compute the number s inverse ( i . e . 1 / x ) . For functions invert returns a new function that wraps the given function and inverts it s result .
pl_tokens: function invert ( o ) { if ( o === null || o === undefined ) return o ; if ( typeof o === 'string' ) return libs . string . reverse ( o ) ; if ( typeof o === 'number' ) return 1 / o ; if ( typeof o === 'boolean' ) return ! o ; if ( typeof o === 'function' ) { return function ( ) { return libs . object . invert ( o . apply ( o , arguments ) ) ; } ; } var obj = { } ; libs . object . each ( o , function ( item , key ) { if ( typeof item === 'string' || typeof item === 'number' ) { if ( ! obj [ item ] ) { obj [ item ] = key ; } else { var tmp = obj [ item ] ; obj [ item ] = [ ] ; obj [ item ] . <mask> ( tmp , key ) ; } } } ) ; return obj ; }