.
This commit is contained in:
		
							
								
								
									
										100
									
								
								qwen/nodejs/node_modules/pg-int8/index.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										100
									
								
								qwen/nodejs/node_modules/pg-int8/index.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,100 @@
 | 
			
		||||
'use strict';
 | 
			
		||||
 | 
			
		||||
// selected so (BASE - 1) * 0x100000000 + 0xffffffff is a safe integer
 | 
			
		||||
var BASE = 1000000;
 | 
			
		||||
 | 
			
		||||
function readInt8(buffer) {
 | 
			
		||||
	var high = buffer.readInt32BE(0);
 | 
			
		||||
	var low = buffer.readUInt32BE(4);
 | 
			
		||||
	var sign = '';
 | 
			
		||||
 | 
			
		||||
	if (high < 0) {
 | 
			
		||||
		high = ~high + (low === 0);
 | 
			
		||||
		low = (~low + 1) >>> 0;
 | 
			
		||||
		sign = '-';
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	var result = '';
 | 
			
		||||
	var carry;
 | 
			
		||||
	var t;
 | 
			
		||||
	var digits;
 | 
			
		||||
	var pad;
 | 
			
		||||
	var l;
 | 
			
		||||
	var i;
 | 
			
		||||
 | 
			
		||||
	{
 | 
			
		||||
		carry = high % BASE;
 | 
			
		||||
		high = high / BASE >>> 0;
 | 
			
		||||
 | 
			
		||||
		t = 0x100000000 * carry + low;
 | 
			
		||||
		low = t / BASE >>> 0;
 | 
			
		||||
		digits = '' + (t - BASE * low);
 | 
			
		||||
 | 
			
		||||
		if (low === 0 && high === 0) {
 | 
			
		||||
			return sign + digits + result;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		pad = '';
 | 
			
		||||
		l = 6 - digits.length;
 | 
			
		||||
 | 
			
		||||
		for (i = 0; i < l; i++) {
 | 
			
		||||
			pad += '0';
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		result = pad + digits + result;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	{
 | 
			
		||||
		carry = high % BASE;
 | 
			
		||||
		high = high / BASE >>> 0;
 | 
			
		||||
 | 
			
		||||
		t = 0x100000000 * carry + low;
 | 
			
		||||
		low = t / BASE >>> 0;
 | 
			
		||||
		digits = '' + (t - BASE * low);
 | 
			
		||||
 | 
			
		||||
		if (low === 0 && high === 0) {
 | 
			
		||||
			return sign + digits + result;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		pad = '';
 | 
			
		||||
		l = 6 - digits.length;
 | 
			
		||||
 | 
			
		||||
		for (i = 0; i < l; i++) {
 | 
			
		||||
			pad += '0';
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		result = pad + digits + result;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	{
 | 
			
		||||
		carry = high % BASE;
 | 
			
		||||
		high = high / BASE >>> 0;
 | 
			
		||||
 | 
			
		||||
		t = 0x100000000 * carry + low;
 | 
			
		||||
		low = t / BASE >>> 0;
 | 
			
		||||
		digits = '' + (t - BASE * low);
 | 
			
		||||
 | 
			
		||||
		if (low === 0 && high === 0) {
 | 
			
		||||
			return sign + digits + result;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		pad = '';
 | 
			
		||||
		l = 6 - digits.length;
 | 
			
		||||
 | 
			
		||||
		for (i = 0; i < l; i++) {
 | 
			
		||||
			pad += '0';
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		result = pad + digits + result;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	{
 | 
			
		||||
		carry = high % BASE;
 | 
			
		||||
		t = 0x100000000 * carry + low;
 | 
			
		||||
		digits = '' + t % BASE;
 | 
			
		||||
 | 
			
		||||
		return sign + digits + result;
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
module.exports = readInt8;
 | 
			
		||||
		Reference in New Issue
	
	Block a user