<?php namespace nur\sery\wip\php\access; /** * Interface IAccess: abstraction d'un accès complet à une valeur */ interface IAccess extends IGetter, ISetter, IDeleter { /** incrémenter la valeur */ function inc(): int; /** décrémenter la valeur */ function dec(bool $allowNegative=false): int; /** * fusionner le tableau $values dans la destination, qui est transformée en * tableau d'abord si nécessaire */ function merge(?array $values): void; /** * ajouter la valeur à la destination, qui est transformée en tableau d'abord * si nécessaire * * la valeur est ajoutée avec la clé $key le cas échéant, ou à la fin du * tableau si $key===null */ function append($value, $key=null): void; }