Imported Upstream version 4.2.0.179

Former-commit-id: 0a113cb3a6feb7873f632839b1307cc6033cd595
This commit is contained in:
Xamarin Public Jenkins
2015-08-26 07:17:56 -04:00
committed by Jo Shields
parent 183bba2c9a
commit 6992685b86
7507 changed files with 90259 additions and 657307 deletions

View File

@ -5,7 +5,7 @@ using System.Runtime.CompilerServices;
using NUtil = Mono.Globalization.Unicode.NormalizationTableUtil;
namespace Mono.Globalization.Unicode
namespace System.Text
{
internal enum NormalizationCheck {
Yes,
@ -425,6 +425,20 @@ namespace Mono.Globalization.Unicode
return bufIdx;
}
public static bool IsNormalized (string source, NormalizationForm normalizationForm)
{
switch (normalizationForm) {
default:
return IsNormalized (source, 0);
case NormalizationForm.FormD:
return IsNormalized (source, 1);
case NormalizationForm.FormKC:
return IsNormalized (source, 2);
case NormalizationForm.FormKD:
return IsNormalized (source, 3);
}
}
public static bool IsNormalized (string source, int type)
{
int prevCC = -1;
@ -462,6 +476,20 @@ namespace Mono.Globalization.Unicode
return true;
}
public static string Normalize (string source, NormalizationForm normalizationForm)
{
switch (normalizationForm) {
default:
return Normalization.Normalize (source, 0);
case NormalizationForm.FormD:
return Normalization.Normalize (source, 1);
case NormalizationForm.FormKC:
return Normalization.Normalize (source, 2);
case NormalizationForm.FormKD:
return Normalization.Normalize (source, 3);
}
}
public static string Normalize (string source, int type)
{
switch (type) {