</head><bodyclass="rustdoc mod"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><navclass="mobile-topbar"><buttonclass="sidebar-menu-toggle">☰</button><aclass="sidebar-logo"href="../../../halo2_gadgets/index.html"><divclass="logo-container"><imgclass="rust-logo"src="../../../rust-logo.svg"alt="logo"></div>
</a><h2class="location"><ahref="#">Module primitives</a></h2><divclass="sidebar-elems"><section><divclass="block"><ul><li><ahref="#structs">Structs</a></li><li><ahref="#traits">Traits</a></li></ul></div></section></div></nav><main><divclass="width-limiter"><divclass="sub-container"><aclass="sub-logo-container"href="../../../halo2_gadgets/index.html"><imgclass="rust-logo"src="../../../rust-logo.svg"alt="logo"></a><navclass="sub"><formclass="search-form"><divclass="search-container"><span></span><inputclass="search-input"name="search"autocomplete="off"spellcheck="false"placeholder="Click or press ‘S’ to search, ‘?’ for more options…"type="search"><buttontype="button"id="help-button"title="help">?</button><divid="settings-menu"tabindex="-1">
<divclass="item-table"><divclass="item-row"><divclass="item-left module-item"><aclass="struct"href="struct.Absorbing.html"title="halo2_gadgets::poseidon::primitives::Absorbing struct">Absorbing</a></div><divclass="item-right docblock-short"><p>The absorbing state of the <code>Sponge</code>.</p>
</div></div><divclass="item-row"><divclass="item-left module-item"><aclass="struct"href="struct.ConstantLength.html"title="halo2_gadgets::poseidon::primitives::ConstantLength struct">ConstantLength</a></div><divclass="item-right docblock-short"><p>A Poseidon hash function used with constant input length.</p>
</div></div><divclass="item-row"><divclass="item-left module-item"><aclass="struct"href="struct.Hash.html"title="halo2_gadgets::poseidon::primitives::Hash struct">Hash</a></div><divclass="item-right docblock-short"><p>A Poseidon hash function, built around a sponge.</p>
</div></div><divclass="item-row"><divclass="item-left module-item"><aclass="struct"href="struct.P128Pow5T3.html"title="halo2_gadgets::poseidon::primitives::P128Pow5T3 struct">P128Pow5T3</a></div><divclass="item-right docblock-short"><p>Poseidon-128 using the $x^5$ S-box, with a width of 3 field elements, and the
</div></div><divclass="item-row"><divclass="item-left module-item"><aclass="struct"href="struct.Squeezing.html"title="halo2_gadgets::poseidon::primitives::Squeezing struct">Squeezing</a></div><divclass="item-right docblock-short"><p>The squeezing state of the <code>Sponge</code>.</p>
<divclass="item-table"><divclass="item-row"><divclass="item-left module-item"><aclass="trait"href="trait.Domain.html"title="halo2_gadgets::poseidon::primitives::Domain trait">Domain</a></div><divclass="item-right docblock-short"><p>A domain in which a Poseidon hash function is being used.</p>
</div></div><divclass="item-row"><divclass="item-left module-item"><aclass="trait"href="trait.Spec.html"title="halo2_gadgets::poseidon::primitives::Spec trait">Spec</a></div><divclass="item-right docblock-short"><p>A specification for a Poseidon permutation.</p>
</div></div><divclass="item-row"><divclass="item-left module-item"><aclass="trait"href="trait.SpongeMode.html"title="halo2_gadgets::poseidon::primitives::SpongeMode trait">SpongeMode</a></div><divclass="item-right docblock-short"><p>The state of the <code>Sponge</code>.</p>