"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const Primitive_1 = require("../../../../Primitive");
const _ids_1 = require("../../../_ids");
class Push extends Primitive_1.Primitive {
    constructor(system) {
        super({
            i: ['a', 'b'],
            o: ['a'],
        }, {}, system, _ids_1.ID_PUSH);
    }
    onDataInputData(name, data) {
        if (!this._forwarding) {
            if (name === 'a') {
                if (this._i.b !== undefined) {
                    this._forward('a', this._i.a);
                }
            }
            else {
                if (this._i.a !== undefined) {
                    this._forward('a', this._i.a);
                }
            }
            this._backward('b');
        }
    }
    onDataOutputDrop(name) {
        // if (name === 'a') {
        this._backward('a');
        // }
    }
}
exports.default = Push;
//# sourceMappingURL=index.js.map