@@ -398,8 +398,7 @@ AST.prototype = {
398
398
399
399
filterChain : function ( ) {
400
400
var left = this . expression ( ) ;
401
- var token ;
402
- while ( ( token = this . expect ( '|' ) ) ) {
401
+ while ( this . expect ( '|' ) ) {
403
402
left = this . filter ( left ) ;
404
403
}
405
404
return left ;
@@ -695,6 +694,7 @@ function isStateless($filter, filterName) {
695
694
function findConstantAndWatchExpressions ( ast , $filter ) {
696
695
var allConstants ;
697
696
var argsToWatch ;
697
+ var isStatelessFilter ;
698
698
switch ( ast . type ) {
699
699
case AST . Program :
700
700
allConstants = true ;
@@ -745,7 +745,8 @@ function findConstantAndWatchExpressions(ast, $filter) {
745
745
ast . toWatch = [ ast ] ;
746
746
break ;
747
747
case AST . CallExpression :
748
- allConstants = ast . filter ? isStateless ( $filter , ast . callee . name ) : false ;
748
+ isStatelessFilter = ast . filter ? isStateless ( $filter , ast . callee . name ) : false ;
749
+ allConstants = isStatelessFilter ;
749
750
argsToWatch = [ ] ;
750
751
forEach ( ast . arguments , function ( expr ) {
751
752
findConstantAndWatchExpressions ( expr , $filter ) ;
@@ -755,7 +756,7 @@ function findConstantAndWatchExpressions(ast, $filter) {
755
756
}
756
757
} ) ;
757
758
ast . constant = allConstants ;
758
- ast . toWatch = ast . filter && isStateless ( $filter , ast . callee . name ) ? argsToWatch : [ ast ] ;
759
+ ast . toWatch = isStatelessFilter ? argsToWatch : [ ast ] ;
759
760
break ;
760
761
case AST . AssignmentExpression :
761
762
findConstantAndWatchExpressions ( ast . left , $filter ) ;
0 commit comments