On Wed, Jun 25, 2014 at 05:10:06PM +0000, Chris Nicholson-Sauls via 
Digitalmars-d-learn wrote:
> UDA's are compile-time metadata associated with a specific
> declaration.  So in something like:
> 
> @foo int x;
> 
> The @foo is attached to x, but is not part of the type.

The term "attribute" is a bit confusing, especially since "property" is
also used in the language to refer to something completely different. A
better term is perhaps "annotation". The @foo is an annotation on x, but
its type is just int. Furthermore, the @foo annotation on it only exists
at compile-type; it doesn't exist at runtime. The purpose is really to
enhance compile-time introspection and metaprogramming; but what the OP
wants seems to be something else altogether.

Sadly, the "attribute" terminology has stuck, and is unlikely to change.


T

-- 
What do you get if you drop a piano down a mineshaft? A flat minor.

Reply via email to