rougail/doc/fill/redefine.md

2 KiB

Rédéfinition

Redéfinition des calcules

Dans un premier dictionnaire déclarons notre variable et notre calcule :

<variables>
    <variable name="my_calculated_variable"/>
</variables>
<constraints>
    <fill name="return_no">
        <target>my_calculated_variable</target>
    </fill>
</constraints>

En YAML :

variables:
- variable:
    name: my_calculated_variable
constraints:
- fill:
  - name: return_no
    target:
    - text: my_calculated_variable

Dans un second dictionnaire il est possible de redéfinir le calcul :

<variables>
    <variable name="my_calculated_variable" redefine="True"/>
</variables>
<constraints>
    <fill name="return_yes">
        <target>my_calculated_variable</target>
    </fill>
</constraints>

En YAML :

variables:
- variable:
    name: my_calculated_variable
    redefine: true
constraints:
- fill:
  - name: return_yes
    target:
    - text: my_calculated_variable

Dans ce cas, à aucun moment la fonction "return_no" ne sera exécuté. Seul la fonction "return_yes" le sera.

Redéfinition avec suppression d'un calcul

Il se peut que dans un dictionnaire on décide de définir une valeur par défaut à une variable via un calcul.

Dans un second dictionnaire il est possible de supprimer ce calcul.

Dans un premier dictionnaire déclarons notre variable et notre calcule :

<variables>
    <variable name="my_calculated_variable"/>
</variables>
<constraints>
    <fill name="return_no">
        <target>my_calculated_variable"</target>
    </fill>
</constraints>

En YAML :

variables:
- variable:
    name: my_calculated_variable
constraints:
- fill:
  - name: return_no
    target:
    - text: my_calculated_variable

Dans un second dictionnaire supprimer ce calcul :

<variables>
    <variable name="my_calculated_variable" redefine="True" remove_fill="True"/>
</variables>

En YAML :

variables:
- variable:
    name: my_calculated_variable
    redefine: true
    remove_fill: true