Update long.js typing to version 2.2.5.

This commit is contained in:
Peter Kooijmans
2015-06-24 15:51:37 +02:00
parent 6387999eb8
commit 1ad082faf4
2 changed files with 135 additions and 94 deletions

View File

@@ -1,68 +1,117 @@
/// <reference path="long.d.ts" />
// --- commonjs ---
import Long = require("long");
// --- browser ---
//var Long = dcodeIO.Long;
var val:dcodeIO.Long;
var n:number;
var b:boolean;
var s:string;
var val: Long;
var n: number = 42;
var b: boolean = true;
var s: string = "1337";
val = new Long(0xFFFFFFFF, 0x7FFFFFFF, true);
val = new Long(0xFFFFFFFF, 0x7FFFFFFF);
val = new Long(0xFFFFFFFF);
val = Long.from28Bits(0xFFFFFFF, 0xFFFFFFF, 0xFF);
val = Long.fromInt(-1, true);
n = val.low;
n = val.high;
b = val.unsigned;
s = val.toString();
val = val.add(val);
val = val.add(n);
val = val.add(s);
val = val.and(val);
val = val.clone();
val = val.and(n);
val = val.and(s);
n = val.compare(val);
n = val.compare(n);
n = val.compare(s);
val = val.div(val);
val = val.div(n);
val = val.div(s);
b = val.equals(val);
b = val.equals(n);
b = val.equals(s);
n = val.getHighBits();
n = val.getHighBitsUnsigned();
n = val.getLowBits();
n = val.getLowBitsUnsigned();
n = val.getNumBitsAbs();
b = val.greaterThan(val);
b = val.greaterThan(n);
b = val.greaterThan(s);
b = val.greaterThanOrEqual(val);
b = val.greaterThanOrEqual(n);
b = val.greaterThanOrEqual(s);
b = val.isEven();
b = val.isNegative();
b = val.isOdd();
b = val.isPositive();
b = val.isZero();
b = val.lessThan(val);
b = val.lessThan(n);
b = val.lessThan(s);
b = val.lessThanOrEqual(val);
b = val.lessThanOrEqual(n);
b = val.lessThanOrEqual(s);
val = val.modulo(val);
val = val.modulo(n);
val = val.modulo(s);
val = val.multiply(val);
val = val.multiply(n);
val = val.multiply(s);
val = val.negate();
val = val.not();
b = val.notEquals(val);
b = val.notEquals(n);
b = val.notEquals(s);
val = val.or(val);
val = val.or(n);
val = val.or(s);
val = val.shiftLeft(2);
val = val.shiftLeft(val);
val = val.shiftRight(1);
val = val.shiftRight(val);
val = val.shiftRightUnsigned(1);
val = val.shiftRightUnsigned(val);
val = val.subtract(val);
val = val.subtract(n);
val = val.subtract(s);
n = val.toInt();
n = val.toNumber();
val = val.toSigned();
val = val.toUnsigned();
val = val.xor(val);
val = Long.MAX_SIGNED_VALUE;
s = val.toString();
s = val.toString(n);
val = val.toUnsigned();
val = val.xor(val);
val = val.xor(n);
val = val.xor(s);
val = Long.MAX_UNSIGNED_VALUE;
val = Long.MAX_VALUE;
val = Long.MIN_SIGNED_VALUE;
val = Long.MIN_UNSIGNED_VALUE;
val = Long.MIN_VALUE;
val = Long.NEG_ONE;
val = Long.ONE;
val = Long.UZERO;
val = Long.ZERO;

142
long/long.d.ts vendored
View File

@@ -1,80 +1,72 @@
// Type definitions for Long.js 1.1.2
// Type definitions for Long.js v2.2.5
// Project: https://github.com/dcodeIO/Long.js
// Definitions by: Toshihide Hara <https://github.com/kerug/>
// Definitions by: Peter Kooijmans <https://github.com/peterkooijmans/>
// Definitions: https://github.com/borisyankov/DefinitelyTyped
declare module dcodeIO {
interface LongStatic {
new(low:number, high:number, unsigned?:boolean):Long;
MAX_SIGNED_VALUE:Long;
MAX_UNSIGNED_VALUE:Long;
MAX_VALUE:Long;
MIN_SIGNED_VALUE:Long;
MIN_UNSIGNED_VALUE:Long;
MIN_VALUE:Long;
NEG_ONE:Long;
ONE:Long;
ZERO:Long;
from28Bits(part0:number, part1:number, part2:number, unsigned?:boolean):Long;
fromBits(lowBits:number, highBits:number, unsigned?:boolean):Long;
fromInt(value:number, unsigned?:boolean):Long;
fromNumber(value:number, unsigned?:boolean):Long;
fromString(str:string, unsigned?:boolean, radix?:number):Long;
fromString(str:string, unsigned?:number, radix?:number):Long;
fromString(str:string, unsigned?:any, radix?:number):Long;
}
interface Long {
high:number;
low:number;
unsigned:boolean;
add(other:Long):Long;
and(other:Long):Long;
clone():Long;
compare(other:Long):number;
div(other:Long):Long;
equals(other:Long):boolean;
getHighBits():number;
getHighBitsUnsigned():number;
getLowBits():number;
getLowBitsUnsigned():number;
getNumBitsAbs():number;
greaterThan(other:Long):boolean;
greaterThanOrEqual(other:Long):boolean;
isEven():boolean;
isNegative():boolean;
isOdd():boolean;
isZero():boolean;
lessThan(other:Long):boolean;
lessThanOrEqual(other:Long):boolean;
modulo(other:Long):Long;
multiply(other:Long):Long;
negate():Long;
not():Long;
notEquals(other:Long):boolean;
or(other:Long):Long;
shiftLeft(numBits:number):Long;
shiftRight(numBits:number):Long;
shiftRightUnsigned(numBits:number):Long;
subtract(other:Long):Long;
toInt():number;
toNumber():number;
toSigned():Long;
toString(radix?:number):string;
toUnsigned():Long;
xor(other:Long):Long;
}
// for browser
export var Long:LongStatic;
}
// for node, commonjs
declare module "long" {
var Long:dcodeIO.LongStatic;
export = Long;
module Long {
export var MAX_UNSIGNED_VALUE: Long;
export var MAX_VALUE: Long;
export var MIN_VALUE: Long;
export var NEG_ONE: Long;
export var ONE: Long;
export var UONE: Long;
export var UZERO: Long;
export var ZERO: Long;
export function fromBits(lowBits: number, highBits: number, unsigned?: boolean): Long;
export function fromInt(value: number, unsigned?: boolean): Long;
export function fromNumber(value: number, unsigned?: boolean): Long;
export function fromString(str: string, unsigned?: boolean | number, radix?: number): Long;
export function fromValue(val: Long | number | string): Long;
export function isLong(obj: any): boolean;
}
class Long {
high: number;
low: number;
unsigned :boolean;
constructor(low: number, high?: number, unsigned?:boolean);
add(other: Long | number | string): Long;
and(other: Long | number | string): Long;
compare(other: Long | number | string): number;
div(divisor: Long | number | string): Long;
equals(other: Long | number | string): boolean;
getHighBits(): number;
getHighBitsUnsigned(): number;
getLowBits(): number;
getLowBitsUnsigned(): number;
getNumBitsAbs(): number;
greaterThan(other: Long | number | string): boolean;
greaterThanOrEqual(other: Long | number | string): boolean;
isEven(): boolean;
isNegative(): boolean;
isOdd(): boolean;
isPositive(): boolean;
isZero(): boolean;
lessThan(other: Long | number | string): boolean;
lessThanOrEqual(other: Long | number | string): boolean;
modulo(divisor: Long | number | string): Long;
multiply(multiplier: Long | number | string): Long;
negate(): Long;
not(): Long;
notEquals(other: Long | number | string): boolean;
or(other: Long | number | string): Long;
shiftLeft(numBits: number | Long): Long;
shiftRight(numBits: number | Long): Long;
shiftRightUnsigned(numBits: number | Long): Long;
subtract(other: Long | number | string): Long;
toInt(): number;
toNumber(): number;
toSigned(): Long;
toString(radix?: number): string;
toUnsigned(): Long;
xor(other: Long | number | string): Long;
}
export = Long;
}