Spec-Zone.ru › Pony

SplitMix64

[Источник]

Очень быстрый генератор псевдослучайных чисел, использующий только 64 бита состояния, как описано в:

http://xoshiro.di.unimi.it/ и http://gee.cs.oswego.edu/dl/papers/oopsla14.pdf

Использование XorOshiro128StarStar или XorOshiro128Plus предпочтительнее, если только использование 64 битов состояния не является требованием.

class ref SplitMix64 is
  Random ref

Реализует

  • Random ссылка

Конструкторы

from_u64

[Источник]

new ref from_u64(
  x: U64 val = 5489)
: SplitMix64 ref^

Параметры

  • x: U64 значение = 5489

Возвращает

  • SplitMix64 ссылка^

create

[Источник]

Используется только x, y игнорируется.

new ref create(
  x: U64 val = 5489,
  y: U64 val = 0)
: SplitMix64 ref^

Параметры

  • x: U64 значение = 5489
  • y: U64 значение = 0

Возвращает

  • SplitMix64 ссылка^

Открытые функции

next

[Источник]

fun ref next()
: U64 val

Возвращает

  • U64 значение

has_next

fun tag has_next()
: Bool val

Возвращает

  • Bool значение

u8

fun ref u8()
: U8 val

Возвращает

  • U8 значение

u16

fun ref u16()
: U16 val

Возвращает

  • U16 значение

u32

fun ref u32()
: U32 val

Возвращает

  • U32 значение

u64

fun ref u64()
: U64 val

Возвращает

  • U64 значение

u128

fun ref u128()
: U128 val

Возвращает

  • U128 значение

ulong

fun ref ulong()
: ULong val

Возвращает

  • ULong значение

usize

fun ref usize()
: USize val

Возвращает

  • USize значение

i8

fun ref i8()
: I8 val

Возвращает

  • I8 значение

i16

fun ref i16()
: I16 val

Возвращает

  • I16 значение

i32

fun ref i32()
: I32 val

Возвращает

  • I32 значение

i64

fun ref i64()
: I64 val

Возвращает

  • I64 значение

i128

fun ref i128()
: I128 val

Возвращает

  • I128 значение

ilong

fun ref ilong()
: ILong val

Возвращает

  • ILong значение

isize

fun ref isize()
: ISize val

Возвращает

  • ISize значение

int_fp_mult[необязательный N: ((U8 значение | U16 значение | U32 значение | U64 значение | U128 значение | ULong значение | USize значение) & Real[N] значение)]

fun ref int_fp_mult[optional N: ((U8 val | U16 val | U32 val | 
    U64 val | U128 val | ULong val | 
    USize val) & Real[N] val)](
  n: N)
: N

Параметры

  • n: N

Возвращает

  • N

int[необязательный N: ((U8 значение | U16 значение | U32 значение | U64 значение | U128 значение | ULong значение | USize значение) & Real[N] значение)]

fun ref int[optional N: ((U8 val | U16 val | U32 val | 
    U64 val | U128 val | ULong val | 
    USize val) & Real[N] val)](
  n: N)
: N

Параметры

  • n: N

Возвращает

  • N

int_unbiased[необязательный N: ((U8 значение | U16 значение | U32 значение | U64 значение | U128 значение | ULong значение | USize значение) & Real[N] значение)]

fun ref int_unbiased[optional N: ((U8 val | U16 val | U32 val | 
    U64 val | U128 val | ULong val | 
    USize val) & Real[N] val)](
  n: N)
: N

Параметры

  • n: N

Возвращает

  • N

real

fun ref real()
: F64 val

Возвращает

  • F64 значение

shuffle[A: A]

fun ref shuffle[A: A](
  array: Array[A] ref)
: None val

Параметры

  • массив: Массив[A] ссылка

Возвращает

  • None значение

© 2016-2020, The Pony Developers
© 2014-2015, Causality Ltd.
Licensed under the BSD 2-Clause License.
https://stdlib.ponylang.io/random-SplitMix64

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API