Class: FileStr

Inherits:
String show all
Includes:
FileStrModule
Defined in:
lib/filestr.rb,
lib/version.rb

Overview

Enable use of File, Dir, and FileUtils class methods straight from FileStr/String objects.

Constant Summary collapse

VERSION =
"0.0.1"
@@fileStrSupport =

Supported methods from File, Dir, and FileUtils.

{
     # File Methods from IO.
    :f_binread          => File,
    :f_binwrite         => File,
    :f_copy_stream      => File,
    # :for_fd => File, # NA
    :f_foreach          => File,
    # :new => File,    # NA
    # :open => File,   # NA
    # :pipe => File,   # NA
    # :popen => File,  # NA
    :f_read             => File,
    :f_readlines        => File,
    # :select => File, # NA
    :f_sysopen          => File,
    # :try_convert => File, # NA
    :f_write            => File,
     # File Methods.
    :f_absolute_path    => File,
    :f_atime            => File,
    :f_basename         => File,
    :f_birthtime        => File,
    :f_blockdev?        => File,
    :f_chardev?         => File,
    # :chmod => File, # s-version
    # :chown => File, # s-version
    :f_ctime            => File,
    :f_delete           => File,
    :f_directory?       => File,
    :f_dirname          => File,
    :f_executable?      => File,
    :f_executable_real? => File,
    :f_exist?           => File,
    :f_exists?          => File,
    :f_expand_path      => File,
    :f_extname          => File,
    :f_filename         => File,
    :f_file?            => File,
    # :fnmatch => File,  # s-version
    # :fnmatch? => File, # NA
    :f_ftype            => File,
    :f_grpowned?        => File,
    :f_identical?       => File,
    :f_join             => File,
    # :lchmod => File,
    # :lchown => File,
    :f_link             => File,
    :f_lstat            => File,
    # :mkfifo => File, # Unknown
    :f_mtime            => File,
    :f_new              => File,
    :f_open             => File,
    :f_owned?           => File,
    :f_path             => File,
    :f_pipe?            => File,
    :f_readable?        => File,
    :f_readable_real?   => File,
    :f_readlink         => File,
    :f_realdirpath      => File,
    :f_realpath         => File,
    :f_rename           => File,
    :f_setgid?          => File,
    :f_setuid?          => File,
    :f_size             => File,
    :f_size?            => File,
    :f_socket?          => File,
    :f_split            => File,
    :f_stat             => File,
    :f_sticky?          => File,
    :f_symlink          => File,
    :f_symlink?         => File,
    :f_truncate         => File,
    # :umask => File, # NA
    :f_unlink           => File,
    # :utime => File, # NA
    :f_world_readable?  => File,
    :f_world_writable?  => File,
    :f_writable?        => File,
    :f_writable_real?   => File,
    :f_zero?            => File,
     # Dir Methods.
    :d_chdir            => Dir,
    :d_chroot           => Dir,
    :d_delete           => Dir,
    :d_entries          => Dir,
    :d_exist?           => Dir,
    :d_exists?          => Dir,
    :d_foreach          => Dir,
    # :getwd => Dir, # NA
    # :glob => Dir,  # s-version
    # :home => Dir,  # NA
    :d_mkdir            => Dir,
    :d_new              => Dir,
    :d_open             => Dir,
    # :pwd => Dir,   # NA
    :d_rmdir            => Dir,
    :d_unlink           => Dir,
     # FileUtils Methods (selection).
    :u_cd               => FileUtils,
    :u_cmp              => FileUtils,
    :u_mkdir_p          => FileUtils,
    :u_ln_s             => FileUtils,
    :u_cp               => FileUtils,
    :u_cp_r             => FileUtils,
    :u_mv               => FileUtils,
    :u_rm               => FileUtils,
    :u_rm_f             => FileUtils,
    :u_rm_r             => FileUtils,
    :u_rm_rf            => FileUtils,
    :u_touch            => FileUtils,
    :u_uptodate?        => FileUtils,
}

Class Method Summary collapse

Methods included from FileStrModule

#method_missing, #s_chmod, #s_chown, #s_fnmatch, #s_glob

Methods inherited from String

fileStr, #toFileStr

Dynamic Method Handling

This class handles dynamic methods through the method_missing method in the class FileStrModule

Class Method Details

.extend(klass = String) ⇒ Object

Extend a class (String) with FileStr features.

Parameters:

  • klass (Constant) (defaults to: String)

    Class to extend.



78
79
80
# File 'lib/filestr.rb', line 78

def FileStr.extend( klass = String )
    klass.send( :include, FileStrModule )
end

.supportObject

Return hash describing FileStr provided File/Dir support.



83
84
85
# File 'lib/filestr.rb', line 83

def FileStr.support
    @@fileStrSupport
end

.versionObject



3
4
5
# File 'lib/version.rb', line 3

def FileStr.version
    FileStr::VERSION
end