<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: C++ Runtime Type System</title>
	<atom:link href="http://www.realityprime.com/articles/c-runtime-type-system/feed" rel="self" type="application/rss+xml" />
	<link>http://www.realityprime.com/articles/c-runtime-type-system</link>
	<description>Advanced Technology Research</description>
	<lastBuildDate>Tue, 31 Jan 2012 07:20:57 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
	<item>
		<title>By: avi</title>
		<link>http://www.realityprime.com/articles/c-runtime-type-system/comment-page-1#comment-33466</link>
		<dc:creator>avi</dc:creator>
		<pubDate>Fri, 19 Nov 2010 00:49:12 +0000</pubDate>
		<guid isPermaLink="false">http://www.realityprime.com/?p=351#comment-33466</guid>
		<description>Hi Nash, you&#039;re correct that those two functions are missing from this implementation. I focused mostly on serialization/marshaling and less on dynamic accessors. Printing the structure is a stone&#039;s throw from printing the structures properly formatted values to a stream, and the reverse.

The dynamic accessors wouldn&#039;t hard to add though, mainly just add a map or dictionary for quickly finding children, and I&#039;d go with some sort of C++-like dot notation for representing parent paths as if they were compiled C++. I&#039;ve done this for other systems in the past.

That said, I think the bigger hole is on method invocation.</description>
		<content:encoded><![CDATA[<p>Hi Nash, you&#8217;re correct that those two functions are missing from this implementation. I focused mostly on serialization/marshaling and less on dynamic accessors. Printing the structure is a stone&#8217;s throw from printing the structures properly formatted values to a stream, and the reverse.</p>
<p>The dynamic accessors wouldn&#8217;t hard to add though, mainly just add a map or dictionary for quickly finding children, and I&#8217;d go with some sort of C++-like dot notation for representing parent paths as if they were compiled C++. I&#8217;ve done this for other systems in the past.</p>
<p>That said, I think the bigger hole is on method invocation.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Nash</title>
		<link>http://www.realityprime.com/articles/c-runtime-type-system/comment-page-1#comment-32590</link>
		<dc:creator>Nash</dc:creator>
		<pubDate>Tue, 02 Nov 2010 20:31:12 +0000</pubDate>
		<guid isPermaLink="false">http://www.realityprime.com/?p=351#comment-32590</guid>
		<description>What I don&#039;t understand today is, what do you do with this information?
You can print out a class structure, and now?
Or is the interesting part misssing?
Like: getProperty(string name) setProperty etc...</description>
		<content:encoded><![CDATA[<p>What I don&#8217;t understand today is, what do you do with this information?<br />
You can print out a class structure, and now?<br />
Or is the interesting part misssing?<br />
Like: getProperty(string name) setProperty etc&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Avi</title>
		<link>http://www.realityprime.com/articles/c-runtime-type-system/comment-page-1#comment-30247</link>
		<dc:creator>Avi</dc:creator>
		<pubDate>Sat, 18 Sep 2010 06:48:58 +0000</pubDate>
		<guid isPermaLink="false">http://www.realityprime.com/?p=351#comment-30247</guid>
		<description>Nash, if the getter/setter exists for each reflected member, it&#039;s easy to infer the name and type of it (e.g., int Get_Foo() ). 

However, you still need a runtime pointer to the function, which you could probably get in the macro that adds each member type and pass in. (e.g., get pointer-to-function Class##::Get_##Member##()  ), where Class and Member are the class and member names passed in. )

The main problem is these would be member functions most likely, not static, so you&#039;d need to be a bit fancier about handling storage and invocation.

Not sure about why std::string wouldn&#039;t work, but it might have to do with the macro concatenation tricks i use perhaps not liking colons.</description>
		<content:encoded><![CDATA[<p>Nash, if the getter/setter exists for each reflected member, it&#8217;s easy to infer the name and type of it (e.g., int Get_Foo() ). </p>
<p>However, you still need a runtime pointer to the function, which you could probably get in the macro that adds each member type and pass in. (e.g., get pointer-to-function Class##::Get_##Member##()  ), where Class and Member are the class and member names passed in. )</p>
<p>The main problem is these would be member functions most likely, not static, so you&#8217;d need to be a bit fancier about handling storage and invocation.</p>
<p>Not sure about why std::string wouldn&#8217;t work, but it might have to do with the macro concatenation tricks i use perhaps not liking colons.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: C++ reflection: extract type inheritance information with code postprocessing &#124; The LIBPF blog</title>
		<link>http://www.realityprime.com/articles/c-runtime-type-system/comment-page-1#comment-30229</link>
		<dc:creator>C++ reflection: extract type inheritance information with code postprocessing &#124; The LIBPF blog</dc:creator>
		<pubDate>Fri, 17 Sep 2010 18:14:41 +0000</pubDate>
		<guid isPermaLink="false">http://www.realityprime.com/?p=351#comment-30229</guid>
		<description>[...] macros: such as here; the latter two are a little obtrusive because they deviate from standard C++ [...]</description>
		<content:encoded><![CDATA[<p>[...] macros: such as here; the latter two are a little obtrusive because they deviate from standard C++ [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: nash</title>
		<link>http://www.realityprime.com/articles/c-runtime-type-system/comment-page-1#comment-29720</link>
		<dc:creator>nash</dc:creator>
		<pubDate>Wed, 08 Sep 2010 08:13:35 +0000</pubDate>
		<guid isPermaLink="false">http://www.realityprime.com/?p=351#comment-29720</guid>
		<description>using the type std::string as attribute, won&#039;t work with your system. I get a linking error. To big to post it here.

I think in real worl apps it&#039;s more important to reflect the getter/setter, rather then the private member variables.
How could I achive this with your system?</description>
		<content:encoded><![CDATA[<p>using the type std::string as attribute, won&#8217;t work with your system. I get a linking error. To big to post it here.</p>
<p>I think in real worl apps it&#8217;s more important to reflect the getter/setter, rather then the private member variables.<br />
How could I achive this with your system?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: avi</title>
		<link>http://www.realityprime.com/articles/c-runtime-type-system/comment-page-1#comment-24491</link>
		<dc:creator>avi</dc:creator>
		<pubDate>Tue, 26 Jan 2010 06:32:26 +0000</pubDate>
		<guid isPermaLink="false">http://www.realityprime.com/?p=351#comment-24491</guid>
		<description>Thanks. std::string is pretty portable nowadays. But it&#039;s easy to replace. I tend to not use const char* too much these days because it&#039;s just too prone to bugs.</description>
		<content:encoded><![CDATA[<p>Thanks. std::string is pretty portable nowadays. But it&#8217;s easy to replace. I tend to not use const char* too much these days because it&#8217;s just too prone to bugs.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jurgen</title>
		<link>http://www.realityprime.com/articles/c-runtime-type-system/comment-page-1#comment-24444</link>
		<dc:creator>Jurgen</dc:creator>
		<pubDate>Sun, 24 Jan 2010 06:31:25 +0000</pubDate>
		<guid isPermaLink="false">http://www.realityprime.com/?p=351#comment-24444</guid>
		<description>Hi,

I noted that in the Type class you use std::string for storing the name of the class/member. Why not just use const char* ? to make the RTTI system more independent?

Overall a nice, simple and powerful little system.</description>
		<content:encoded><![CDATA[<p>Hi,</p>
<p>I noted that in the Type class you use std::string for storing the name of the class/member. Why not just use const char* ? to make the RTTI system more independent?</p>
<p>Overall a nice, simple and powerful little system.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: RealityPrime &#187; A Nearly-Automatic C++ Run-Time Type System</title>
		<link>http://www.realityprime.com/articles/c-runtime-type-system/comment-page-1#comment-23116</link>
		<dc:creator>RealityPrime &#187; A Nearly-Automatic C++ Run-Time Type System</dc:creator>
		<pubDate>Mon, 30 Nov 2009 04:22:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.realityprime.com/?p=351#comment-23116</guid>
		<description>[...] Updated here [...]</description>
		<content:encoded><![CDATA[<p>[...] Updated here [...]</p>
]]></content:encoded>
	</item>
</channel>
</rss>

