nl_tokens: Parses abbreviation into tree with respect of groups text nodes and attributes . Each node of the tree is a single abbreviation . Tree represents actual structure of the outputted result @memberOf abbreviationParser @param { String } abbr Abbreviation to parse @param { Object } options Additional options for parser and processors
pl_tokens: function ( abbr , options ) { options = options || { } ; var tree = parseAbbreviation ( abbr ) ; if ( options . contextNode ) { // add info about context node – // a parent XHTML node in editor inside which abbreviation is  // expanded tree . _name = options . contextNode . name ; var attrLookup = { } ; _ . each ( tree . _attributes , function ( attr ) { attrLookup [ attr . name ] = attr ; } ) ; _ . each ( options . contextNode . attributes , function ( attr ) { if ( attr . name in attrLookup ) { attrLookup [ attr . name ] . <mask> = attr . value ; } else { attr = _ . clone ( attr ) ; tree . _attributes . push ( attr ) ; attrLookup [ attr . name ] = attr ; } } ) ; } // apply preprocessors _ . each ( preprocessors , function ( fn ) { fn ( tree , options ) ; } ) ; tree = squash ( unroll ( tree ) ) ; // apply postprocessors _ . each ( postprocessors , function ( fn ) { fn ( tree , options ) ; } ) ; return tree ; }