immutable
1.0.0
La bibliothèque peut être installée dans n'importe quelle application PHP :
Composer$ composer require phpfn/ immutable Afin d'accéder à la bibliothèque, assurez-vous d'inclure vendor/autoload.php dans votre fichier.
<?php
require __DIR__ . ' /vendor/autoload.php ' ;Pour garantir l'immunité des objets, il vous suffit d'envelopper n'importe quel code de votre méthode dans une fermeture.
Exemple d'objet mutable :
class Example
{
private int $ value = 42 ;
public function update ( int $ newValue ): self
{
$ this -> value = $ newValue ;
return $ this ;
}
}Le rendre immutable :
class Example
{
private int $ value = 42 ;
// Sample #1 (PHP 7.4+)
public function with ( int $ newValue ): self
{
return immutable ( fn () => $ this -> value = $ newValue );
}
}C'est tout !