Пример #1
0
        public static RubyArray /*!*/ GetAvailableEncodings(RubyClass /*!*/ self)
        {
            var result = new RubyArray();

            foreach (int codePage in RubyEncoding.GetEncodingCodePages())
            {
                result.Add(RubyEncoding.GetRubyEncoding(codePage));
            }

            return(result);
        }
Пример #2
0
        public static RubyArray /*!*/ GetAvailableEncodings(RubyClass /*!*/ self)
        {
            var infos  = Encoding.GetEncodings();
            var result = new RubyArray(1 + infos.Length);

            // Ruby specific:
            result.Add(RubyEncoding.Binary);

            foreach (var info in infos)
            {
                result.Add(RubyEncoding.GetRubyEncoding(info.CodePage));
            }
            return(result);
        }
Пример #3
0
        public static RubyArray /*!*/ GetAvailableEncodings(RubyClass /*!*/ self)
        {
            // TODO: loads all encodings, we should be lazy with encoding creation

            var infos  = Encoding.GetEncodings();
            var result = new RubyArray(1 + infos.Length);

            // Ruby specific:
            result.Add(RubyEncoding.Binary);

            foreach (var info in infos)
            {
                result.Add(RubyEncoding.GetRubyEncoding(info.GetEncoding()));
            }
            return(result);
        }
Пример #4
0
 public static RubyEncoding /*!*/ GetEncoding(RubyClass /*!*/ self, [NotNull] MutableString /*!*/ name)
 {
     return(RubyEncoding.GetRubyEncoding(name.ToString()));
 }
Пример #5
0
 public static RubyEncoding GetInternalEncoding(RubyIO /*!*/ self)
 {
     return((self.InternalEncoding != null) ? RubyEncoding.GetRubyEncoding(self.InternalEncoding) : null);
 }
Пример #6
0
 private static RubyEncoding ToEncoding(ConversionStorage <MutableString> /*!*/ toStr, object obj)
 {
     return((obj == null) ? null :
            obj as RubyEncoding ??
            RubyEncoding.GetRubyEncoding(Protocols.CastToString(toStr, obj).ToString())); // TODO: ToString
 }