Index: tool/input_sdk/lib/math/random.dart |
diff --git a/tool/input_sdk/lib/math/random.dart b/tool/input_sdk/lib/math/random.dart |
index be338f99a664760555b0e4bb8950d2072677763d..47c55828ce4f2267d524b2a8d1926034de7320de 100644 |
--- a/tool/input_sdk/lib/math/random.dart |
+++ b/tool/input_sdk/lib/math/random.dart |
@@ -9,27 +9,40 @@ part of dart.math; |
* |
* The default implementation supplies a stream of |
* pseudo-random bits that are not suitable for cryptographic purposes. |
+ * |
+ * Use the Random.secure() constructor for cryptographic |
+ * purposes. |
*/ |
abstract class Random { |
/** |
- * Creates a random-number generator. The optional parameter [seed] is used |
- * to initialize the internal state of the generator. The implementation of |
- * the random stream can change between releases of the library. |
+ * Creates a random number generator. |
+ * |
+ * The optional parameter [seed] is used to initialize the |
+ * internal state of the generator. The implementation of the |
+ * random stream can change between releases of the library. |
*/ |
external factory Random([int seed]); |
/** |
- * Generates a positive random integer uniformly distributed on the range |
+ * Creates a cryptographically secure random number generator. |
+ * |
+ * If the program cannot provide a cryptographically secure |
+ * source of random numbers, it throws an [UnsupportedError]. |
+ */ |
+ external factory Random.secure(); |
+ |
+ /** |
+ * Generates a non-negative random integer uniformly distributed in the range |
* from 0, inclusive, to [max], exclusive. |
* |
* Implementation note: The default implementation supports [max] values |
- * between 1 and ((1<<32) - 1) inclusive. |
+ * between 1 and (1<<32) inclusive. |
*/ |
int nextInt(int max); |
/** |
- * Generates a positive random floating point value uniformly distributed on |
- * the range from 0.0, inclusive, to 1.0, exclusive. |
+ * Generates a non-negative random floating point value uniformly distributed |
+ * in the range from 0.0, inclusive, to 1.0, exclusive. |
*/ |
double nextDouble(); |