Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(16)

Side by Side Diff: sdk/lib/core/int.dart

Issue 1199513003: Implement gcd in sdk. (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Created 5 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 part of dart.core; 5 part of dart.core;
6 6
7 /** 7 /**
8 * An arbitrarily large integer. 8 * An arbitrarily large integer.
9 * 9 *
10 * **Note:** When compiling to JavaScript, integers are 10 * **Note:** When compiling to JavaScript, integers are
(...skipping 102 matching lines...) Expand 10 before | Expand all | Expand 10 after
113 113
114 /** 114 /**
115 * Returns the modular multiplicative inverse of this integer 115 * Returns the modular multiplicative inverse of this integer
116 * modulo [modulus]. 116 * modulo [modulus].
117 * 117 *
118 * The [modulus] must be positive. 118 * The [modulus] must be positive.
119 * Throws a RangeError if no modular inverse exists. 119 * Throws a RangeError if no modular inverse exists.
120 */ 120 */
121 int modInverse(int modulus); 121 int modInverse(int modulus);
122 122
123 /**
124 * Returns the greatest common divisor of the absolute value of
125 * this integer and the absolute value of [other].
126 *
127 * Both this and [other] must be non-zero.
128 */
129 int gcd(int other);
130
123 /** Returns true if and only if this integer is even. */ 131 /** Returns true if and only if this integer is even. */
124 bool get isEven; 132 bool get isEven;
125 133
126 /** Returns true if and only if this integer is odd. */ 134 /** Returns true if and only if this integer is odd. */
127 bool get isOdd; 135 bool get isOdd;
128 136
129 /** 137 /**
130 * Returns the minimum number of bits required to store this integer. 138 * Returns the minimum number of bits required to store this integer.
131 * 139 *
132 * The number of bits excludes the sign bit, which gives the natural length 140 * The number of bits excludes the sign bit, which gives the natural length
(...skipping 160 matching lines...) Expand 10 before | Expand all | Expand 10 after
293 * var value = int.parse(text, onError: (source) => null); 301 * var value = int.parse(text, onError: (source) => null);
294 * if (value == null) ... handle the problem 302 * if (value == null) ... handle the problem
295 * 303 *
296 * The [onError] function is only invoked if [source] is a [String]. It is 304 * The [onError] function is only invoked if [source] is a [String]. It is
297 * not invoked if the [source] is, for example, `null`. 305 * not invoked if the [source] is, for example, `null`.
298 */ 306 */
299 external static int parse(String source, 307 external static int parse(String source,
300 { int radix, 308 { int radix,
301 int onError(String source) }); 309 int onError(String source) });
302 } 310 }
OLDNEW
« no previous file with comments | « sdk/lib/_internal/compiler/js_lib/js_number.dart ('k') | tests/corelib/big_integer_arith_vm_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698