ctypes details was: Re: syntax for code blocks

mwilson at the-wire.com mwilson at the-wire.com
Mon Apr 30 11:42:04 EDT 2012


> On 4/30/2012 17:02, Kiuhnm wrote:
>> BignumTypePtr = ctypes.POINTER(BignumType)
>>
>> for op, op_word in ((libbnem.BN_add, libbnem.BN_add_word),
>> (libbnem.BN_sub, libbnem.BN_sub_word)):
>> op.argtypes = [BignumTypePtr] * 3
>> op_word.argtypes = [BignumTypePtr, ctypes.c_ulong]
>> op.restype = op_word.restype = ctypes.c_int
> 
> On second thought, BignumPtrType is probably the right name.

(Way off the original topic, aren't we?)  I haven't looked inside ctypes, 
and don't know what kind of thing ctypes.POINTER actually constructs.  I was 
worried about falling into a [[a]]*3 kind of error -- unwittingly sharing a 
mutable object.  I guess I really should look.

	Mel.




More information about the Python-list mailing list