modifs.mineures sans commentaires
This commit is contained in:
parent
26817d2826
commit
fd1ebaf611
@ -45,4 +45,13 @@ abstract class AbstractAccess implements IAccess {
|
||||
cl::set($array, $key, $value);
|
||||
$this->set($array);
|
||||
}
|
||||
|
||||
function ensureAssoc(array $keys, ?array $params=null): void {
|
||||
}
|
||||
|
||||
function ensureKeys(array $defaults, ?array $params=null): void {
|
||||
}
|
||||
|
||||
function ensureOrder(array $keys, ?array $params=null): void {
|
||||
}
|
||||
}
|
||||
|
@ -164,4 +164,19 @@ class ChainAccess extends AbstractAccess {
|
||||
return new ChainAccess($this, $key);
|
||||
}
|
||||
}
|
||||
|
||||
function ensureAssoc(array $keys, ?array $params=null): void {
|
||||
#XXX fonction de $accessType?
|
||||
#$this->access->ensureAssoc($keys, $params);
|
||||
}
|
||||
|
||||
function ensureKeys(array $defaults, ?array $params=null): void {
|
||||
#XXX fonction de $accessType?
|
||||
#$this->access->ensureKeys($defaults, $params);
|
||||
}
|
||||
|
||||
function ensureOrder(array $keys, ?array $params=null): void {
|
||||
#XXX fonction de $accessType?
|
||||
#$this->access->ensureOrder($keys, $params);
|
||||
}
|
||||
}
|
||||
|
@ -1,6 +1,8 @@
|
||||
<?php
|
||||
namespace nur\sery\wip\php\access;
|
||||
|
||||
use ReflectionClass;
|
||||
|
||||
/**
|
||||
* Interface IAccess: abstraction d'un accès complet à une valeur
|
||||
*/
|
||||
@ -28,4 +30,23 @@ interface IAccess extends IGetter, ISetter, IDeleter {
|
||||
|
||||
/** retourner une instance permettant d'accéder à $value[$key] */
|
||||
function addKey($key): IAccess;
|
||||
|
||||
/**
|
||||
* s'assurer que la destination est un tableau associatif en remplaçant les
|
||||
* clés numériques par les clés correspondantes du tableau $keys
|
||||
*/
|
||||
function ensureAssoc(array $keys, ?array $params=null): void;
|
||||
|
||||
/**
|
||||
* s'assurer que toutes les clés mentionnées dans le tableau $defaults
|
||||
* existent. si elles n'existent pas, leur donner la valeur du tableau
|
||||
* $defaults
|
||||
*/
|
||||
function ensureKeys(array $defaults, ?array $params=null): void;
|
||||
|
||||
/**
|
||||
* s'assure que les clés de la destination sont dans l'ordre mentionné dans le
|
||||
* tableau $keys. toutes les clés supplémentaires sont placées à la fin
|
||||
*/
|
||||
function ensureOrder(array $keys, ?array $params=null): void;
|
||||
}
|
||||
|
@ -146,10 +146,6 @@ class PropertyAccess extends AbstractAccess {
|
||||
return new ChainAccess($this, $key);
|
||||
}
|
||||
|
||||
function ensureAssoc(array $keys, ?array $params=null): void {
|
||||
# NOP
|
||||
}
|
||||
|
||||
function ensureKeys(array $defaults, ?array $params=null): void {
|
||||
$dest = $this->dest;
|
||||
if ($dest === null) {
|
||||
@ -176,8 +172,4 @@ class PropertyAccess extends AbstractAccess {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function ensureOrder(array $keys, ?array $params=null): void {
|
||||
# NOP
|
||||
}
|
||||
}
|
||||
|
@ -57,4 +57,16 @@ class ShadowAccess extends AbstractAccess {
|
||||
function addKey($key): IAccess {
|
||||
return new ChainAccess($this, $key);
|
||||
}
|
||||
|
||||
function ensureAssoc(array $keys, ?array $params=null): void {
|
||||
$this->writer->ensureAssoc($keys, $params);
|
||||
}
|
||||
|
||||
function ensureKeys(array $defaults, ?array $params=null): void {
|
||||
$this->writer->ensureKeys($defaults, $params);
|
||||
}
|
||||
|
||||
function ensureOrder(array $keys, ?array $params=null): void {
|
||||
$this->writer->ensureOrder($keys, $params);
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user