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