MCPcopy Create free account
hub / github.com/bewcloud/bewcloud / read

Function read

lib/models/dav.js:1798–1829  ·  view source on GitHub ↗
(buffer, offset, isLE, mLen, nBytes)

Source from the content-addressed store, hash-verified

1796}
1797
1798function read (buffer, offset, isLE, mLen, nBytes) {
1799 var e, m;
1800 var eLen = nBytes * 8 - mLen - 1;
1801 var eMax = (1 << eLen) - 1;
1802 var eBias = eMax >> 1;
1803 var nBits = -7;
1804 var i = isLE ? (nBytes - 1) : 0;
1805 var d = isLE ? -1 : 1;
1806 var s = buffer[offset + i];
1807
1808 i += d;
1809
1810 e = s & ((1 << (-nBits)) - 1);
1811 s >>= (-nBits);
1812 nBits += eLen;
1813 for (; nBits > 0; e = e * 256 + buffer[offset + i], i += d, nBits -= 8) {}
1814
1815 m = e & ((1 << (-nBits)) - 1);
1816 e >>= (-nBits);
1817 nBits += mLen;
1818 for (; nBits > 0; m = m * 256 + buffer[offset + i], i += d, nBits -= 8) {}
1819
1820 if (e === 0) {
1821 e = 1 - eBias;
1822 } else if (e === eMax) {
1823 return m ? NaN : ((s ? -1 : 1) * Infinity)
1824 } else {
1825 m = m + Math.pow(2, mLen);
1826 e = e - eBias;
1827 }
1828 return (s ? -1 : 1) * m * Math.pow(2, e - mLen)
1829}
1830
1831function write (buffer, value, offset, isLE, mLen, nBytes) {
1832 var e, m, c;

Callers 2

arrayIndexOfFunction · 0.85
dav.jsFile · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected