phino-0.0.152: test-resources/cli/rules/first.yaml
# SPDX-FileCopyrightText: Copyright (c) 2025 Objectionary.com
# SPDX-License-Identifier: MIT
---
# This test rule is used with second.yaml test rule for testing that rewriting
# fails if rules lead to repeating expressions across several iterations.
# Here on the first cycle we rewrite formation with "0" to application with "1"
# In second.yaml this application is rewritten formation with "1"
# Then on the second cycle the formation with "1" is rewritten to application
# with "0", nhen in the second.yaml the application is rewritten to formation
# with "0". Here we get back to expression we started from and rewriting should
# fail on this step.
name: first
pattern: ⟦ x -> !e2 ⟧
result: Q.x(y -> !e1)
where:
- meta: '!e1'
function: sed
args:
- '!e2'
- '"s/0/2/g"'
- '"s/1/0/g"'
- '"s/2/1/g"'