<?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: Perl Module Monday: Object::Tiny (and friends)</title>
	<atom:link href="http://www.dereferenced.com/2011/09/26/perl-module-monday-objecttiny/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.dereferenced.com/2011/09/26/perl-module-monday-objecttiny/</link>
	<description>A preponderance of Perl, an excess of XML, and additional alliterations.</description>
	<lastBuildDate>Thu, 19 Jan 2012 08:50:49 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Adam Kennedy</title>
		<link>http://www.dereferenced.com/2011/09/26/perl-module-monday-objecttiny/comment-page-1/#comment-1353</link>
		<dc:creator>Adam Kennedy</dc:creator>
		<pubDate>Wed, 28 Sep 2011 03:32:18 +0000</pubDate>
		<guid isPermaLink="false">http://www.dereferenced.com/?p=205#comment-1353</guid>
		<description>Actually, that might be a bug after all.

If you inherit from something that doesn&#039;t have a new method, odds are it should be treated as a role and so we would...

@ISA = ( @ISA, &#039;Object::Tiny&#039; );</description>
		<content:encoded><![CDATA[<p>Actually, that might be a bug after all.</p>
<p>If you inherit from something that doesn&#8217;t have a new method, odds are it should be treated as a role and so we would&#8230;</p>
<p>@ISA = ( @ISA, &#8216;Object::Tiny&#8217; );</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Steffen Mueller</title>
		<link>http://www.dereferenced.com/2011/09/26/perl-module-monday-objecttiny/comment-page-1/#comment-1342</link>
		<dc:creator>Steffen Mueller</dc:creator>
		<pubDate>Tue, 27 Sep 2011 06:48:50 +0000</pubDate>
		<guid isPermaLink="false">http://www.dereferenced.com/?p=205#comment-1342</guid>
		<description>Just a bit of additional info: Object::Tiny::XS doesn&#039;t support rw or w accessors because it was written to be an exact drop-in replacement for Object::Tiny as it worked back then. A quick look shows it still works that way, so I&#039;d be inclined to reject a request to add RW variants, though I&#039;d be open for debate.

Either way, once you have O::T::XS, you can add rw accessors as follows:

  use Class::XSAccessor accessors =&gt; [qw(foo bar baz)];

It also supports write-only accessors using the &#039;setters&#039; parameter and lvalue accessors using &#039;lvalue_accessors&#039;:


  use Class::XSAccessor
    setters =&gt; {set_foo =&gt; &#039;foo&#039;, set_bar =&gt; &#039;bar&#039;}
    lvalue_accessors =&gt; [qw(baz)];

Indeed, this requires understanding and using yet another API, but I believe the small featureset and simplicity of Object::Tiny are worth preserving.

I hope this code won&#039;t be mangled. Won&#039;t get my hopes up, though. :)</description>
		<content:encoded><![CDATA[<p>Just a bit of additional info: Object::Tiny::XS doesn&#8217;t support rw or w accessors because it was written to be an exact drop-in replacement for Object::Tiny as it worked back then. A quick look shows it still works that way, so I&#8217;d be inclined to reject a request to add RW variants, though I&#8217;d be open for debate.</p>
<p>Either way, once you have O::T::XS, you can add rw accessors as follows:</p>
<p>  use Class::XSAccessor accessors =&gt; [qw(foo bar baz)];</p>
<p>It also supports write-only accessors using the &#8216;setters&#8217; parameter and lvalue accessors using &#8216;lvalue_accessors&#8217;:</p>
<p>  use Class::XSAccessor<br />
    setters =&gt; {set_foo =&gt; &#8216;foo&#8217;, set_bar =&gt; &#8216;bar&#8217;}<br />
    lvalue_accessors =&gt; [qw(baz)];</p>
<p>Indeed, this requires understanding and using yet another API, but I believe the small featureset and simplicity of Object::Tiny are worth preserving.</p>
<p>I hope this code won&#8217;t be mangled. Won&#8217;t get my hopes up, though. :)</p>
]]></content:encoded>
	</item>
</channel>
</rss>
