Package org.jruby.runtime.encoding
Class EncodingService
java.lang.Object
org.jruby.runtime.encoding.EncodingService
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptioncharsetForEncoding
(org.jcodings.Encoding encoding) Get a java.nio Charset for the given encoding, or null if impossibleconvertEncodingToRubyEncoding
(org.jcodings.Encoding defaultEncoding) void
defineAliases
(ThreadContext context) void
defineEncodings
(ThreadContext context) org.jcodings.EncodingDB.Entry
findAliasEntry
(byte[] bytes) org.jcodings.EncodingDB.Entry
findAliasEntry
(ByteList bytes) org.jcodings.Encoding
findEncoding
(IRubyObject str) Find an encoding given a Ruby object, coercing it to a String in the process.org.jcodings.EncodingDB.Entry
findEncodingEntry
(byte[] bytes) org.jcodings.EncodingDB.Entry
findEncodingEntry
(ByteList bytes) org.jcodings.Encoding
Find an encoding given a Ruby object, coercing it to a String in the process.org.jcodings.Encoding
findEncodingObject
(byte[] bytes) org.jcodings.EncodingDB.Entry
findEncodingOrAliasEntry
(byte[] bytes) org.jcodings.EncodingDB.Entry
findEncodingOrAliasEntry
(ByteList bytes) org.jcodings.Encoding
Find a non-special encoding, raising argument error if it does not exist.org.jcodings.EncodingDB.Entry
findEntry
(IRubyObject str) Find an encoding given a Ruby object, coercing it to a String in the process.org.jcodings.util.CaseInsensitiveBytesHash
<org.jcodings.EncodingDB.Entry> org.jcodings.Encoding
org.jcodings.Encoding
Since Java 1.6, classConsole
is available.org.jcodings.Encoding
org.jcodings.Encoding
org.jcodings.Encoding
org.jcodings.Encoding
getEncoding
(org.jcodings.Encoding enc) org.jcodings.Encoding
org.jcodings.Encoding
org.jcodings.Encoding
getEncodingFromString
(String string) org.jcodings.util.CaseInsensitiveBytesHash
<org.jcodings.EncodingDB.Entry> org.jcodings.Encoding
org.jcodings.Encoding
org.jcodings.Encoding
getFileSystemEncoding
(Ruby runtime) Deprecated.org.jcodings.Encoding
org.jcodings.Encoding
org.jcodings.Encoding
org.jcodings.Encoding
getWindowsFilesystemEncoding
(Ruby runtime) Deprecated.org.jcodings.Encoding
org.jcodings.Encoding
loadEncoding
(ByteList name) void
setDefaultExternalEncoding
(org.jcodings.Encoding defaultExternalEncoding) void
setDefaultFilesystemEncoding
(org.jcodings.Encoding defaultFilesystemEncoding) void
setDefaultInternalEncoding
(org.jcodings.Encoding defaultInternalEncoding)
-
Constructor Details
-
EncodingService
-
-
Method Details
-
getConsoleEncoding
public org.jcodings.Encoding getConsoleEncoding()Since Java 1.6, classConsole
is available. But the encoding or codepage of the underlying connected console is currently private. Had to use Reflection to get it.- Returns:
- console codepage
-
getUSAsciiEncoding
public org.jcodings.Encoding getUSAsciiEncoding() -
getAscii8bitEncoding
public org.jcodings.Encoding getAscii8bitEncoding() -
getFileSystemEncoding
public org.jcodings.Encoding getFileSystemEncoding() -
getDefaultInternalEncoding
public org.jcodings.Encoding getDefaultInternalEncoding() -
getDefaultInternalEncodingOrDefault
public org.jcodings.Encoding getDefaultInternalEncodingOrDefault() -
setDefaultInternalEncoding
public void setDefaultInternalEncoding(org.jcodings.Encoding defaultInternalEncoding) -
getDefaultExternalEncoding
public org.jcodings.Encoding getDefaultExternalEncoding() -
setDefaultExternalEncoding
public void setDefaultExternalEncoding(org.jcodings.Encoding defaultExternalEncoding) -
getDefaultFilesystemEncoding
public org.jcodings.Encoding getDefaultFilesystemEncoding() -
setDefaultFilesystemEncoding
public void setDefaultFilesystemEncoding(org.jcodings.Encoding defaultFilesystemEncoding) -
getEncodings
public org.jcodings.util.CaseInsensitiveBytesHash<org.jcodings.EncodingDB.Entry> getEncodings() -
getAliases
public org.jcodings.util.CaseInsensitiveBytesHash<org.jcodings.EncodingDB.Entry> getAliases() -
findEncodingEntry
-
findEncodingEntry
public org.jcodings.EncodingDB.Entry findEncodingEntry(byte[] bytes) -
findAliasEntry
-
findAliasEntry
public org.jcodings.EncodingDB.Entry findAliasEntry(byte[] bytes) -
findEncodingOrAliasEntry
-
findEncodingOrAliasEntry
public org.jcodings.EncodingDB.Entry findEncodingOrAliasEntry(byte[] bytes) -
getLocaleEncoding
public org.jcodings.Encoding getLocaleEncoding() -
getEncodingList
-
loadEncoding
-
getEncoding
-
defineEncodings
-
defineAliases
-
getDefaultExternal
-
getDefaultInternal
-
convertEncodingToRubyEncoding
-
findEncodingObject
-
getJavaDefault
public org.jcodings.Encoding getJavaDefault() -
getEncodingFromObject
-
getEncodingFromObjectNoError
-
getEncodingFromString
-
findEncoding
Find an encoding given a Ruby object, coercing it to a String in the process.- Parameters:
str
- the object to coerce and use to look up encoding. The coerced String must be ASCII-compatible.- Returns:
- the Encoding object found, nil (for internal), or raises ArgumentError
-
findEncodingNoError
Find an encoding given a Ruby object, coercing it to a String in the process. This version does not raise a Ruby error if it can't find the encoding, and simply returns null.- Parameters:
str
- the object to coerce and use to look up encoding. The coerced String must be ASCII-compatible.- Returns:
- the Encoding object found, nil (for internal)
-
findEncodingNoError
-
findEntry
Find an encoding given a Ruby object, coercing it to a String in the process.- Parameters:
str
- the object to coerce and use to look up encoding. The coerced String must be ASCII-compatible.- Returns:
- the Encoding object found, nil (for internal), or raises ArgumentError
-
rubyEncodingFromObject
-
charsetForEncoding
Get a java.nio Charset for the given encoding, or null if impossible- Parameters:
encoding
- the encoding- Returns:
- the charset
-
getWindowsFilesystemEncoding
Deprecated. -
getWindowsFilesystemEncoding
-
getEnvEncoding
public org.jcodings.Encoding getEnvEncoding() -
findEncodingWithError
Find a non-special encoding, raising argument error if it does not exist.- Parameters:
name
- the name of the encoding to look up- Returns:
- the Encoding object found, or raises ArgumentError
-
getFileSystemEncoding
Deprecated.
-