コード例 #1
0
ファイル: IoOps.cs プロジェクト: ltwlf/IronSP
        public static int SysOpen(RubyClass /*!*/ self, [NotNull] MutableString path, [Optional] MutableString mode, [Optional] int perm)
        {
            if (RubyFileOps.DirectoryExists(self.Context, path))
            {
                // TODO: What file descriptor should be returned for a directory?
                return(-1);
            }
            RubyIO io       = new RubyFile(self.Context, path.ToString(), IOModeEnum.Parse(mode));
            int    fileDesc = io.GetFileDescriptor();

            io.Close();
            return(fileDesc);
        }
コード例 #2
0
 public static bool Exists(RubyModule /*!*/ self, [DefaultProtocol, NotNull] MutableString /*!*/ path)
 {
     return(RubyFileOps.FileExists(self.Context, path) || RubyFileOps.DirectoryExists(self.Context, path));
 }
コード例 #3
0
ファイル: Dir.cs プロジェクト: yyyyj/ironruby
 public static bool Exists(ConversionStorage <MutableString> /*!*/ toPath, RubyModule /*!*/ self, object path)
 {
     return(RubyFileOps.DirectoryExists(self.Context, Protocols.CastToPath(toPath, path)));
 }