Skip to content

Commit 534bebd

Browse files
committed
Merge pull request DefinitelyTyped#4725 from peterkooijmans/master
Update long.js typing to version 2.2.5.
2 parents 16fbbbe + 1ad082f commit 534bebd

File tree

2 files changed

+127
-86
lines changed

2 files changed

+127
-86
lines changed

long/long-tests.ts

Lines changed: 66 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,68 +1,117 @@
11
/// <reference path="long.d.ts" />
22

3-
// --- commonjs ---
43
import Long = require("long");
5-
// --- browser ---
6-
//var Long = dcodeIO.Long;
74

8-
var val:dcodeIO.Long;
9-
var n:number;
10-
var b:boolean;
11-
var s:string;
5+
var val: Long;
6+
var n: number = 42;
7+
var b: boolean = true;
8+
var s: string = "1337";
129

10+
val = new Long(0xFFFFFFFF, 0x7FFFFFFF, true);
1311
val = new Long(0xFFFFFFFF, 0x7FFFFFFF);
12+
val = new Long(0xFFFFFFFF);
1413

15-
val = Long.from28Bits(0xFFFFFFF, 0xFFFFFFF, 0xFF);
16-
17-
val = Long.fromInt(-1, true);
1814
n = val.low;
1915
n = val.high;
2016
b = val.unsigned;
21-
s = val.toString();
2217

2318
val = val.add(val);
19+
val = val.add(n);
20+
val = val.add(s);
21+
2422
val = val.and(val);
25-
val = val.clone();
23+
val = val.and(n);
24+
val = val.and(s);
25+
2626
n = val.compare(val);
27+
n = val.compare(n);
28+
n = val.compare(s);
29+
2730
val = val.div(val);
31+
val = val.div(n);
32+
val = val.div(s);
33+
2834
b = val.equals(val);
35+
b = val.equals(n);
36+
b = val.equals(s);
37+
2938
n = val.getHighBits();
3039
n = val.getHighBitsUnsigned();
3140
n = val.getLowBits();
3241
n = val.getLowBitsUnsigned();
3342
n = val.getNumBitsAbs();
43+
3444
b = val.greaterThan(val);
45+
b = val.greaterThan(n);
46+
b = val.greaterThan(s);
47+
3548
b = val.greaterThanOrEqual(val);
49+
b = val.greaterThanOrEqual(n);
50+
b = val.greaterThanOrEqual(s);
51+
3652
b = val.isEven();
3753
b = val.isNegative();
3854
b = val.isOdd();
55+
b = val.isPositive();
3956
b = val.isZero();
57+
4058
b = val.lessThan(val);
59+
b = val.lessThan(n);
60+
b = val.lessThan(s);
61+
4162
b = val.lessThanOrEqual(val);
63+
b = val.lessThanOrEqual(n);
64+
b = val.lessThanOrEqual(s);
65+
4266
val = val.modulo(val);
67+
val = val.modulo(n);
68+
val = val.modulo(s);
69+
4370
val = val.multiply(val);
71+
val = val.multiply(n);
72+
val = val.multiply(s);
73+
4474
val = val.negate();
4575
val = val.not();
76+
4677
b = val.notEquals(val);
78+
b = val.notEquals(n);
79+
b = val.notEquals(s);
80+
4781
val = val.or(val);
82+
val = val.or(n);
83+
val = val.or(s);
84+
4885
val = val.shiftLeft(2);
86+
val = val.shiftLeft(val);
87+
4988
val = val.shiftRight(1);
89+
val = val.shiftRight(val);
90+
5091
val = val.shiftRightUnsigned(1);
92+
val = val.shiftRightUnsigned(val);
93+
5194
val = val.subtract(val);
95+
val = val.subtract(n);
96+
val = val.subtract(s);
97+
5298
n = val.toInt();
5399
n = val.toNumber();
54100
val = val.toSigned();
101+
102+
s = val.toString();
103+
s = val.toString(n);
104+
55105
val = val.toUnsigned();
106+
56107
val = val.xor(val);
108+
val = val.xor(n);
109+
val = val.xor(s);
57110

58-
val = Long.MAX_SIGNED_VALUE;
59111
val = Long.MAX_UNSIGNED_VALUE;
60112
val = Long.MAX_VALUE;
61-
val = Long.MIN_SIGNED_VALUE;
62-
val = Long.MIN_UNSIGNED_VALUE;
63113
val = Long.MIN_VALUE;
64114
val = Long.NEG_ONE;
65115
val = Long.ONE;
116+
val = Long.UZERO;
66117
val = Long.ZERO;
67-
68-

long/long.d.ts

Lines changed: 61 additions & 69 deletions
Original file line numberDiff line numberDiff line change
@@ -1,80 +1,72 @@
1-
// Type definitions for Long.js 1.1.2
1+
// Type definitions for Long.js v2.2.5
22
// Project: https://github.com/dcodeIO/Long.js
3-
// Definitions by: Toshihide Hara <https://github.com/kerug/>
3+
// Definitions by: Peter Kooijmans <https://github.com/peterkooijmans/>
44
// Definitions: https://github.com/borisyankov/DefinitelyTyped
55

6-
declare module dcodeIO {
6+
declare module "long" {
77

8-
interface LongStatic {
9-
new(low:number, high:number, unsigned?:boolean):Long;
8+
module Long {
9+
export var MAX_UNSIGNED_VALUE: Long;
10+
export var MAX_VALUE: Long;
11+
export var MIN_VALUE: Long;
12+
export var NEG_ONE: Long;
13+
export var ONE: Long;
14+
export var UONE: Long;
15+
export var UZERO: Long;
16+
export var ZERO: Long;
1017

11-
MAX_SIGNED_VALUE:Long;
12-
MAX_UNSIGNED_VALUE:Long;
13-
MAX_VALUE:Long;
14-
MIN_SIGNED_VALUE:Long;
15-
MIN_UNSIGNED_VALUE:Long;
16-
MIN_VALUE:Long;
17-
NEG_ONE:Long;
18-
ONE:Long;
19-
ZERO:Long;
18+
export function fromBits(lowBits: number, highBits: number, unsigned?: boolean): Long;
19+
export function fromInt(value: number, unsigned?: boolean): Long;
20+
export function fromNumber(value: number, unsigned?: boolean): Long;
21+
export function fromString(str: string, unsigned?: boolean | number, radix?: number): Long;
22+
export function fromValue(val: Long | number | string): Long;
2023

21-
from28Bits(part0:number, part1:number, part2:number, unsigned?:boolean):Long;
22-
fromBits(lowBits:number, highBits:number, unsigned?:boolean):Long;
23-
fromInt(value:number, unsigned?:boolean):Long;
24-
fromNumber(value:number, unsigned?:boolean):Long;
25-
fromString(str:string, unsigned?:boolean, radix?:number):Long;
26-
fromString(str:string, unsigned?:number, radix?:number):Long;
27-
fromString(str:string, unsigned?:any, radix?:number):Long;
28-
}
24+
export function isLong(obj: any): boolean;
25+
}
2926

30-
interface Long {
31-
high:number;
32-
low:number;
33-
unsigned:boolean;
27+
class Long {
28+
high: number;
29+
low: number;
30+
unsigned :boolean;
3431

35-
add(other:Long):Long;
36-
and(other:Long):Long;
37-
clone():Long;
38-
compare(other:Long):number;
39-
div(other:Long):Long;
40-
equals(other:Long):boolean;
41-
getHighBits():number;
42-
getHighBitsUnsigned():number;
43-
getLowBits():number;
44-
getLowBitsUnsigned():number;
45-
getNumBitsAbs():number;
46-
greaterThan(other:Long):boolean;
47-
greaterThanOrEqual(other:Long):boolean;
48-
isEven():boolean;
49-
isNegative():boolean;
50-
isOdd():boolean;
51-
isZero():boolean;
52-
lessThan(other:Long):boolean;
53-
lessThanOrEqual(other:Long):boolean;
54-
modulo(other:Long):Long;
55-
multiply(other:Long):Long;
56-
negate():Long;
57-
not():Long;
58-
notEquals(other:Long):boolean;
59-
or(other:Long):Long;
60-
shiftLeft(numBits:number):Long;
61-
shiftRight(numBits:number):Long;
62-
shiftRightUnsigned(numBits:number):Long;
63-
subtract(other:Long):Long;
64-
toInt():number;
65-
toNumber():number;
66-
toSigned():Long;
67-
toString(radix?:number):string;
68-
toUnsigned():Long;
69-
xor(other:Long):Long;
70-
}
32+
constructor(low: number, high?: number, unsigned?:boolean);
7133

72-
// for browser
73-
export var Long:LongStatic;
74-
}
34+
add(other: Long | number | string): Long;
35+
and(other: Long | number | string): Long;
36+
compare(other: Long | number | string): number;
37+
div(divisor: Long | number | string): Long;
38+
equals(other: Long | number | string): boolean;
39+
getHighBits(): number;
40+
getHighBitsUnsigned(): number;
41+
getLowBits(): number;
42+
getLowBitsUnsigned(): number;
43+
getNumBitsAbs(): number;
44+
greaterThan(other: Long | number | string): boolean;
45+
greaterThanOrEqual(other: Long | number | string): boolean;
46+
isEven(): boolean;
47+
isNegative(): boolean;
48+
isOdd(): boolean;
49+
isPositive(): boolean;
50+
isZero(): boolean;
51+
lessThan(other: Long | number | string): boolean;
52+
lessThanOrEqual(other: Long | number | string): boolean;
53+
modulo(divisor: Long | number | string): Long;
54+
multiply(multiplier: Long | number | string): Long;
55+
negate(): Long;
56+
not(): Long;
57+
notEquals(other: Long | number | string): boolean;
58+
or(other: Long | number | string): Long;
59+
shiftLeft(numBits: number | Long): Long;
60+
shiftRight(numBits: number | Long): Long;
61+
shiftRightUnsigned(numBits: number | Long): Long;
62+
subtract(other: Long | number | string): Long;
63+
toInt(): number;
64+
toNumber(): number;
65+
toSigned(): Long;
66+
toString(radix?: number): string;
67+
toUnsigned(): Long;
68+
xor(other: Long | number | string): Long;
69+
}
7570

76-
// for node, commonjs
77-
declare module "long" {
78-
var Long:dcodeIO.LongStatic;
79-
export = Long;
71+
export = Long;
8072
}

0 commit comments

Comments
 (0)