On Sat, 21 May 2005, listmember wrote:
> Michael Van Canneyt wrote: > > > It's in SubVersion. 2 demo units are in packages/extra/uuid, with > > testprograms. > > http://svn.freepascal.org/svn/fpc/trunk/packages/extra/uuid/ > > It looks OK to me, except that it may be a little more optimized > for speed since GUIDs are CPU-expensive to begin with. Feel free to submit patches and a testprogram to prove that your implementation is significantly faster :-) > > A couple of questions, wrt FPC v2.x: > > -- Is Int64 supported in all platforms? Yes. > > -- Is there a Int128 or something like it? No. > When Windows was 32bit, Delphi had Int64; it's only natural > that now we should have Int128 :-) > > -- GUID unit being in extra/uuid/, does it mean it will not > be available in, say, Windows since Windows has a native > call for that. > Personally, I'd like 'OnCreateGUID : TCreateGUIDFunc = Nil; > to be available in all platforms. It is, sysutils is cross-platform. On windows the default implementation calls CoCreateGUID, but with OnCreateGUID you can override this behaviour. On Linux, the default behaviour is to use the kernel /proc/sys/kernel/random/uuid file, and fall back. On BSD, /dev/urandom is used to generate a random GUID on all other platforms, the system unit random() function is used. On all platforms, the default behaviour can be changed using the OnCreateGUID event. Michael. _______________________________________________ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal