Class | CharDet::GB2312DistributionAnalysis
In: | lib/tmail/vendor/rchardet-1.3/lib/rchardet/chardistribution.rb
Parent: | CharDistributionAnalysis

### Methods

get_order new

### Public Class methods

new()

[Source]

    # File lib/tmail/vendor/rchardet-1.3/lib/rchardet/chardistribution.rb, line 144
        def initialize
          super()
          @_mCharToFreqOrder = GB2312CharToFreqOrder
          @_mTableSize = GB2312_TABLE_SIZE
          @_mTypicalDistributionRatio = GB2312_TYPICAL_DISTRIBUTION_RATIO
        end

### Public Instance methods

get_order(aStr)

[Source]

    # File lib/tmail/vendor/rchardet-1.3/lib/rchardet/chardistribution.rb, line 151
        def get_order(aStr)
          # for GB2312 encoding, we are interested
          #  first  byte range: 0xb0 -- 0xfe
          #  second byte range: 0xa1 -- 0xfe
          # no validation needed here. State machine has done that
          if (aStr[0..0] >= "\xB0") and (aStr[1..1] >= "\xA1")
            return 94 * (aStr[0] - 0xB0) + aStr[1] - 0xA1
          else
            return -1
          end
        end

[Validate]