interest in properties library

Hi, I am thinking about submitting a library proposal and would like to query wether there is any interest in such a library and chance of success of such a proposal. The basic idea is to implement the possibility to decorate a class with named properties, such that given a pointer to an instance properties can be accessed by name rather than using set/get methods. Also the type of the instance should not need to be known at compile time, other than that it derives from a suitable base class describing the property mechanisms. There is a rough implementation existing and used in a product environment. Setting and getting is done using appropriate boost functions. Type resolution is done using RTTI (especially dynamic cast). Complex inheritance hierarchies are supported through virtual inheritance from the base class, such that several classes along the hierarchy can contribute property slots. CRTP and static initialization is used to register properties. Convenient setter/ getter function generators are provided as is a mechanism to access nested properties using dot notation. I would very much like to put this work into the community as I think it will only make it better, plus I want to give back to boost since it has been a lot of help to me and still is. Best Daniel Oberhoff Fraunhofer FIT Schloss Birlinghoven St. Augustin Germany

On Fri, Dec 19, 2008 at 5:50 AM, Daniel Oberhoff < daniel.oberhoff@fit.fraunhofer.de> wrote:
Hi,
I am thinking about submitting a library proposal and would like to query wether there is any interest in such a library and chance of success of such a proposal.
The basic idea is to implement the possibility to decorate a class with named properties, such that given a pointer to an instance properties can be accessed by name rather than using set/get methods. Also the type of the instance should not need to be known at compile time, other than that it derives from a suitable base class describing the property mechanisms.
There is a rough implementation existing and used in a product environment. Setting and getting is done using appropriate boost functions. Type resolution is done using RTTI (especially dynamic cast). Complex inheritance hierarchies are supported through virtual inheritance from the base class, such that several classes along the hierarchy can contribute property slots. CRTP and static initialization is used to register properties. Convenient setter/getter function generators are provided as is a mechanism to access nested properties using dot notation.
I'm not sure I follow exactly what you mean, could you give a small example of the interface and usage? It sounds like you are referring to something along the lines of C# properties though I don't immediately see what you are using dynamic casting for or what exactly this provides as a benefit over get/set methods. Thanks. -- -Matt Calabrese
participants (2)
-
Daniel Oberhoff
-
Matt Calabrese