User Defined Attributes
Walter Bright
newshound2 at digitalmars.com
Tue Nov 6 08:50:53 PST 2012
On 11/6/2012 8:42 AM, dennis luehring wrote:
> Am 06.11.2012 16:18, schrieb Walter Bright:> On 11/6/2012 6:30 AM, dennis
> luehring wrote:
> > > Am 06.11.2012 14:14, schrieb Adam D. Ruppe:
> > >> On Tuesday, 6 November 2012 at 07:55:51 UTC, Walter Bright wrote:
> > >>> User Defined Attributes (UDA) are compile time expressions that
> > >>> can be attached to a declaration.
> > >>
> > >> Hmmm, it didn't work on the most important place for my use case,
> > >> function parameters:
> > >>
> > >> void a(["test"] int foo) {
> > >> pragma(msg, __traits(getAttributes, foo));
> > >> }
> > >
> > > sad - but its still very young feature :)
> > >
> > > im using something like an description on my methods to describe parameter
> > > "features" for an resource manager - something like "read", "write", "copy",
> > > "read_write" etc.
> > But there's already out=write, read=all of them, read_write=ref, copy=not a ref
> > or an out.
>
> and now expand that to an higher level manager that use such information for
> implementing(generating) runtime loading and locking strategies in a tree/graph
> based environment - based on the parameters needs ... i've got something like
> that in C++ using its own interface description language and an generator
But D already has parameter attributes that cover those bases. What would UDAs
add to that? (I know C++ is deficient in this, which is why IDL was invented,
but I don't see what UDAs add to what D already provides - no IDL is needed for D).
More information about the Digitalmars-d-announce
mailing list