NAME

Catmandu::Fix::Builder - Base role for Catmandu fixes

DESCRIPTION

This role expects a _build_fixer method that produces a coderef that transforms the data. Used in combination with Catmandu::Path implementations, data manipulations can be described in a relatively high-level way. Most fixes shipped with Catmandu work this way and can be used as a starting point to write your own fixes.

SYNOPSIS

    package Catmandu::Fix::my_fix;

    use Catmandu::Sane;
    use Moo;

    with 'Catmandu::Fix::Builder';

    sub _build_fixer {
        sub {
            my ($data) = @_;
            $data->{foo} = 'bar';
            $data;
        }
    }