Code:
/ 4.0 / 4.0 / untmp / 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.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ResXResourceSet.cs
- TypeResolvingOptions.cs
- SiteMapNodeItem.cs
- ScrollProperties.cs
- FillBehavior.cs
- OleDbRowUpdatingEvent.cs
- GeneralTransform.cs
- Barrier.cs
- SafeEventLogReadHandle.cs
- ObjectToken.cs
- TextShapeableCharacters.cs
- SingleAnimation.cs
- ByteAnimationUsingKeyFrames.cs
- CountdownEvent.cs
- OrderPreservingMergeHelper.cs
- XmlCodeExporter.cs
- RedirectionProxy.cs
- HtmlInputImage.cs
- SoapObjectInfo.cs
- LowerCaseStringConverter.cs
- EdgeProfileValidation.cs
- UITypeEditor.cs
- MeasureData.cs
- ParameterCollectionEditor.cs
- GlyphCache.cs
- XmlDomTextWriter.cs
- InfoCardUIAgent.cs
- DetailsViewCommandEventArgs.cs
- ObjectComplexPropertyMapping.cs
- FixedDocumentSequencePaginator.cs
- TreeViewAutomationPeer.cs
- WinFormsComponentEditor.cs
- RadioButtonStandardAdapter.cs
- ErrorFormatterPage.cs
- Table.cs
- UnauthorizedAccessException.cs
- TextRangeSerialization.cs
- XmlAttribute.cs
- SqlServices.cs
- InvalidPrinterException.cs
- OleDbException.cs
- IDictionary.cs
- AdapterUtil.cs
- TextTreeExtractElementUndoUnit.cs
- XmlRootAttribute.cs
- HttpPostedFile.cs
- UnknownBitmapDecoder.cs
- COM2ExtendedBrowsingHandler.cs
- XmlProcessingInstruction.cs
- BitmapVisualManager.cs
- QilVisitor.cs
- BrowserCapabilitiesFactoryBase.cs
- WarningException.cs
- SafePointer.cs
- FormatConvertedBitmap.cs
- CharacterHit.cs
- ConstantSlot.cs
- ArgIterator.cs
- XPathNodeList.cs
- NotificationContext.cs
- DefaultTraceListener.cs
- filewebresponse.cs
- PinnedBufferMemoryStream.cs
- ArgumentsParser.cs
- DataStorage.cs
- ObjectTag.cs
- unsafenativemethodstextservices.cs
- IsolatedStoragePermission.cs
- DelegatedStream.cs
- ProfileProvider.cs
- ComponentCodeDomSerializer.cs
- TextBoxRenderer.cs
- BlockingCollection.cs
- PropertyTab.cs
- DisableDpiAwarenessAttribute.cs
- StringBlob.cs
- MarshalByRefObject.cs
- ConfigurationStrings.cs
- XPathDocumentNavigator.cs
- ColumnClickEvent.cs
- TableColumnCollection.cs
- EditorAttribute.cs
- TripleDES.cs
- AnnotationAuthorChangedEventArgs.cs
- PrePrepareMethodAttribute.cs
- LineSegment.cs
- SByteConverter.cs
- CompositeActivityTypeDescriptor.cs
- WindowShowOrOpenTracker.cs
- ReferentialConstraint.cs
- ScriptReferenceBase.cs
- SvcMapFile.cs
- DisplayInformation.cs
- OdbcCommand.cs
- ErrorTableItemStyle.cs
- BitmapPalettes.cs
- FaultPropagationRecord.cs
- FixedSOMTableRow.cs
- DataGridViewRowCollection.cs
- EncodingNLS.cs