AnyMongo
view release on metacpan or search on metacpan
lib/AnyMongo/Compat.pm view on Meta::CPAN
package AnyMongo::Compat;
BEGIN {
$AnyMongo::Compat::VERSION = '0.03';
}
# ABSTRACT: Make better compatible with L<MongoDB>.
use strict;
use warnings;
use AnyMongo;
sub make_fake_isa {
my($fake_class) = @_;
return sub {
my ($self,$class) = @_;
return 1 if $class eq $fake_class;
return $self->SUPER::isa($class);
};
}
*MongoDB::BSON::char = *AnyMongo::BSON::char;
*MongoDB::BSON::use_boolean = *AnyMongo::BSON::use_boolean;
*MongoDB::BSON::utf8_flag_on = *AnyMongo::BSON::utf8_flag_on;
# fake these isa
*AnyMongo::Database::isa = make_fake_isa('MongoDB::Database');
*AnyMongo::Collection::isa = make_fake_isa('MongoDB::Collection');
*AnyMongo::Cursor::isa = make_fake_isa('MongoDB::Cursor');
*AnyMongo::BSON::Timestamp::isa = make_fake_isa('MongoDB::Timestamp');
*AnyMongo::BSON::OID::isa = make_fake_isa('MongoDB::OID');
*AnyMongo::BSON::Code::isa = make_fake_isa('MongoDB::Code');
*AnyMongo::BSON::MaxKey::isa = make_fake_isa('MongoDB::MaxKey');
*AnyMongo::BSON::MinKey::isa = make_fake_isa('MongoDB::MinKey');
package
MongoDB;
use parent 'AnyMongo';
package
MongoDB::Database;
use parent 'AnyMongo::Database';
package
MongoDB::Connection;
use parent 'AnyMongo::Connection';
package
MongoDB::Cursor;
use parent 'AnyMongo::Cursor';
package
MongoDB::Collection;
use parent 'AnyMongo::Collection';
package
MongoDB::BSON;
use parent 'AnyMongo::BSON';
package
MongoDB::Code;
use parent 'AnyMongo::BSON::Code';
package
MongoDB::OID;
use parent 'AnyMongo::BSON::OID';
package
MongoDB::Timestamp;
use parent 'AnyMongo::BSON::Timestamp';
1;
__END__
=pod
=head1 NAME
AnyMongo::Compat - Make better compatible with L<MongoDB>.
=head1 VERSION
version 0.03
=head1 AUTHORS
( run in 2.314 seconds using v1.01-cache-2.11-cpan-39bf76dae61 )