*
  • {@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:----t05stJc/bquropfd00bIIgmF8Dl4IErrBbe6gTiiJogdeQDduKllbUP9cVx6b76MGY9V+GmbyX/ihcS45gOG+jeo5N4KNlRXhKTHrMq8khR7G7KzlwCusvTvT9VdsQqiraaf8raXGNbOczS3MV4sUaoa+5M5sDkuhS03SFcCgA9skSyTh043c9FENNc51mnTPgU+Ghqqwr40s5O/vvSFb4c3F9uiUg+8/FH6JRsFVLcR3T+k00sqzww3MZPP2yCyGbewM0RYr5CgQ/1jznVf6Q/LKr1/J+iii+ZNLxIxl3G/0O2jsPtPIM4J8xDhsyMxjskulJiND4oQyvwILYadz0kwXTIuQQwxpW8NRBJ0+/N5NxOzERIbdi73ZDsG6TauR1S4MOYcRxhNQe9XV6BouJkg/G+q7UR99yGoFbIJvnXP6srmX8GgF3lis1Lw4i2sE17HBf6dnTe22eaPKBGvpfgRsrUMybUScK9qnRtKcIJf+4cnYI+eNNMFnMwwpfpDS+WMMXirUVdbJc6Op5a1uHJmfAIjJH8VH6NGOOLAQgANy37KDPdWkGCObjb8aAD18q0oowpMN39ES3PWCxMBGRflFSJqShTVGerbnMDFGfZ/iRWXBDi0yYGx1CuWEgij7KpDA6HP6t5qGCt67I+p3ZcXsdfyjHArXskNsXaFwhA=----ATTACHMENT:----MTg5Mzk3MTg2ODkzNzk4IDE2ODkxNzcwNTM4NTk4MjQgMTU4MTQ5MzQxNjQ2OTYzNw==