Enhance docs on bitfield refs to cover a question raised on chat recently.

develop
Alexander Gavrilov 2012-06-13 11:00:54 +04:00
parent 6ca5a03008
commit 24e2c15113
2 changed files with 19 additions and 3 deletions

@ -219,12 +219,21 @@ Bitfield references
------------------- -------------------
Bitfields behave like special fixed-size containers. Bitfields behave like special fixed-size containers.
The ``_enum`` property points to the bitfield type. Consider them to be something in between structs and
fixed-size vectors.
The ``_enum`` property points to the bitfield type.
Numerical indices correspond to the shift value, Numerical indices correspond to the shift value,
and if a subfield occupies multiple bits, the and if a subfield occupies multiple bits, the
``ipairs`` order would have a gap. ``ipairs`` order would have a gap.
Since currently there is no API to allocate a bitfield
object fully in GC-managed lua heap, consider using the
lua table assignment feature outlined below in order to
pass bitfield values to dfhack API functions that need
them, e.g. ``matinfo:matches{metal=true}``.
Named types Named types
=========== ===========

@ -534,10 +534,17 @@ use <tt class="docutils literal">#ref</tt>, or just <tt class="docutils literal"
<div class="section" id="bitfield-references"> <div class="section" id="bitfield-references">
<h3><a class="toc-backref" href="#id6">Bitfield references</a></h3> <h3><a class="toc-backref" href="#id6">Bitfield references</a></h3>
<p>Bitfields behave like special fixed-size containers. <p>Bitfields behave like special fixed-size containers.
The <tt class="docutils literal">_enum</tt> property points to the bitfield type.</p> Consider them to be something in between structs and
<p>Numerical indices correspond to the shift value, fixed-size vectors.</p>
<p>The <tt class="docutils literal">_enum</tt> property points to the bitfield type.
Numerical indices correspond to the shift value,
and if a subfield occupies multiple bits, the and if a subfield occupies multiple bits, the
<tt class="docutils literal">ipairs</tt> order would have a gap.</p> <tt class="docutils literal">ipairs</tt> order would have a gap.</p>
<p>Since currently there is no API to allocate a bitfield
object fully in GC-managed lua heap, consider using the
lua table assignment feature outlined below in order to
pass bitfield values to dfhack API functions that need
them, e.g. <tt class="docutils literal">matinfo:matches{metal=true}</tt>.</p>
</div> </div>
</div> </div>
<div class="section" id="named-types"> <div class="section" id="named-types">