NAME

Git::Database::Role::ObjectWriter - Abstract role for Git backends that write objects

VERSION

version 0.012

SYNOPSIS

    package MyGitBackend;

    use Moo;
    use namespace::clean;

    with
      'Git::Database::Role::Backend',
      'Git::Database::Role::ObjectWriter';

    # implement the required methods
    sub put_object { ... }

DESCRIPTION

A backend doing the additional Git::Database::Role::ObjectWriter role is capable of writing the data from objects to the attached Git repository.

REQUIRED METHODS

put_object

    # a Git::Database::Object::Tree representing the empty tree
    my $tree = Git::Database::Object::Tree->new( content => '' );

    my $digest = $backend->put_object( $tree );

Given an object, put_object will write the data for the object in the underlying repository database, and return the digest for the object.

AUTHOR

Philippe Bruhat (BooK) <book@cpan.org>.

COPYRIGHT

Copyright 2016 Philippe Bruhat (BooK), all rights reserved.

LICENSE

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.