Class: RFuse::Stat
- Inherits:
-
Object
- Object
- RFuse::Stat
- Defined in:
- lib/rfuse/stat.rb
Overview
Helper class to return from :getattr method
Instance Attribute Summary collapse
-
#atime ⇒ Integer, Time
See stat(2).
-
#blksize ⇒ Integer
See stat(2).
-
#blocks ⇒ Integer
See stat(2).
-
#ctime ⇒ Integer, Time
See stat(2).
-
#dev ⇒ Integer
See stat(2).
-
#gid ⇒ Integer
See stat(2).
-
#ino ⇒ Integer
See stat(2).
-
#mode ⇒ Integer
See stat(2).
-
#mtime ⇒ Integer, Time
See stat(2).
-
#nlink ⇒ Integer
See stat(2).
-
#rdev ⇒ Integer
See stat(2).
-
#size ⇒ Integer
See stat(2).
-
#uid ⇒ Integer
See stat(2).
Class Method Summary collapse
-
.const_missing(const) ⇒ Object
See FFI::Stat constants.
-
.directory(mode = 0, values = {}) ⇒ Stat
Representing a directory.
-
.file(mode = 0, values = {}) ⇒ Stat
Representing a regular file.
Instance Method Summary collapse
-
#initialize(type, permissions, values = {}) ⇒ Stat
constructor
A new instance of Stat.
Constructor Details
#initialize(type, permissions, values = {}) ⇒ Stat
Returns a new instance of Stat.
33 34 35 36 37 38 39 40 41 |
# File 'lib/rfuse/stat.rb', line 33 def initialize(type, , values = {}) values[:mode] = ((type & S_IFMT) | ( & 0o7777)) @uid, @gid, @size, @mode, @atime, @mtime, @ctime, @dev, @ino, @nlink, @rdev, @blksize, @blocks = Array.new( 13, 0 ) values.each_pair do |k, v| instance_variable_set("@#{k}", v) end end |
Instance Attribute Details
#atime ⇒ Integer, Time
Returns see stat(2).
31 32 33 |
# File 'lib/rfuse/stat.rb', line 31 def atime @atime end |
#blksize ⇒ Integer
Returns see stat(2).
28 29 30 |
# File 'lib/rfuse/stat.rb', line 28 def blksize @blksize end |
#blocks ⇒ Integer
Returns see stat(2).
28 29 30 |
# File 'lib/rfuse/stat.rb', line 28 def blocks @blocks end |
#ctime ⇒ Integer, Time
Returns see stat(2).
31 32 33 |
# File 'lib/rfuse/stat.rb', line 31 def ctime @ctime end |
#dev ⇒ Integer
Returns see stat(2).
28 29 30 |
# File 'lib/rfuse/stat.rb', line 28 def dev @dev end |
#gid ⇒ Integer
Returns see stat(2).
28 29 30 |
# File 'lib/rfuse/stat.rb', line 28 def gid @gid end |
#ino ⇒ Integer
Returns see stat(2).
28 29 30 |
# File 'lib/rfuse/stat.rb', line 28 def ino @ino end |
#mode ⇒ Integer
Returns see stat(2).
28 29 30 |
# File 'lib/rfuse/stat.rb', line 28 def mode @mode end |
#mtime ⇒ Integer, Time
Returns see stat(2).
31 32 33 |
# File 'lib/rfuse/stat.rb', line 31 def mtime @mtime end |
#nlink ⇒ Integer
Returns see stat(2).
28 29 30 |
# File 'lib/rfuse/stat.rb', line 28 def nlink @nlink end |
#rdev ⇒ Integer
Returns see stat(2).
28 29 30 |
# File 'lib/rfuse/stat.rb', line 28 def rdev @rdev end |
#size ⇒ Integer
Returns see stat(2).
28 29 30 |
# File 'lib/rfuse/stat.rb', line 28 def size @size end |
#uid ⇒ Integer
Returns see stat(2).
28 29 30 |
# File 'lib/rfuse/stat.rb', line 28 def uid @uid end |
Class Method Details
.const_missing(const) ⇒ Object
See FFI::Stat constants
6 7 8 9 |
# File 'lib/rfuse/stat.rb', line 6 def self.const_missing(const) return super unless FFI::Stat.const_defined?(const) FFI::Stat.const_get(const) end |
.directory(mode = 0, values = {}) ⇒ Stat
Returns representing a directory.
15 16 17 |
# File 'lib/rfuse/stat.rb', line 15 def self.directory(mode = 0, values = {}) new(S_IFDIR, mode, values) end |
.file(mode = 0, values = {}) ⇒ Stat
Returns representing a regular file.
23 24 25 |
# File 'lib/rfuse/stat.rb', line 23 def self.file(mode = 0, values = {}) new(S_IFREG, mode, values) end |