
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On 05/02/2010 05:21 PM, vicente.botet wrote:
Could you confirm that this are the only data stored on xint::integer?
flag_t flags; data_t *data;
Yes, that's it, at the moment.
What is the meaning of flags static const flag_t flag_negative = 0x01; static const flag_t flag_readonly = 0x02; static const flag_t flag_fixedlength = 0x04;
The first is used (in the 'flags' bitfield) to denote a negative number. The second identifies data_t items that are meant to never be modified (the zero items assigned when new integers are created without specifying a value, for instance). The third is used on fixed_integer types, to tell the base_integer allocation code to use some special handling for them.
Is the flags field needed when COW is not used?
Yes. I don't think any of those three flags are specific to copy-on-write, except maybe flag_readonly (which prevents the code from writing to a shared zero, for example). - -- Chad Nelson Oak Circle Software, Inc. * * * -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.10 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAkveBAAACgkQp9x9jeZ9/wSSsgCfWuopvH9tE0AICOF6mxsK3+Om l4wAnj2xzCEyZtgQfXGsPPBnydbSVpPg =CR7U -----END PGP SIGNATURE-----