Skip to content

Commit dc20f28

Browse files
author
ci-build
committed
[skip ci] Update site
1 parent 4dd621f commit dc20f28

File tree

1 file changed

+30
-1
lines changed

1 file changed

+30
-1
lines changed

index.html

Lines changed: 30 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1025,6 +1025,7 @@ <h1>Ruby Style Guide</h1>
10251025
<li><a href="#array-coercion">Array Coercion</a></li>
10261026
<li><a href="#ranges-or-between">Ranges or <code>between</code></a></li>
10271027
<li><a href="#predicate-methods">Predicate Methods</a></li>
1028+
<li><a href="#bitwise-predicate-methods">Bitwise Predicate Methods</a></li>
10281029
<li><a href="#no-cryptic-perlisms">No Cryptic Perlisms</a></li>
10291030
<li><a href="#use-require_relative-whenever-possible">Use <code>require_relative</code> whenever possible</a></li>
10301031
<li><a href="#always-warn">Always Warn</a></li>
@@ -7958,6 +7959,34 @@ <h3 id="predicate-methods"><a class="anchor" href="#predicate-methods"></a><a cl
79587959
</div>
79597960
</div>
79607961
<div class="sect2">
7962+
<h3 id="bitwise-predicate-methods"><a class="anchor" href="#bitwise-predicate-methods"></a><a class="link" href="#bitwise-predicate-methods">Bitwise Predicate Methods</a></h3>
7963+
<div class="paragraph">
7964+
<p>Prefer bitwise predicate methods over direct comparison operations.</p>
7965+
</div>
7966+
<div class="listingblock">
7967+
<div class="content">
7968+
<pre class="rouge highlight"><code data-lang="ruby"><span class="c1"># bad - checks any set bits</span>
7969+
<span class="p">(</span><span class="n">variable</span> <span class="o">&amp;</span> <span class="n">flags</span><span class="p">).</span><span class="nf">positive?</span>
7970+
7971+
<span class="c1"># good</span>
7972+
<span class="n">variable</span><span class="p">.</span><span class="nf">anybits?</span><span class="p">(</span><span class="n">flags</span><span class="p">)</span>
7973+
7974+
<span class="c1"># bad - checks all set bits</span>
7975+
<span class="p">(</span><span class="n">variable</span> <span class="o">&amp;</span> <span class="n">flags</span><span class="p">)</span> <span class="o">==</span> <span class="n">flags</span>
7976+
7977+
<span class="c1"># good</span>
7978+
<span class="n">variable</span><span class="p">.</span><span class="nf">allbits?</span><span class="p">(</span><span class="n">flags</span><span class="p">)</span>
7979+
7980+
<span class="c1"># bad - checks no set bits</span>
7981+
<span class="p">(</span><span class="n">variable</span> <span class="o">&amp;</span> <span class="n">flags</span><span class="p">).</span><span class="nf">zero?</span>
7982+
<span class="p">(</span><span class="n">variable</span> <span class="o">&amp;</span> <span class="n">flags</span><span class="p">)</span> <span class="o">==</span> <span class="mi">0</span>
7983+
7984+
<span class="c1"># good</span>
7985+
<span class="n">variable</span><span class="p">.</span><span class="nf">nobits?</span><span class="p">(</span><span class="n">flags</span><span class="p">)</span></code></pre>
7986+
</div>
7987+
</div>
7988+
</div>
7989+
<div class="sect2">
79617990
<h3 id="no-cryptic-perlisms"><a class="anchor" href="#no-cryptic-perlisms"></a><a class="link" href="#no-cryptic-perlisms">No Cryptic Perlisms</a></h3>
79627991
<div class="paragraph">
79637992
<p>Avoid using Perl-style special variables (like <code>$:</code>, <code>$;</code>, etc).
@@ -8329,7 +8358,7 @@ <h2 id="spread-the-word"><a class="anchor" href="#spread-the-word"></a><a class=
83298358
</div>
83308359
<div id="footer">
83318360
<div id="footer-text">
8332-
Last updated 2024-07-06 05:08:57 UTC
8361+
Last updated 2024-07-18 06:13:35 UTC
83338362
</div>
83348363
</div>
83358364
</body>

0 commit comments

Comments
 (0)