class MemFs::File::Stat
Attributes
entry[R]
Public Class Methods
new(path, dereference = false)
click to toggle source
# File lib/memfs/file/stat.rb, line 55 def initialize(path, dereference = false) entry = fs.find!(path) @entry = dereference ? entry.dereferenced : entry end
Public Instance Methods
blockdev?()
click to toggle source
# File lib/memfs/file/stat.rb, line 23 def blockdev? !!entry.block_device end
chardev?()
click to toggle source
# File lib/memfs/file/stat.rb, line 27 def chardev? !!entry.character_device end
directory?()
click to toggle source
# File lib/memfs/file/stat.rb, line 31 def directory? entry.is_a?(Fake::Directory) end
executable?()
click to toggle source
# File lib/memfs/file/stat.rb, line 35 def executable? user_executable? || group_executable? || !!world_executable? end
executable_real?()
click to toggle source
# File lib/memfs/file/stat.rb, line 39 def executable_real? user_executable_real? || group_executable_real? || !!world_executable? end
file?()
click to toggle source
# File lib/memfs/file/stat.rb, line 43 def file? entry.is_a?(Fake::File) end
ftype()
click to toggle source
# File lib/memfs/file/stat.rb, line 47 def ftype entry.type end
grpowned?()
click to toggle source
# File lib/memfs/file/stat.rb, line 51 def grpowned? gid == Process.egid end
owned?()
click to toggle source
# File lib/memfs/file/stat.rb, line 60 def owned? uid == Process.euid end
pipe?()
click to toggle source
# File lib/memfs/file/stat.rb, line 64 def pipe? false end
readable?()
click to toggle source
# File lib/memfs/file/stat.rb, line 68 def readable? user_readable? || group_readable? || !!world_readable? end
readable_real?()
click to toggle source
# File lib/memfs/file/stat.rb, line 72 def readable_real? user_readable_real? || group_readable_real? || !!world_readable? end
setgid?()
click to toggle source
# File lib/memfs/file/stat.rb, line 76 def setgid? !!(entry.mode & Fake::Entry::SETGID).nonzero? end
setuid?()
click to toggle source
# File lib/memfs/file/stat.rb, line 80 def setuid? !!(entry.mode & Fake::Entry::SETUID).nonzero? end
socket?()
click to toggle source
# File lib/memfs/file/stat.rb, line 84 def socket? false end
sticky?()
click to toggle source
# File lib/memfs/file/stat.rb, line 88 def sticky? !!(entry.mode & Fake::Entry::USTICK).nonzero? end
symlink?()
click to toggle source
# File lib/memfs/file/stat.rb, line 92 def symlink? entry.is_a?(Fake::Symlink) end
world_readable?()
click to toggle source
# File lib/memfs/file/stat.rb, line 96 def world_readable? entry.mode - 0100000 if (entry.mode & Fake::Entry::OREAD).nonzero? end
world_writable?()
click to toggle source
# File lib/memfs/file/stat.rb, line 100 def world_writable? entry.mode - 0100000 if (entry.mode & Fake::Entry::OWRITE).nonzero? end
writable?()
click to toggle source
# File lib/memfs/file/stat.rb, line 104 def writable? user_writable? || group_writable? || !!world_writable? end
writable_real?()
click to toggle source
# File lib/memfs/file/stat.rb, line 108 def writable_real? user_writable_real? || group_writable_real? || !!world_writable? end
zero?()
click to toggle source
# File lib/memfs/file/stat.rb, line 112 def zero? !!(entry.content && entry.content.empty?) end
Private Instance Methods
group_executable?()
click to toggle source
# File lib/memfs/file/stat.rb, line 118 def group_executable? grpowned? && !!(mode & Fake::Entry::GEXEC).nonzero? end
group_executable_real?()
click to toggle source
# File lib/memfs/file/stat.rb, line 122 def group_executable_real? Process.gid == gid && !!(mode & Fake::Entry::GEXEC).nonzero? end
group_readable?()
click to toggle source
# File lib/memfs/file/stat.rb, line 126 def group_readable? grpowned? && !!(mode & Fake::Entry::GREAD).nonzero? end
group_readable_real?()
click to toggle source
# File lib/memfs/file/stat.rb, line 130 def group_readable_real? Process.gid == gid && !!(mode & Fake::Entry::GREAD).nonzero? end
group_writable?()
click to toggle source
# File lib/memfs/file/stat.rb, line 134 def group_writable? grpowned? && !!(mode & Fake::Entry::GWRITE).nonzero? end
group_writable_real?()
click to toggle source
# File lib/memfs/file/stat.rb, line 138 def group_writable_real? Process.gid == gid && !!(mode & Fake::Entry::GWRITE).nonzero? end
user_executable?()
click to toggle source
# File lib/memfs/file/stat.rb, line 142 def user_executable? owned? && !!(mode & Fake::Entry::UEXEC).nonzero? end
user_executable_real?()
click to toggle source
# File lib/memfs/file/stat.rb, line 146 def user_executable_real? Process.uid == uid && !!(mode & Fake::Entry::UEXEC).nonzero? end
user_readable?()
click to toggle source
# File lib/memfs/file/stat.rb, line 150 def user_readable? owned? && !!(mode & Fake::Entry::UREAD).nonzero? end
user_readable_real?()
click to toggle source
# File lib/memfs/file/stat.rb, line 154 def user_readable_real? Process.uid == uid && !!(mode & Fake::Entry::UREAD).nonzero? end
user_writable?()
click to toggle source
# File lib/memfs/file/stat.rb, line 158 def user_writable? owned? && !!(mode & Fake::Entry::UWRITE).nonzero? end
user_writable_real?()
click to toggle source
# File lib/memfs/file/stat.rb, line 162 def user_writable_real? Process.uid == uid && !!(mode & Fake::Entry::UWRITE).nonzero? end
world_executable?()
click to toggle source
# File lib/memfs/file/stat.rb, line 166 def world_executable? entry.mode - 0100000 if (entry.mode & Fake::Entry::OEXEC).nonzero? end