*
  • {@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=