aboutsummaryrefslogblamecommitdiffstats
path: root/activesupport/lib/active_support/multibyte.rb
blob: cabe0736162ce011bc0c699e122957b06f9a566c (plain) (tree)
1
2
3
4
5
6
7
8
9
                 

                                                            
                             
                  

                                                                  
                                                         
 





                                                                                                           



                                
                                     


                                                      
     
  
# encoding: utf-8
require 'active_support/core_ext/module/attribute_accessors'

module ActiveSupport #:nodoc:
  module Multibyte
    autoload :EncodingError, 'active_support/multibyte/exceptions'
    autoload :Chars, 'active_support/multibyte/chars'
    autoload :Unicode, 'active_support/multibyte/unicode'

    # The proxy class returned when calling mb_chars. You can use this accessor to configure your own proxy
    # class so you can support other encodings. See the ActiveSupport::Multibyte::Chars implementation for
    # an example how to do this.
    #
    # Example:
    #   ActiveSupport::Multibyte.proxy_class = CharsForUTF32
    def self.proxy_class=(klass)
      @proxy_class = klass
    end

    # Returns the current proxy class
    def self.proxy_class
      @proxy_class ||= ActiveSupport::Multibyte::Chars
    end
  end
end