ESM: Tidied up Rotate operations

This commit is contained in:
n1474335 2018-04-06 12:40:39 +00:00
parent af51090ebb
commit fad4713a90
6 changed files with 18 additions and 36 deletions

View File

@ -9,13 +9,6 @@
*/ */
/**
* Default values for rotation operations
*/
export const ROTATE_AMOUNT = 1;
export const ROTATE_CARRY = false;
/** /**
* Runs rotation operations across the input data. * Runs rotation operations across the input data.
* *
@ -64,7 +57,6 @@ export function rotl(b) {
* Rotates a byte array to the right by a specific amount as a whole, so that bits are wrapped * Rotates a byte array to the right by a specific amount as a whole, so that bits are wrapped
* from the end of the array to the beginning. * from the end of the array to the beginning.
* *
* @private
* @param {byteArray} data * @param {byteArray} data
* @param {number} amount * @param {number} amount
* @returns {byteArray} * @returns {byteArray}
@ -90,7 +82,6 @@ export function rotrCarry(data, amount) {
* Rotates a byte array to the left by a specific amount as a whole, so that bits are wrapped * Rotates a byte array to the left by a specific amount as a whole, so that bits are wrapped
* from the beginning of the array to the end. * from the beginning of the array to the end.
* *
* @private
* @param {byteArray} data * @param {byteArray} data
* @param {number} amount * @param {number} amount
* @returns {byteArray} * @returns {byteArray}

View File

@ -6,13 +6,6 @@
import Operation from "../Operation"; import Operation from "../Operation";
/**
* Default arguments for ROT13 operation
*/
const ROT13_AMOUNT = 13,
ROT13_LOWERCASE = true,
ROT13_UPPERCASE = true;
/** /**
* ROT13 operation. * ROT13 operation.
@ -34,23 +27,23 @@ class ROT13 extends Operation {
{ {
name: "Rotate lower case chars", name: "Rotate lower case chars",
type: "boolean", type: "boolean",
value: ROT13_LOWERCASE value: true
}, },
{ {
name: "Rotate upper case chars", name: "Rotate upper case chars",
type: "boolean", type: "boolean",
value: ROT13_UPPERCASE value: true
}, },
{ {
name: "Amount", name: "Amount",
type: "number", type: "number",
value: ROT13_AMOUNT value: 13
}, },
]; ];
} }
/** /**
* @param {string} input * @param {byteArray} input
* @param {Object[]} args * @param {Object[]} args
* @returns {byteArray} * @returns {byteArray}
*/ */

View File

@ -6,11 +6,6 @@
import Operation from "../Operation"; import Operation from "../Operation";
/**
* Default argument for ROT47 operation
*/
const ROT47_AMOUNT = 47;
/** /**
* ROT47 operation. * ROT47 operation.
@ -32,13 +27,13 @@ class ROT47 extends Operation {
{ {
name: "Amount", name: "Amount",
type: "number", type: "number",
value: ROT47_AMOUNT value: 47
}, },
]; ];
} }
/** /**
* @param {string} input * @param {byteArray} input
* @param {Object[]} args * @param {Object[]} args
* @returns {byteArray} * @returns {byteArray}
*/ */

View File

@ -5,7 +5,8 @@
*/ */
import Operation from "../Operation"; import Operation from "../Operation";
import { rot, rotl, rotlCarry, ROTATE_AMOUNT, ROTATE_CARRY } from "../lib/Rotate"; import {rot, rotl, rotlCarry} from "../lib/Rotate";
/** /**
* Rotate left operation. * Rotate left operation.
@ -27,18 +28,18 @@ class RotateLeft extends Operation {
{ {
name: "Amount", name: "Amount",
type: "number", type: "number",
value: ROTATE_AMOUNT value: 1
}, },
{ {
name: "Carry through", name: "Carry through",
type: "boolean", type: "boolean",
value: ROTATE_CARRY value: false
} }
]; ];
} }
/** /**
* @param {string} input * @param {byteArray} input
* @param {Object[]} args * @param {Object[]} args
* @returns {byteArray} * @returns {byteArray}
*/ */

View File

@ -5,7 +5,8 @@
*/ */
import Operation from "../Operation"; import Operation from "../Operation";
import { rot, rotr, rotrCarry, ROTATE_AMOUNT, ROTATE_CARRY } from "../lib/Rotate"; import {rot, rotr, rotrCarry} from "../lib/Rotate";
/** /**
* Rotate right operation. * Rotate right operation.
@ -27,18 +28,18 @@ class RotateRight extends Operation {
{ {
name: "Amount", name: "Amount",
type: "number", type: "number",
value: ROTATE_AMOUNT value: 1
}, },
{ {
name: "Carry through", name: "Carry through",
type: "boolean", type: "boolean",
value: ROTATE_CARRY value: false
} }
]; ];
} }
/** /**
* @param {string} input * @param {byteArray} input
* @param {Object[]} args * @param {Object[]} args
* @returns {byteArray} * @returns {byteArray}
*/ */

View File

@ -1,5 +1,5 @@
/** /**
* Base64 tests. * Rotate tests.
* *
* @author Matt C [matt@artemisbot.uk] * @author Matt C [matt@artemisbot.uk]
* *
@ -8,6 +8,7 @@
*/ */
import TestRegister from "../../TestRegister"; import TestRegister from "../../TestRegister";
TestRegister.addTests([ TestRegister.addTests([
{ {
name: "Rotate left: nothing", name: "Rotate left: nothing",