diff --git a/sysdata/libraries/stn/src/random.hb b/sysdata/libraries/stn/src/random.hb index a7e5ec297..bf2917ca8 100644 --- a/sysdata/libraries/stn/src/random.hb +++ b/sysdata/libraries/stn/src/random.hb @@ -1,7 +1,15 @@ -any := fn($Expr: type): Expr { +$any := fn($Expr: type): Expr { return *@eca(3, 4, &@as(Expr, idk), @sizeof(Expr)) } -range := fn($Expr: type, min: Expr, max: Expr): Expr { +$range := fn($Expr: type, min: Expr, max: Expr): Expr { return *@eca(3, 4, &@as(Expr, idk), @sizeof(Expr)) % (max - min) + *@bitcast(&1) + min +} + +$fill := fn($Expr: type, ptr: ^Expr): void { + return @eca(3, 4, ptr, @sizeof(Expr)) +} + +$fill_buffer := fn(buf: ^u8, len: uint): void { + return @eca(3, 4, buf, len) } \ No newline at end of file