refactor(core): Improve code readability in core.js
@@ -97,34 +97,33 @@ SharedQueue Binary Layout
}
function getMeta(index) {
- if (index < numRecords()) {
+ if (index >= numRecords()) {
+ return null;
+ }
const buf = shared32[INDEX_OFFSETS + 2 * index];
const opId = shared32[INDEX_OFFSETS + 2 * index + 1];
return [opId, buf];
- } else {
- return null;
- }
}
function getOffset(index) {
- if (index < numRecords()) {
+ if (index >= numRecords()) {
+ return null;
+ }
if (index == 0) {
return HEAD_INIT;
- } else {
+ }
const prevEnd = shared32[INDEX_OFFSETS + 2 * (index - 1)];
return (prevEnd + 3) & ~3;
}
- } else {
- return null;
- }
- }
function push(opId, buf) {
const off = head();
const end = off + buf.byteLength;
const alignedEnd = (end + 3) & ~3;
const index = numRecords();
- if (alignedEnd > shared32.byteLength || index >= MAX_RECORDS) {
+ const shouldNotPush = alignedEnd > shared32.byteLength ||
+ index >= MAX_RECORDS;
+ if (shouldNotPush) {
// console.log("shared_queue.js push fail");
return false;
}
@@ -170,7 +169,8 @@ SharedQueue Binary Layout
if (buf) {
// This is the overflow_response case of deno::JsRuntime::poll().
asyncHandlers[opId](buf);
- } else {
+ return;
+ }
while (true) {
const opIdBuf = shift();
if (opIdBuf == null) {
@@ -180,7 +180,6 @@ SharedQueue Binary Layout
asyncHandlers[opIdBuf[0]](opIdBuf[1]);
}
}
- }
function dispatch(opName, control, ...zeroCopy) {
return send(opsCache[opName], control, ...zeroCopy);
@@ -214,7 +213,7 @@ SharedQueue Binary Layout
function processResponse(res) {
if ("ok" in res) {
return res.ok;
- } else {
+ }
const ErrorClass = getErrorClass(res.err.className);
if (!ErrorClass) {
throw new Error(
@@ -223,7 +222,6 @@ SharedQueue Binary Layout
}
throw new ErrorClass(res.err.message);
}
- }
async function jsonOpAsync(opName, args = {}, ...zeroCopy) {
setAsyncHandler(opsCache[opName], jsonOpAsyncHandler);
