Dieter Maurer wrote:
"""Pack an integer or long into a 8-byte string"""
Yes, but for that to be meaningful, you have to know that:
- 0xSomething is an integer or long (it read "hex number" in my head"
- oids are 8-byte strings
Neither of things that sit in my brain :-(
But, you knew all this. Otherwise, you would not have been
able to implement the "oid_[un]repr" functions.
I didn't implement oid_repr. I traced the code to find that was
generating the conflict error. I think worked back from that to end up
with oid_unrepr. The first time I became aware of "p64" was when you
I much prefer the "p64" over "oid_unrepr" (or was it "oid_repr"?):
When I need it, I am hunting bugs in an interactive Python interpreter
session and in such a situation I like "p64" much more than
the three times as long "oid_unrepr".
That's fine, I'm only proposing an alias, and some more documentation...
BTW: you did not choose your names well.
*IF* you want an alias (I think it would not be necessary),
choose something like "oid_tohex" and "oid_fromhex".
This tells you not only that you work with *some* representation
but with a hexadecimal representation (there are lots of different
ways, an "oid" can be represented).
The alias I suggested is purely to mirror that of the oid_repr function,
and I would include it directly above of below the oid_repr function
with bigger documentation clues for blind people like me ;-)
Does anyone have any non-pedantic reasons for not including this alias?
Simplistix - Content Management, Zope & Python Consulting
For more information about ZODB, see the ZODB Wiki:
ZODB-Dev mailing list - ZODB-Dev@zope.org