Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / WCF / Serialization / System / Text / SurrogateChar.cs / 1305376 / SurrogateChar.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace System.Text { using System.Globalization; using System.Runtime.Serialization; // Just for SR struct SurrogateChar { char lowChar; char highChar; public const int MinValue = 0x10000; public const int MaxValue = MinValue + (1 << 20) - 1; const char surHighMin = (char) 0xd800; const char surHighMax = (char) 0xdbff; const char surLowMin = (char) 0xdc00; const char surLowMax = (char) 0xdfff; public SurrogateChar(int ch) { if (ch < MinValue || ch > MaxValue) throw System.Runtime.Serialization.DiagnosticUtility.ExceptionUtility.ThrowHelperError(new ArgumentException(SR.GetString(SR.XmlInvalidSurrogate, ch.ToString("X", CultureInfo.InvariantCulture)), "ch")); const int mask = ((1 << 10) - 1); this.lowChar = (char) (((ch - MinValue) & mask) + surLowMin); this.highChar = (char) ((((ch - MinValue) >> 10) & mask) + surHighMin); } public SurrogateChar(char lowChar, char highChar) { if (lowChar < surLowMin || lowChar > surLowMax) throw System.Runtime.Serialization.DiagnosticUtility.ExceptionUtility.ThrowHelperError(new ArgumentException(SR.GetString(SR.XmlInvalidLowSurrogate, ((int)lowChar).ToString("X", CultureInfo.InvariantCulture)), "lowChar")); if (highChar < surHighMin || highChar > surHighMax) throw System.Runtime.Serialization.DiagnosticUtility.ExceptionUtility.ThrowHelperError(new ArgumentException(SR.GetString(SR.XmlInvalidHighSurrogate, ((int)highChar).ToString("X", CultureInfo.InvariantCulture)), "highChar")); this.lowChar = lowChar; this.highChar = highChar; } public char LowChar { get { return lowChar; } } public char HighChar { get { return highChar; } } public int Char { get { return (lowChar - surLowMin) | ((highChar - surHighMin) << 10) + MinValue; } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace System.Text { using System.Globalization; using System.Runtime.Serialization; // Just for SR struct SurrogateChar { char lowChar; char highChar; public const int MinValue = 0x10000; public const int MaxValue = MinValue + (1 << 20) - 1; const char surHighMin = (char) 0xd800; const char surHighMax = (char) 0xdbff; const char surLowMin = (char) 0xdc00; const char surLowMax = (char) 0xdfff; public SurrogateChar(int ch) { if (ch < MinValue || ch > MaxValue) throw System.Runtime.Serialization.DiagnosticUtility.ExceptionUtility.ThrowHelperError(new ArgumentException(SR.GetString(SR.XmlInvalidSurrogate, ch.ToString("X", CultureInfo.InvariantCulture)), "ch")); const int mask = ((1 << 10) - 1); this.lowChar = (char) (((ch - MinValue) & mask) + surLowMin); this.highChar = (char) ((((ch - MinValue) >> 10) & mask) + surHighMin); } public SurrogateChar(char lowChar, char highChar) { if (lowChar < surLowMin || lowChar > surLowMax) throw System.Runtime.Serialization.DiagnosticUtility.ExceptionUtility.ThrowHelperError(new ArgumentException(SR.GetString(SR.XmlInvalidLowSurrogate, ((int)lowChar).ToString("X", CultureInfo.InvariantCulture)), "lowChar")); if (highChar < surHighMin || highChar > surHighMax) throw System.Runtime.Serialization.DiagnosticUtility.ExceptionUtility.ThrowHelperError(new ArgumentException(SR.GetString(SR.XmlInvalidHighSurrogate, ((int)highChar).ToString("X", CultureInfo.InvariantCulture)), "highChar")); this.lowChar = lowChar; this.highChar = highChar; } public char LowChar { get { return lowChar; } } public char HighChar { get { return highChar; } } public int Char { get { return (lowChar - surLowMin) | ((highChar - surHighMin) << 10) + MinValue; } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ResourceContainer.cs
- InvalidOperationException.cs
- SqlConnection.cs
- SerializationAttributes.cs
- OutputCacheSettingsSection.cs
- ControlDesigner.cs
- AccessibilityHelperForVista.cs
- OdbcCommand.cs
- DatatypeImplementation.cs
- TreeViewAutomationPeer.cs
- dataobject.cs
- ExclusiveHandleList.cs
- SqlCommandBuilder.cs
- DefaultProxySection.cs
- ThicknessAnimationUsingKeyFrames.cs
- GeneralTransformCollection.cs
- WebBodyFormatMessageProperty.cs
- SpecialFolderEnumConverter.cs
- ButtonBase.cs
- OperationPickerDialog.cs
- ErrorRuntimeConfig.cs
- IntSecurity.cs
- TableLayoutStyleCollection.cs
- CounterCreationData.cs
- JsonDataContract.cs
- UserControl.cs
- AssemblyResourceLoader.cs
- CheckBox.cs
- HttpFileCollectionBase.cs
- WindowsFormsHelpers.cs
- TypeTypeConverter.cs
- HttpClientCertificate.cs
- BinaryObjectWriter.cs
- HttpApplicationStateBase.cs
- DotAtomReader.cs
- MimePart.cs
- TextHidden.cs
- DataGridColumnHeadersPresenter.cs
- TraceHwndHost.cs
- ADMembershipProvider.cs
- XmlSignatureManifest.cs
- UserNamePasswordValidator.cs
- FixedSOMImage.cs
- BuildManagerHost.cs
- BamlTreeMap.cs
- FastPropertyAccessor.cs
- RangeValueProviderWrapper.cs
- FixedSOMTextRun.cs
- CodeConstructor.cs
- SiblingIterators.cs
- ExecutionProperties.cs
- ImageInfo.cs
- BrowserDefinitionCollection.cs
- MappingSource.cs
- BidPrivateBase.cs
- Sorting.cs
- AssociationTypeEmitter.cs
- CapabilitiesState.cs
- SoapFault.cs
- CmsInterop.cs
- GridViewDeletedEventArgs.cs
- BrowsableAttribute.cs
- SchemaImporterExtensionElement.cs
- EncodingDataItem.cs
- AuthorizationBehavior.cs
- Point3D.cs
- HttpCacheVary.cs
- BitHelper.cs
- DeviceContext2.cs
- Crc32Helper.cs
- ValueCollectionParameterReader.cs
- DesignTimeResourceProviderFactoryAttribute.cs
- SafeProcessHandle.cs
- AnimationClockResource.cs
- WMIGenerator.cs
- UserCancellationException.cs
- XXXInfos.cs
- WebPartAuthorizationEventArgs.cs
- DataSourceBooleanViewSchemaConverter.cs
- WebHttpSecurityElement.cs
- StandardOleMarshalObject.cs
- TreeNodeBindingCollection.cs
- SspiSecurityToken.cs
- EmptyCollection.cs
- Image.cs
- WebPartConnectionsEventArgs.cs
- ArrayList.cs
- BitmapCodecInfo.cs
- DateTimeOffset.cs
- WSSecurityXXX2005.cs
- ConfigXmlText.cs
- FigureHelper.cs
- ToolStripScrollButton.cs
- NonBatchDirectoryCompiler.cs
- RightsManagementInformation.cs
- XmlIlTypeHelper.cs
- QueryHandler.cs
- SqlUDTStorage.cs
- ButtonFlatAdapter.cs
- EntitySqlQueryCacheKey.cs