"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
    return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const assert_1 = __importDefault(require("assert"));
const debug_1 = require("../../../../debug");
const Throw_1 = __importDefault(require("../../../../system/f/control/Throw"));
const Catch_1 = __importDefault(require("../../../../system/f/meta/Catch"));
const system_1 = require("../../../util/system");
const _catch = new Catch_1.default(system_1.system);
const _throw = new Throw_1.default(system_1.system);
_catch.play();
_throw.play();
false && (0, debug_1.watchUnitAndLog)(_catch);
false && (0, debug_1.watchUnitAndLog)(_throw);
_throw.push('message', 'bafum!');
assert_1.default.equal(_throw.getErr(), 'bafum!');
_catch.push('unit', _throw);
assert_1.default.equal(_throw.getErr(), null);
assert_1.default.equal(_throw.caughtErr(), 'bafum!');
assert_1.default.equal(_catch.peak('err'), 'bafum!');
assert_1.default.equal(_catch.take('err'), 'bafum!');
assert_1.default.equal(_throw.caughtErr(), null);
_throw.push('message', 'grrr!');
assert_1.default.equal(_throw.getErr(), null);
assert_1.default.equal(_throw.caughtErr(), 'grrr!');
assert_1.default.equal(_catch.peak('err'), 'grrr!');
_catch.takeInput('unit');
assert_1.default.equal(_catch.peak('err'), null);
assert_1.default.equal(_throw.getErr(), 'grrr!');
_catch.push('unit', _throw);
assert_1.default.equal(_throw.getErr(), null);
assert_1.default.equal(_throw.caughtErr(), 'grrr!');
assert_1.default.equal(_catch.peak('err'), 'grrr!');
assert_1.default.equal(_catch.take('err'), 'grrr!');
assert_1.default.equal(_throw.caughtErr(), null);
//# sourceMappingURL=Catch.js.map