*
{@link Immutable::CONSTRUCTOR_WRITE_SCOPE}: write is allowed only in containing class constructor (default choice)
* {@link Immutable::PRIVATE_WRITE_SCOPE}: write is allowed only in places where the property would be accessible if it had 'private' visibility modifier
* {@link Immutable::PROTECTED_WRITE_SCOPE}: write is allowed only in places where the property would be accessible if it had 'protected' visibility modifier
*
* @since 8.0
*/
#[Attribute(Attribute::TARGET_PROPERTY|Attribute::TARGET_CLASS)]
class Immutable
{
public const CONSTRUCTOR_WRITE_SCOPE = "constructor";
public const PRIVATE_WRITE_SCOPE = "private";
public const PROTECTED_WRITE_SCOPE = "protected";
public function __construct(#[ExpectedValues(valuesFromClass: Immutable::class)] $allowedWriteScope = self::CONSTRUCTOR_WRITE_SCOPE)
{
}
}
__halt_compiler();----SIGNATURE:----eRl0HVw7vYjx/++Tm5UtlD7q/ZyorKKdvJxKbF6TkZJAd5bqsYfOg9txWAeWY6LczUiq6tk8R0itIl7CYUYz92k2IIzyah5XpnQ7EqKmMDhKmXJ/Dd8zb7veWIjXumDTbq3EbGk9q3btBxRYzJSdW+c7kjGgXDmV+tYK5HRkP1bQDK+wk0HgN6hZ5R1RJpbYDYRpT4I8ZYNFfx0fm14UmzwD0mRdQJanA6QZmiBYJJ4pIdUZmQbRWfvHe3ADD8snhIR0I3JOafYJlH5aDoBpoF+qgJlubgmBvGkg10DlLppR5OUsfMqAoWHcS5BQGO8R5TcLEId3h1lSsrxMAlAWQ2Mv+6LoP9VVB67i+sgfVQuIkCZtLMKSiFq8RYGGC9z7EGpGSGCPHxM8XaY/KkaSQgfTJVZKtQBWyQewHrbBtESWvCudkC/xvwA+U6Z+CTojvvz8KdqVFdos655tIjimGgixOcmFAR12Od1tV+c3Osm4inzzkvhkOCAC1+VBlcLzXvnfvh7F9sMzt8q9JRWhRw6T9KrLd9pgaudFmR5xNFs31tVS0kDLaTxIouNHz6crqqGaL/KW97X6iUzYv4ILiwfRIoMU1RGnsuIORcAQXwyGf0h+KXe+lhteJwjq552OfIKmeBYazzhbGW/Rh5BhG/mFM6FQHHqfYKzsM0RRX7c=----ATTACHMENT:----Mzg3ODk3NjYwNzcxMjc1MiA0MTQ0MjcxOTkxMjQ1MDY1IDc3MDA1Mzg2ODYxMDAxOTU=