public function map(callable $mapper, callable $reverseMapper, IType $processedType)
    {
        return $this->process(new CustomProcessor($processedType, $mapper, $reverseMapper));
    }
public function map(callable $mapper, callable $reverseMapper, IType $processedType)
    {
        return $this->process(new CustomProcessor($processedType, $mapper, $reverseMapper));
    }
public function map ( callable $ mapper , callable $ reverseMapper , IType $ processedType ) { return $ this -> process ( new CustomProcessor ( $ processedType , $ mapper , $ reverseMapper ) ) ; }
Maps the inputted value according to the supplied callback.

Example:
<code>
->map(function ($input) {
return $input . '-abc';
})
</code>

@param callable $mapper
@param callable $reverseMapper
@param IType    $processedType

@return static
Maps the inputted value according to the supplied callback .