Skip to content

Commit 8e67468

Browse files
committed
feat(filters): revert filter being restricted to top level
See: 5bcea64 Closes dart-archive#758
1 parent d9fc724 commit 8e67468

File tree

2 files changed

+7
-1
lines changed

2 files changed

+7
-1
lines changed

lib/core/parser/dynamic_parser_impl.dart

+1-1
Original file line numberDiff line numberDiff line change
@@ -210,7 +210,7 @@ class DynamicParserImpl {
210210

211211
parsePrimary() {
212212
if (optionalCharacter($LPAREN)) {
213-
var result = parseExpression();
213+
var result = parseFilter();
214214
expectCharacter($RPAREN);
215215
return result;
216216
} else if (peek.isKeywordNull || peek.isKeywordUndefined) {

test/core/parser/parser_spec.dart

+6
Original file line numberDiff line numberDiff line change
@@ -987,6 +987,12 @@ main() {
987987
expect(eval("1|increment:2", filters)).toEqual(3);
988988
});
989989

990+
it('should evaluate grouped filters', () {
991+
context = {'name': 'MISKO'};
992+
expect(eval('n = (name|lowercase)', filters)).toEqual('misko');
993+
expect(eval('n')).toEqual('misko');
994+
});
995+
990996
it('should parse filters', () {
991997
expect(() {
992998
eval("1|nonexistent");

0 commit comments

Comments
 (0)