<table><tr><td style="">michaelh added inline comments.
</td><a style="text-decoration: none; padding: 4px 8px; margin: 0 8px 8px; float: right; color: #464C5C; font-weight: bold; border-radius: 3px; background-color: #F7F7F9; background-image: linear-gradient(to bottom,#fff,#f1f0f1); display: inline-block; border: 1px solid rgba(71,87,120,.2);" href="https://phabricator.kde.org/D10826" rel="noreferrer">View Revision</a></tr></table><br /><div><strong>INLINE COMMENTS</strong><div><div style="margin: 6px 0 12px 0;"><div style="border: 1px solid #C7CCD9; border-radius: 3px;"><div style="padding: 0; background: #F7F7F7; border-color: #e3e4e8; border-style: solid; border-width: 0 0 1px 0; margin: 0;"><div style="color: #74777d; background: #eff2f4; padding: 6px 8px; overflow: hidden;"><a style="float: right; text-decoration: none;" href="https://phabricator.kde.org/D10826#inline-51917" rel="noreferrer">View Inline</a><span style="color: #4b4d51; font-weight: bold;">svuorela</span> wrote in <span style="color: #4b4d51; font-weight: bold;">documentid.cpp:67</span></div>
<div style="margin: 8px 0; padding: 0 12px; color: #74777D;"><p style="padding: 0; margin: 8px;">if you make operator DeviceIdAndInode explicit, you probably end up with a bit better behavior.</p>

<p style="padding: 0; margin: 8px;">Else the compiler happily converts a documentid to a deviceidandinode in order to make various comparisons at compile time.</p>

<p style="padding: 0; margin: 8px;">e.g. DocumentId id(5,5);<br />
bool b = true;<br />
if (id == b) { ... }  should compile, but probably isn't intended behavior..</p></div></div>
<div style="margin: 8px 0; padding: 0 12px;"><p style="padding: 0; margin: 8px;">This is intended. At the moment the class should behave like quint64(=DeviceIdAndInode)</p></div></div><br /><div style="border: 1px solid #C7CCD9; border-radius: 3px;"><div style="padding: 0; background: #F7F7F7; border-color: #e3e4e8; border-style: solid; border-width: 0 0 1px 0; margin: 0;"><div style="color: #74777d; background: #eff2f4; padding: 6px 8px; overflow: hidden;"><a style="float: right; text-decoration: none;" href="https://phabricator.kde.org/D10826#inline-52148" rel="noreferrer">View Inline</a><span style="color: #4b4d51; font-weight: bold;">svuorela</span> wrote in <span style="color: #4b4d51; font-weight: bold;">documentid.h:51-52</span></div>
<div style="margin: 8px 0; padding: 0 12px; color: #74777D;"><p style="padding: 0; margin: 8px;">it depends on why it is exported. If it is exported just for unit test (and the header file not installed), then we don't need to have the mental and code wise overhead of a d-pointer.</p>

<p style="padding: 0; margin: 8px;">If we know that it will never ever need to grow, we also don't need the overhead of a d-pointer. <br />
So it is a big "it depends", which I was also kind of trying to ask into earlier.</p></div></div>
<div style="margin: 8px 0; padding: 0 12px;"><p style="padding: 0; margin: 8px;">I have to admit, I have not understood the meaning of BALOO_ENGINE_EXPORT yet. The file which defines it looks like it's automatically created. I inserted it after trial and error. Except for testing I see no reason why it should be exported. I consider it as strictly internal.</p>

<p style="padding: 0; margin: 8px;">In its present state this class shall serve as a replacement for the quint64 that baloo is currently using for an id. <br />
Finally this class will have a payload of 24 bytes max. (64bit inode and 128bit uuid) and one method: <tt style="background: #ebebeb; font-size: 13px;">isValid()</tt>. That at least is the plan.</p>

<p style="padding: 0; margin: 8px;">This class is used a lot. What I have read about d-pointers so far indicates a huge performance hit when using indirection. Maybe I'm wrong.</p>

<p style="padding: 0; margin: 8px;"><a href="https://phabricator.kde.org/p/svuorela/" style="
              border-color: #f1f7ff;
              color: #19558d;
              background-color: #f1f7ff;
                border: 1px solid transparent;
                border-radius: 3px;
                font-weight: bold;
                padding: 0 4px;" rel="noreferrer">@svuorela</a>: I'm sorry if my answer appeared uncouth. That was not intended. Currently a lot of my programming is the result of trial and error rather than knowledge. In time the ratio, hopefully, will change in favor of the latter :)</p></div></div></div></div></div><br /><div><strong>REPOSITORY</strong><div><div>R293 Baloo</div></div></div><br /><div><strong>REVISION DETAIL</strong><div><a href="https://phabricator.kde.org/D10826" rel="noreferrer">https://phabricator.kde.org/D10826</a></div></div><br /><div><strong>To: </strong>michaelh, adridg, Baloo, Frameworks<br /><strong>Cc: </strong>anthonyfieroni, svuorela, ashaposhnikov, michaelh, spoorun, nicolasfella, alexeymin<br /></div>