package Git::Raw::Blob;
$Git::Raw::Blob::VERSION = '0.87';
use strict;
use warnings;
use overload
	'""'       => sub { return $_[0] -> id },
	fallback   => 1;

use Git::Raw;

=head1 NAME

Git::Raw::Blob - Git blob class

=head1 VERSION

version 0.87

=head1 DESCRIPTION

A L<Git::Raw::Blob> represents a Git blob.

B<WARNING>: The API of this module is unstable and may change without warning
(any change will be appropriately documented in the changelog).

=head1 METHODS

=head2 create( $repo, $buffer )

Create a new blob from the given buffer.

=head2 lookup( $repo, $id )

Retrieve the blob corresponding to C<$id>. This function is pretty much the
same as C<$repo-E<gt>lookup($id)> except that it only returns blobs. If the blob
doesn't exist, this function wil return C<undef>.

=head2 owner( )

Retrieve the L<Git::Raw::Repository> owning the blob.

=head2 content( )

Retrieve the raw content of a blob.

=head2 size( )

Retrieve the size of the raw content of a blob.

=head2 id( )

Return the raw ID (the SHA-1 hash) of the blob as a string.

=head2 is_binary( )

Determine if the blob content is most certainly binary or not.

=head2 is_blob( )

Returns true.

=cut

=head2 is_tree( )

Returns false.

=cut

=head1 AUTHOR

Alessandro Ghedini <alexbio@cpan.org>

=head1 LICENSE AND COPYRIGHT

Copyright 2012 Alessandro Ghedini.

This program is free software; you can redistribute it and/or modify it
under the terms of either: the GNU General Public License as published
by the Free Software Foundation; or the Artistic License.

See http://dev.perl.org/licenses/ for more information.

=cut

1; # End of Git::Raw::Blob
