Bonjour, dans le cadre de l’implémentation de Dunixir (protocoles Duniter en Elixir), j’aimerais avoir quelques précisions sur les règles de validation pour les champs:
Est-ce que ce sont bien des comparaisons ?
Number = HEAD.number
Car le signe égal est utilisé une fois, et correspond à une assignation ailleurs dans la RFC, comme dans BR_G01 par exemple:
HEAD.number = HEAD~1.number + 1
Ensuite, en supposant que ce sont des comparaisons, à quoi fait référence le membre de gauche dans ces expressions ?
Si j’ai bien compris la logique, cela correspond à la valeur du champ dans le bloc à valider ?
Pour résumer l’enchaînement pour ces champs:
- HEAD dans le BINDEX n’est pas initialisé avec la valeur présente dans le bloc mais avec la valeur null
- HEAD est mis à jour par récurrence sur l’entrée HEAD~1 du BINDEX (number BR_G01, previousHash BR_G02, previousIssuer BR_G03, currency BR_G99)
- on compare ensuite les valeurs du HEAD avec le bloc lui-même (Number BR_G51, PreviousHash BR_G52, PreviousIssuer BR_G53, Currency BR_G98)
Est-ce bien cela ?
@HugoTrentesaux nous a informé que l’un de vous saurait probablement répondre
@cgeek @elois @gerard94 @tuxmain @matograine
Merci d’avance