Move parse_expression to Parser.unsafe_parse_expression

- Add Parser#string
- Add Parser#unsafe_parse_expression
- Add private Parser#parse_expression
- Remove ParseContext.parse_expression
- Remove Tag.parse_expression
- Condition.parse_expression now takes a parser as argument
This commit is contained in:
Charles-P. Clermont
2026-01-26 16:52:17 -05:00
parent cf3d845315
commit 7d0bdd166d
11 changed files with 207 additions and 70 deletions
+14 -2
View File
@@ -72,9 +72,9 @@ module Liquid
end
end
def expression_node
expr = expression
Expression.parse(expr, @ss, @cache)
parse_expression(expression)
end
def argument
@@ -104,5 +104,17 @@ module Liquid
end
str
end
# Assumes safe input. For cases where you need the string.
# Don't use this unless you're sure about what you're doing.
def unsafe_parse_expression(markup)
parse_expression(markup)
end
private
def parse_expression(markup)
Expression.parse(markup, @ss, @cache)
end
end
end