diff options
Diffstat (limited to 'ext/pathname/pathname.c')
-rw-r--r-- | ext/pathname/pathname.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/ext/pathname/pathname.c b/ext/pathname/pathname.c index cc1fd8c678..92c09555ee 100644 --- a/ext/pathname/pathname.c +++ b/ext/pathname/pathname.c @@ -905,6 +905,18 @@ path_rmdir(VALUE self) } /* + * See <tt>Dir.open</tt>. + */ +static VALUE +path_opendir(VALUE self) +{ + VALUE args[1]; + + args[0] = get_strpath(self); + return rb_block_call(rb_cDir, rb_intern("open"), 1, args, 0, 0); +} + +/* * == Pathname * * Pathname represents a pathname which locates a file in a filesystem. @@ -1163,4 +1175,5 @@ Init_pathname() rb_define_method(rb_cPathname, "entries", path_entries, 0); rb_define_method(rb_cPathname, "mkdir", path_mkdir, -1); rb_define_method(rb_cPathname, "rmdir", path_rmdir, 0); + rb_define_method(rb_cPathname, "opendir", path_opendir, 0); } |