refactor: introduce collective liquid filter declarations

This commit is contained in:
2026-09-14 10:00:34 +08:00
parent 003429f1bc
commit 5f39860576
2 changed files with 38 additions and 0 deletions
+4
View File
@@ -0,0 +1,4 @@
from . import main
if __name__ == '__main__':
main()
+34
View File
@@ -0,0 +1,34 @@
from liquid import Environment
def _is_integer(s: str) -> bool:
try:
int(s)
return True
except (TypeError, ValueError):
return False
def _is_float(s: str) -> bool:
try:
float(s)
return True
except (TypeError, ValueError):
return False
def register_general_filters(env: Environment) -> None:
env.add_filter("to_string", str)
env.add_filter("format", str.format)
env.add_filter("to_integer", int)
env.add_filter("to_float", float)
env.add_filter("is_integer", _is_integer)
env.add_filter("is_float", _is_float)
def _rc_escape(value: str) -> str:
return value.replace("\\", "\\\\").replace('"', '\\"')
def register_rc_specific_filters(env: Environment) -> None:
env.add_filter("rc_escape", _rc_escape)