mirror of
https://repo.dactyloidae.xyz/Dactyloidae/UXP.git
synced 2026-09-21 07:47:32 +09:00
import FIREFOX_52_6_0esr_RELEASE from mozilla-esr52 hg repo
This commit is contained in:
commit
dcd9973243
150858 changed files with 23884658 additions and 0 deletions
73
intl/icu/source/i18n/csmatch.cpp
Normal file
73
intl/icu/source/i18n/csmatch.cpp
Normal file
|
|
@ -0,0 +1,73 @@
|
|||
// Copyright (C) 2016 and later: Unicode, Inc. and others.
|
||||
// License & terms of use: http://www.unicode.org/copyright.html
|
||||
/*
|
||||
**********************************************************************
|
||||
* Copyright (C) 2005-2012, International Business Machines
|
||||
* Corporation and others. All Rights Reserved.
|
||||
**********************************************************************
|
||||
*/
|
||||
|
||||
#include "unicode/utypes.h"
|
||||
|
||||
#if !UCONFIG_NO_CONVERSION
|
||||
#include "unicode/unistr.h"
|
||||
#include "unicode/ucnv.h"
|
||||
|
||||
#include "csmatch.h"
|
||||
|
||||
#include "csrecog.h"
|
||||
#include "inputext.h"
|
||||
|
||||
U_NAMESPACE_BEGIN
|
||||
|
||||
CharsetMatch::CharsetMatch()
|
||||
: textIn(NULL), confidence(0), fCharsetName(NULL), fLang(NULL)
|
||||
{
|
||||
// nothing else to do.
|
||||
}
|
||||
|
||||
void CharsetMatch::set(InputText *input, const CharsetRecognizer *cr, int32_t conf,
|
||||
const char *csName, const char *lang)
|
||||
{
|
||||
textIn = input;
|
||||
confidence = conf;
|
||||
fCharsetName = csName;
|
||||
fLang = lang;
|
||||
if (cr != NULL) {
|
||||
if (fCharsetName == NULL) {
|
||||
fCharsetName = cr->getName();
|
||||
}
|
||||
if (fLang == NULL) {
|
||||
fLang = cr->getLanguage();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
const char* CharsetMatch::getName()const
|
||||
{
|
||||
return fCharsetName;
|
||||
}
|
||||
|
||||
const char* CharsetMatch::getLanguage()const
|
||||
{
|
||||
return fLang;
|
||||
}
|
||||
|
||||
int32_t CharsetMatch::getConfidence()const
|
||||
{
|
||||
return confidence;
|
||||
}
|
||||
|
||||
int32_t CharsetMatch::getUChars(UChar *buf, int32_t cap, UErrorCode *status) const
|
||||
{
|
||||
UConverter *conv = ucnv_open(getName(), status);
|
||||
int32_t result = ucnv_toUChars(conv, buf, cap, (const char *) textIn->fRawInput, textIn->fRawLength, status);
|
||||
|
||||
ucnv_close(conv);
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
U_NAMESPACE_END
|
||||
|
||||
#endif
|
||||
Loading…
Add table
Add a link
Reference in a new issue