<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Niche on rustbites</title><link>https://www.rustbites.com/tags/niche/</link><description>Recent content in Niche on rustbites</description><generator>Hugo</generator><language>en</language><lastBuildDate>Sun, 31 May 2026 10:48:35 +0200</lastBuildDate><atom:link href="https://www.rustbites.com/tags/niche/index.xml" rel="self" type="application/rss+xml"/><item><title>173. NonZeroU32 and Friends — Encode an Invariant and Shrink Option for Free</title><link>https://www.rustbites.com/posts/bite-173/</link><pubDate>Sun, 31 May 2026 09:00:00 +0100</pubDate><guid>https://www.rustbites.com/posts/bite-173/</guid><description>&lt;p&gt;&lt;code&gt;Option&amp;lt;u32&amp;gt;&lt;/code&gt; is &lt;strong&gt;8 bytes&lt;/strong&gt;. &lt;code&gt;Option&amp;lt;NonZeroU32&amp;gt;&lt;/code&gt; is &lt;strong&gt;4 bytes&lt;/strong&gt;. Same information, half the size — and the compiler enforces &amp;ldquo;this can&amp;rsquo;t be zero&amp;rdquo; for you.&lt;/p&gt;</description></item></channel></rss>