<html><head><meta http-equiv="Content-Type" content="text/html charset=iso-8859-1"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class=""><div class=""><br class=""></div><div class="">Perhaps we should document this in the coding style guidelines. I like consistency and static member function seems like a good way to go, particularly since it matches the Class::create() pattern we often use for non-singletons.</div><div class=""><br class=""></div><div><blockquote type="cite" class=""><div class="">On Jan 28, 2015, at 12:10 PM, Ryosuke Niwa &lt;<a href="mailto:rniwa@webkit.org" class="">rniwa@webkit.org</a>&gt; wrote:</div><br class="Apple-interchange-newline"><div class=""><div dir="ltr" class="">Class::shared() pattern seems good to me.</div><div class="gmail_extra"><br clear="all" class=""><div class=""><div class="gmail_signature">- R. Niwa</div></div>
<br class=""><div class="gmail_quote">On Wed, Jan 28, 2015 at 11:38 AM, Benjamin Poulain <span dir="ltr" class="">&lt;<a href="mailto:benjamin@webkit.org" target="_blank" class="">benjamin@webkit.org</a>&gt;</span> wrote:<br class=""><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
  
    
  
  <div bgcolor="#FFFFFF" text="#000000" class="">
    IMHO, scoping the function by its class is cleaner.<br class="">
    <a href="http://trac.webkit.org/changeset/179247" target="_blank" class="">http://trac.webkit.org/changeset/179247</a> looks like an improvement to
    me.<br class="">
    <br class="">
    Benjamin<div class=""><div class="h5"><br class="">
    <br class="">
    <div class="">On 1/28/15 11:30 AM, Chris Dumez wrote:<br class="">
    </div>
    </div></div><blockquote type="cite" class=""><div class=""><div class="h5">
      
      Hi,
      <div class=""><br class="">
      </div>
      <div class="">I noticed that we are currently not very consistent
        in WebKit in the way we implement singleton classes instance
        getters.</div>
      <div class="">- Some classes use free functions (like MemoryCache,
        and PageCache until I updated it yesterday). e.g.
        memoryCache().xxx()</div>
      <div class="">- Some classes are using static functions in the
        class (e.g.&nbsp;DatabaseProcess::shared(),&nbsp;PluginProcess::shared()).</div>
      <div class=""><br class="">
      </div>
      <div class="">As I said, I landed a patch yesterday so that the
        global page cache is now accessed via PageCache::shared()
        because I thought this was the currently preferred pattern
        (given it seems very common in WebKit2 code).</div>
      <div class="">However, I thought I would email webkit-dev to make
        sure this is actually the case and make sure we agree on a given
        pattern (one way or another) for current and future code. We
        could then maybe document this</div>
      <div class="">as part of our coding style.</div>
      <div class=""><br class="">
      </div>
      <div class="">Any feedback on this matter?</div>
      <div class=""><br class="">
      </div>
      <div class="">Kr,<br class="">
        <div class="">
          <div style="letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; word-wrap: break-word;" class="">
            <div class="">--</div>
            <div class="">Chris Dumez - Apple Inc.</div>
            <div class="">Cupertino, CA</div>
            <div class=""><br class="">
            </div>
          </div>
          <br class="">
          <br class="">
        </div>
        <br class="">
      </div>
      <br class="">
      <fieldset class=""></fieldset>
      <br class="">
      </div></div><pre class="">_______________________________________________
webkit-dev mailing list
<a href="mailto:webkit-dev@lists.webkit.org" target="_blank" class="">webkit-dev@lists.webkit.org</a>
<a href="https://lists.webkit.org/mailman/listinfo/webkit-dev" target="_blank" class="">https://lists.webkit.org/mailman/listinfo/webkit-dev</a>
</pre>
    </blockquote>
    <br class="">
  </div>

<br class="">_______________________________________________<br class="">
webkit-dev mailing list<br class="">
<a href="mailto:webkit-dev@lists.webkit.org" class="">webkit-dev@lists.webkit.org</a><br class="">
<a href="https://lists.webkit.org/mailman/listinfo/webkit-dev" target="_blank" class="">https://lists.webkit.org/mailman/listinfo/webkit-dev</a><br class="">
<br class=""></blockquote></div><br class=""></div>
_______________________________________________<br class="">webkit-dev mailing list<br class=""><a href="mailto:webkit-dev@lists.webkit.org" class="">webkit-dev@lists.webkit.org</a><br class="">https://lists.webkit.org/mailman/listinfo/webkit-dev<br class=""></div></blockquote></div><br class=""></body></html>