Add Mouse::Util::english_list()
gfx [Tue, 22 Sep 2009 05:14:09 +0000 (14:14 +0900)]
lib/Mouse/Util.pm

index eb72c43..f9f2181 100644 (file)
@@ -9,6 +9,7 @@ our @EXPORT_OK = qw(
     find_meta
     does_role
     resolve_metaclass_alias
+    english_list
 
     load_class
     is_class_loaded
@@ -261,6 +262,19 @@ sub apply_all_roles {
     return;
 }
 
+# taken from Moose::Util 0.90
+sub english_list {
+    return $_[0] if @_ == 1;\r
+
+    my @items = sort @_;\r
+\r
+    return "$items[0] and $items[1]" if @items == 2;\r
+\r
+    my $tail = pop @items;\r
+\r
+    return join q{, }, @items, "and $tail";\r
+}
+
 sub not_supported{
     my($feature) = @_;