# Code coverage report for RxJS/dist/cjs/util/Map.js

## Statements: 16.13% (5 / 31) Branches: 12.5% (1 / 8) Functions: 0% (0 / 6) Lines: 16.13% (5 / 31) Ignored: none

All files » RxJS/dist/cjs/util/ » Map.js

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46

    1

    1

    1
    1

    1'use strict';

    exports.__esModule = true;

    var _root = require('./root');

    exports['default'] = _root.root.Map || (function () {
        function Map() {
            this.size = 0;
            this._values = [];
            this._keys = [];
        }
        Map.prototype['delete'] = function (key) {
            var i = this._keys.indexOf(key);
            if (i === -1) {
                return false;
            }
            this._values.splice(i, 1);
            this._keys.splice(i, 1);
            this.size--;
            return true;
        };
        Map.prototype.get = function (key) {
            var i = this._keys.indexOf(key);
            return i === -1 ? undefined : this._values[i];
        };
        Map.prototype.set = function (key, value) {
            var i = this._keys.indexOf(key);
            if (i === -1) {
                this._keys.push(key);
                this._values.push(value);
                this.size++;
            } else {
                this._values[i] = value;
            }
            return this;
        };
        Map.prototype.forEach = function (cb, thisArg) {
            for (var i = 0; i < this.size; i++) {
                cb.call(thisArg, this._values[i], this._keys[i]);
            }
        };
        return Map;
    })();

    module.exports = exports['default'];