MCPcopy Create free account
hub / github.com/apache/fory / writeVarInt64

Method writeVarInt64

javascript/packages/core/lib/writer/index.ts:441–454  ·  view source on GitHub ↗
(v: bigint | number)

Source from the content-addressed store, hash-verified

439 }
440
441 writeVarInt64(v: bigint | number) {
442 if (typeof v !== "bigint") {
443 if (Number.isSafeInteger(v)) {
444 this.writeVarUInt64Number(v >= 0 ? v * 2 : -v * 2 - 1);
445 return;
446 }
447 v = BigInt(v);
448 } else if (v >= MIN_SAFE_BIGINT && v <= MAX_SAFE_BIGINT) {
449 const value = Number(v);
450 this.writeVarUInt64Number(value >= 0 ? value * 2 : -value * 2 - 1);
451 return;
452 }
453 this.writeVarUInt64((v << 1n) ^ (v >> 63n));
454 }
455
456 writeVarUInt64(val: bigint | number) {
457 if (typeof val !== "bigint") {

Callers 1

writeSliInt64Method · 0.95

Calls 3

writeVarUInt64NumberMethod · 0.95
writeVarUInt64Method · 0.95
NumberClass · 0.85

Tested by

no test coverage detected