diff options
| author | Peter Bacon Darwin | 2013-10-05 11:13:24 +0100 | 
|---|---|---|
| committer | Pete Bacon Darwin | 2013-10-07 14:31:14 +0100 | 
| commit | 281feba4caffd14ffbd6dedfb95ad6415cff8483 (patch) | |
| tree | 3d69adcddc341d3daa59c16aa98c5c5f4a312e48 | |
| parent | 805efb4c47f457004a5b35f532712b9b62105a99 (diff) | |
| download | angular.js-281feba4caffd14ffbd6dedfb95ad6415cff8483.tar.bz2 | |
refactor($parse): only instantiate lex/parse once
Closes #4286
| -rw-r--r-- | src/ng/parse.js | 5 | 
1 files changed, 3 insertions, 2 deletions
| diff --git a/src/ng/parse.js b/src/ng/parse.js index ae22f0e8..4a1921fc 100644 --- a/src/ng/parse.js +++ b/src/ng/parse.js @@ -1034,14 +1034,15 @@ function $ParseProvider() {    var cache = {};    this.$get = ['$filter', '$sniffer', function($filter, $sniffer) {      return function(exp) { +      var lexer = new Lexer($sniffer.csp); +      var parser = new Parser(lexer, $filter, $sniffer.csp); +        switch (typeof exp) {          case 'string':            if (cache.hasOwnProperty(exp)) {              return cache[exp];            } -          var lexer = new Lexer($sniffer.csp); -          var parser = new Parser(lexer, $filter, $sniffer.csp);            return cache[exp] = parser.parse(exp, false);          case 'function': | 
