Class: File
- Includes:
- IO::Readable, IO::Writable
- Defined in:
- opal/stdlib/nodejs/file.rb,
opal/stdlib/nashorn/file.rb
Instance Attribute Summary collapse
-
#path ⇒ Object
readonly
Returns the value of attribute path.
Class Method Summary collapse
- .basename(path, ext = undefined) ⇒ Object
- .directory?(path) ⇒ Boolean
- .dirname(path) ⇒ Object
- .exist?(path) ⇒ Boolean
- .file?(path) ⇒ Boolean
- .join(*paths) ⇒ Object
- .open(path, flags) ⇒ Object
- .read(path) ⇒ Object
- .realpath(pathname, dir_string = nil, cache = nil, &block) ⇒ Object
- .size(path) ⇒ Object
- .write(path, data) ⇒ Object
Instance Method Summary collapse
- #close ⇒ Object
- #flush ⇒ Object
-
#initialize(path, flags) ⇒ File
constructor
Instance Methods.
- #write(string) ⇒ Object
Constructor Details
#initialize(path, flags) ⇒ File
Instance Methods
82 83 84 85 86 87 |
# File 'opal/stdlib/nodejs/file.rb', line 82 def initialize(path, flags) flags = flags.gsub(/b/, '') @path = path @flags = flags @fd = `__fs__.openSync(path, flags)` end |
Instance Attribute Details
#path ⇒ Object (readonly)
Returns the value of attribute path
89 90 91 |
# File 'opal/stdlib/nodejs/file.rb', line 89 def path @path end |
Class Method Details
.basename(path, ext = undefined) ⇒ Object
37 38 39 |
# File 'opal/stdlib/nodejs/file.rb', line 37 def self.basename(path, ext = undefined) `__path__.basename(#{path}, #{ext})` end |
.directory?(path) ⇒ Boolean
49 50 51 52 |
# File 'opal/stdlib/nodejs/file.rb', line 49 def self.directory? path return nil unless exist? path `!!__fs__.lstatSync(path).isDirectory()` end |
.dirname(path) ⇒ Object
41 42 43 |
# File 'opal/stdlib/nodejs/file.rb', line 41 def self.dirname(path) `__path__.dirname(#{path})` end |
.exist?(path) ⇒ Boolean
19 20 21 |
# File 'opal/stdlib/nodejs/file.rb', line 19 def self.exist? path `__fs__.existsSync(#{path})` end |
.file?(path) ⇒ Boolean
54 55 56 57 |
# File 'opal/stdlib/nodejs/file.rb', line 54 def self.file? path return nil unless exist? path `!!__fs__.lstatSync(path).isFile()` end |
.join(*paths) ⇒ Object
45 46 47 |
# File 'opal/stdlib/nodejs/file.rb', line 45 def self.join(*paths) `__path__.join.apply(__path__, #{paths})` end |
.open(path, flags) ⇒ Object
64 65 66 67 68 69 70 71 72 73 74 75 |
# File 'opal/stdlib/nodejs/file.rb', line 64 def self.open path, flags file = new(path, flags) if block_given? begin yield(file) ensure file.close end else file end end |
.read(path) ⇒ Object
10 11 12 |
# File 'opal/stdlib/nodejs/file.rb', line 10 def self.read path `__fs__.readFileSync(#{path}).toString()` end |
.realpath(pathname, dir_string = nil, cache = nil, &block) ⇒ Object
23 24 25 26 27 28 29 30 31 32 33 34 35 |
# File 'opal/stdlib/nodejs/file.rb', line 23 def self.realpath(pathname, dir_string = nil, cache = nil, &block) pathname = join(dir_string, pathname) if dir_string if block_given? ` __fs__.realpath(#{pathname}, #{cache}, function(error, realpath){ if (error) #{raise error.} else #{block.call(`realpath`)} }) ` else `__fs__.realpathSync(#{pathname}, #{cache})` end end |
.size(path) ⇒ Object
59 60 61 62 |
# File 'opal/stdlib/nodejs/file.rb', line 59 def self.size path return nil unless exist? path `__fs__.lstatSync(path).size` end |
.write(path, data) ⇒ Object
14 15 16 17 |
# File 'opal/stdlib/nodejs/file.rb', line 14 def self.write path, data `__fs__.writeFileSync(#{path}, #{data})` data.size end |
Instance Method Details
#close ⇒ Object
99 100 101 |
# File 'opal/stdlib/nodejs/file.rb', line 99 def close `__fs__.closeSync(#{@fd})` end |
#flush ⇒ Object
95 96 97 |
# File 'opal/stdlib/nodejs/file.rb', line 95 def flush `__fs__.fsyncSync(#@fd)` end |
#write(string) ⇒ Object
91 92 93 |
# File 'opal/stdlib/nodejs/file.rb', line 91 def write string `__fs__.writeSync(#{@fd}, #{string})` end |