UUIDs

UUIDs.uuid1Function
uuid1([rng::AbstractRNG]) -> UUID

يولد معرف فريد عالمي (UUID) من الإصدار 1 (المعتمد على الوقت)، كما هو محدد في RFC 4122. لاحظ أن معرف العقدة يتم توليده عشوائيًا (لا يحدد المضيف) وفقًا للقسم 4.5 من RFC.

الـ rng الافتراضي المستخدم بواسطة uuid1 ليس Random.default_rng() ويجب توقع أن كل استدعاء لـ uuid1() بدون وسيط سيعيد معرفًا فريدًا. من المهم أن مخرجات uuid1 لا تتكرر حتى عند استدعاء Random.seed!(seed). حاليًا (اعتبارًا من Julia 1.6)، يستخدم uuid1 Random.RandomDevice كـ rng الافتراضي. ومع ذلك، هذه تفاصيل تنفيذ قد تتغير في المستقبل.

Julia 1.6

لا تعتمد مخرجات uuid1 على Random.default_rng() اعتبارًا من Julia 1.6.

أمثلة

julia> using Random

julia> rng = MersenneTwister(1234);

julia> uuid1(rng)
UUID("cfc395e8-590f-11e8-1f13-43a2532b2fa8")
source
UUIDs.uuid4Function
uuid4([rng::AbstractRNG]) -> UUID

يولد معرف فريد عالمي (UUID) من النسخة 4 (عشوائي أو شبه عشوائي)، كما هو محدد في RFC 4122.

الـ rng الافتراضي المستخدم بواسطة uuid4 ليس Random.default_rng() ويجب توقع أن كل استدعاء لـ uuid4() بدون وسيط سيعيد معرفًا فريدًا. من المهم أن نلاحظ أن مخرجات uuid4 لا تتكرر حتى عند استدعاء Random.seed!(seed). حاليًا (اعتبارًا من Julia 1.6)، يستخدم uuid4 Random.RandomDevice كـ rng الافتراضي. ومع ذلك، هذه تفاصيل تنفيذ قد تتغير في المستقبل.

Julia 1.6

لا تعتمد مخرجات uuid4 على Random.default_rng() اعتبارًا من Julia 1.6.

أمثلة

julia> using Random

julia> rng = Xoshiro(123);

julia> uuid4(rng)
UUID("856e446e-0c6a-472a-9638-f7b8557cd282")
source
UUIDs.uuid5Function
uuid5(ns::UUID, name::String) -> UUID

يولد معرف فريد عالمي (UUID) من النسخة 5 (المعتمد على المساحة والنطاق)، كما هو محدد في RFC 4122.

جوليا 1.1

تتطلب هذه الدالة على الأقل جوليا 1.1.

أمثلة

julia> using Random

julia> rng = Xoshiro(123);

julia> u4 = uuid4(rng)
UUID("856e446e-0c6a-472a-9638-f7b8557cd282")

julia> u5 = uuid5(u4, "julia")
UUID("2df91e3f-da06-5362-a6fe-03772f2e14c9")
source
UUIDs.uuid_versionFunction
uuid_version(u::UUID) -> Int

يفحص UUID المعطى ويعيد نسخته (انظر RFC 4122).

أمثلة

julia> uuid_version(uuid4())
4
source