lib/parser.js
function parseVariable(str, line) {
    var tokens = lexer.read(utils.strip(str)),
      parser,
      out;

    parser = new TokenParser(tokens, filters, escape, line, opts.filename);
    out = parser.parse().join('');

    if (parser.state.length) {
      utils.throwError('Unable to parse "' + str + '"', line, opts.filename);
    }

    /**
     * A parsed variable token.
     * @typedef {object} VarToken
     * @property {function} compile Method for compiling this token.
     */
    return {
      compile: function () {
        return '_output += ' + out + ';\n';
      }
    };
  }
function parseVariable(str, line) {
    var tokens = lexer.read(utils.strip(str)),
      parser,
      out;

    parser = new TokenParser(tokens, filters, escape, line, opts.filename);
    out = parser.parse().join('');

    if (parser.state.length) {
      utils.throwError('Unable to parse "' + str + '"', line, opts.filename);
    }

    /**
     * A parsed variable token.
     * @typedef {object} VarToken
     * @property {function} compile Method for compiling this token.
     */
    return {
      compile: function () {
        return '_output += ' + out + ';\n';
      }
    };
  }
function parseVariable ( str , line ) { var tokens = lexer . read ( utils . strip ( str ) ) , parser , out ; parser = new TokenParser ( tokens , filters , escape , line , opts . filename ) ; out = parser . parse ( ) . join ( '' ) ; if ( parser . state . length ) { utils . throwError ( 'Unable to parse "' + str + '"' , line , opts . filename ) ; } /**
     * A parsed variable token.
     * @typedef {object} VarToken
     * @property {function} compile Method for compiling this token.
     */ return { compile : function ( ) { return '_output += ' + out + ';\n' ; } } ; }
Parse a variable.
@param  {string} str  String contents of the variable, between <i>{{</i> and <i>}}</i>
@param  {number} line The line number that this variable starts on.
@return {VarToken}      Parsed variable token object.
@private
Parse a variable .