@abaplint/runtime
Version:
Transpiler - Runtime
18 lines • 710 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.bitxor = bitxor;
/*eslint no-bitwise: ["error", { "allow": ["^"] }] */
const types_1 = require("../types");
const _bit_operations_1 = require("./_bit_operations");
function bitxor(left, right) {
let xor = "";
const chunks = (0, _bit_operations_1.get_bit_operation_chunks)(left, right);
// eslint-disable-next-line no-cond-assign
for (let i = 0, chunk; chunk = chunks[i]; i++) {
xor = xor + (chunk.leftChunk ^ chunk.rightChunk).toString(16).toUpperCase().padStart(chunk.chunkLen, "0");
}
const ret = new types_1.XString();
ret.set(xor);
return ret;
}
//# sourceMappingURL=bit-xor.js.map