[paludis-commits] r4079 - in trunk: . ruby
rbrown at svn.pioto.org
rbrown at svn.pioto.org
Sat Dec 15 21:22:52 UTC 2007
Author: rbrown
Date: 2007-12-15 21:22:51 +0000 (Sat, 15 Dec 2007)
New Revision: 4079
Modified:
trunk/ChangeLog
trunk/ruby/package_database.cc
trunk/ruby/package_database_TEST.rb
Log:
(ruby) Add PackageDatabase.has_repository_named?
Modified: trunk/ChangeLog
===================================================================
--- trunk/ChangeLog 2007-12-15 19:25:10 UTC (rev 4078)
+++ trunk/ChangeLog 2007-12-15 21:22:51 UTC (rev 4079)
@@ -5,6 +5,10 @@
only listed in SVN log. For a summary of what has changed between releases,
see the NEWS file. This file is occasionally pruned to ChangeLog.old.bz2.
+2007-12-13 Richard Brown
+
+ * ruby/: (ruby) Add PackageDatabase.has_repository_named?
+
2007-12-15 Piotr Jaroszyński
* paludis/repositories/e/ebuild_id.cc: Don't check the EAPI if not
Modified: trunk/ruby/package_database.cc
===================================================================
--- trunk/ruby/package_database.cc 2007-12-15 19:25:10 UTC (rev 4078)
+++ trunk/ruby/package_database.cc 2007-12-15 21:22:51 UTC (rev 4079)
@@ -204,6 +204,28 @@
}
}
+ /*
+ * call-seq:
+ * has_repository_named?(repository_name) -> true or false
+ *
+ * Do we have a named repository?
+ */
+ VALUE
+ package_database_has_repository_named(VALUE self, VALUE name)
+ {
+ try
+ {
+ tr1::shared_ptr<PackageDatabase> * self_ptr;
+ Data_Get_Struct(self, tr1::shared_ptr<PackageDatabase>, self_ptr);
+
+ return ((*self_ptr)->has_repository_named(RepositoryName(StringValuePtr(name)))) ? true : false;
+ }
+ catch (const std::exception & e)
+ {
+ exception_to_ruby_exception(e);
+ }
+ }
+
void do_register_package_database()
{
/*
@@ -224,6 +246,8 @@
RUBY_FUNC_CAST(&package_database_fetch_repository), 1);
rb_define_method(c_package_database, "more_important_than",
RUBY_FUNC_CAST(&package_database_more_important_than), 2);
+ rb_define_method(c_package_database, "has_repository_named?",
+ RUBY_FUNC_CAST(&package_database_has_repository_named), 1);
/*
* Document-module: Paludis::QueryOrder
Modified: trunk/ruby/package_database_TEST.rb
===================================================================
--- trunk/ruby/package_database_TEST.rb 2007-12-15 19:25:10 UTC (rev 4078)
+++ trunk/ruby/package_database_TEST.rb 2007-12-15 21:22:51 UTC (rev 4079)
@@ -232,6 +232,12 @@
assert db.more_important_than('testrepo', 'virtuals')
assert ! db.more_important_than('virtuals', 'testrepo')
end
+
+ def test_has_repository_named?
+ assert db.has_repository_named? 'testrepo'
+ assert db.has_repository_named? 'virtuals'
+ assert ! db.has_repository_named?('foobarbaz')
+ end
end
end
More information about the paludis-commits
mailing list