Groups | Search | Server Info | Keyboard shortcuts | Login | Register


Groups > comp.lang.php > #19546

Re: ReflectionAttribute: IS_INSTANCEOF and getTarget()

From "J.O. Aho" <user@example.net>
Newsgroups comp.lang.php
Subject Re: ReflectionAttribute: IS_INSTANCEOF and getTarget()
Date 2023-11-13 14:32 +0100
Message-ID <kremroFfkjoU1@mid.individual.net> (permalink)
References <uhd6sm$1eugb$1@dont-email.me> <krdvhsFfkjrU1@mid.individual.net> <uit2ht$kqjc$1@dont-email.me>

Show all headers | View raw


On 13/11/2023 12.50, alex wrote:
> Il 13/11/23 07:54, J.O. Aho ha scritto:
>>> https://www.php.net/manual/en/reflectionattribute.gettarget.php
>>
>> There are a number of attributes you can give a class, TARGET_* and 
>> you will get the sum of all those targets as an unified bit value. 0 
>> if none of the TARGET_* are set.
> 
> mmmhhh...
> 
> Are you sure?

No and yes, it wasn't really what I thought

  I thought it would give the value of
#[Attribute(Attribute::TARGET_CLASS|Attribute::IS_REPEATABLE)] (65)

but it only gives you

Attribute::TARGET_CLASS (1)
Attribute::TARGET_FUNCTION (2)
Attribute::TARGET_METHOD (4)

see: 
https://github.com/php/php-src/blob/cc2bf119519c8dd7d6afa2b63aa4ea8b014f205d/Zend/zend_attributes.h

You can see at the unitest:
https://github.com/php/php-src/blob/cc2bf119519c8dd7d6afa2b63aa4ea8b014f205d/Zend/tests/attributes/020_userland_attribute_validation.phpt


>>> https://www.php.net/manual/en/class.reflectionattribute.php#reflectionattribute.constants.is-instanceof
>>
>> this will give you something like typeof for the instance in question.
> 
> typeof...???

just ignore this part.. typeof used in other languages when you want to 
know what type something is of and I was hasty in my reply and guessed 
without really reading.

-- 
  //Aho

Back to comp.lang.php | Previous | NextPrevious in thread | Find similar


Thread

ReflectionAttribute: IS_INSTANCEOF and getTarget() alex <1j9448a02@lnx159sneakemail.com.invalid> - 2023-10-26 10:09 +0200
  Re: ReflectionAttribute: IS_INSTANCEOF and getTarget() Olen mitte keegi <kavalpeakelm@ya.ee> - 2023-11-12 09:12 -0800
  Re: ReflectionAttribute: IS_INSTANCEOF and getTarget() "J.O. Aho" <user@example.net> - 2023-11-13 07:54 +0100
    Re: ReflectionAttribute: IS_INSTANCEOF and getTarget() alex <1j9448a02@lnx159sneakemail.com.invalid> - 2023-11-13 12:50 +0100
      Re: ReflectionAttribute: IS_INSTANCEOF and getTarget() "J.O. Aho" <user@example.net> - 2023-11-13 14:32 +0100

csiph-web