nsresult
nsUnicodeToBIG5HKSCSConstructor(nsISupports *aOuter, REFNSIID aIID,
                                void **aResult)
{
    return CreateMultiTableEncoder(3,
                                   (uScanClassID*) &g_Big5HKSCSScanClassIDs,
                                   (uMappingTable**) &g_Big5HKSCSMappingTable,
                                   2 /* max length = src * 2 */,
                                   aOuter, aIID, aResult);
}
NS_METHOD
nsUnicodeToEUCTWConstructor(nsISupports *aOuter, REFNSIID aIID,
                            void **aResult)
{
  return CreateMultiTableEncoder(8,
                                 (uScanClassID*) &g_EUCTWScanClassSet,
                                 (uMappingTable**) &g_EUCTWMappingTableSet,
                                 4 /* max length = src * 4 */,
                                 aOuter, aIID, aResult);
}
Пример #3
0
NS_METHOD
nsUnicodeToHKSCSConstructor(nsISupports *aOuter, REFNSIID aIID,
                                void **aResult)
{
  return CreateMultiTableEncoder(1,
                                 (uShiftTable**) &g_Big5HKSCSShiftTable,
                                 (uMappingTable**) &g_Big5HKSCSMappingTable,
                                 2 /* max length = src * 2 */,
                                 aOuter, aIID, aResult);
}
Пример #4
0
nsresult
nsUnicodeToCP949Constructor(nsISupports *aOuter, REFNSIID aIID,
                            void **aResult)
{
  return CreateMultiTableEncoder(3,
                                 (uScanClassID*) g_CP949ScanClassTable, 
                                 (uMappingTable**) g_CP949MappingTable,
                                 2 /* max len = src * 2 */,
                                 aOuter, aIID, aResult);
}
Пример #5
0
NS_METHOD
nsUnicodeToEUCJPConstructor(nsISupports *aOuter, REFNSIID aIID,
                            void **aResult)
{
    return CreateMultiTableEncoder(SIZE_OF_TABLES,
                                   (uShiftTable**) gShiftTables, 
                                   (uMappingTable**) gMappingTables,
                                   3 /* max length = src * 3 */,
                                   aOuter, aIID, aResult);
}
NS_METHOD
CreateMultiTableEncoder(int32_t aTableCount,
                        uScanClassID * aScanClassArray,
                        uMappingTable ** aMappingTable,
                        uint32_t aMaxLengthFactor,
                        nsISupports* aOuter,
                        REFNSIID aIID,
                        void** aResult)
{
  return CreateMultiTableEncoder(aTableCount, aScanClassArray,
                                 nullptr,
                                 aMappingTable, aMaxLengthFactor,
                                 aOuter, aIID, aResult);
}
Пример #7
0
nsresult
nsUnicodeToHKSCSConstructor(nsISupports *aOuter, REFNSIID aIID,
                                void **aResult)
{
  static const uint16_t *g_Big5HKSCSMappingTable[] = {
    g_ufBig5HKSCSMapping
  };

  static const uScanClassID g_Big5HKSCSScanClassIDs[] =  {
    u2BytesCharset
  };

  return CreateMultiTableEncoder(1,
                                 (uScanClassID*) &g_Big5HKSCSScanClassIDs,
                                 (uMappingTable**) &g_Big5HKSCSMappingTable,
                                 2 /* max length = src * 2 */,
                                 aOuter, aIID, aResult);
}