<?php
namespace nur\mapper\base\impl;

use nur\mapper\base\Mapper;

class Add2Mapper extends Mapper {
  function __construct(int $a, ?int $b = null, ?int $c = null, ?iterable $source = null) {
    parent::__construct($source);
    $amount = $a;
    if ($b !== null) $amount += $b;
    if ($c !== null) $amount += $c;
    $this->amount = $amount;
  }

  private $amount;

  function mapper($item) {
    return $item + $this->amount;
  }
}