factor/vm/tuples.hpp

21 lines
425 B
C++
Raw Normal View History

inline static CELL tuple_size(F_TUPLE_LAYOUT *layout)
2009-05-02 05:04:19 -04:00
{
CELL size = untag_fixnum(layout->size);
2009-05-02 05:04:19 -04:00
return sizeof(F_TUPLE) + size * CELLS;
}
inline static CELL tuple_nth(F_TUPLE *tuple, CELL slot)
2009-05-02 05:04:19 -04:00
{
return tuple->data()[slot];
2009-05-02 05:04:19 -04:00
}
inline static void set_tuple_nth(F_TUPLE *tuple, CELL slot, CELL value)
2009-05-02 05:04:19 -04:00
{
tuple->data()[slot] = value;
write_barrier(tuple);
2009-05-02 05:04:19 -04:00
}
PRIMITIVE(tuple);
PRIMITIVE(tuple_boa);
PRIMITIVE(tuple_layout);