Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / clr / src / BCL / System / Text / EncoderBestFitFallback.cs / 1305376 / EncoderBestFitFallback.cs
// ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== // EncoderBestFitFallback.cs // // This is used internally to create best fit behavior as per the original windows best fit behavior. // namespace System.Text { using System; using System.Globalization; using System.Text; using System.Threading; using System.Diagnostics.Contracts; [Serializable] internal class InternalEncoderBestFitFallback : EncoderFallback { // Our variables internal Encoding encoding = null; internal char[] arrayBestFit = null; internal InternalEncoderBestFitFallback(Encoding encoding) { // Need to load our replacement characters table. this.encoding = encoding; this.bIsMicrosoftBestFitFallback = true; } public override EncoderFallbackBuffer CreateFallbackBuffer() { return new InternalEncoderBestFitFallbackBuffer(this); } // Maximum number of characters that this instance of this fallback could return public override int MaxCharCount { get { return 1; } } public override bool Equals(Object value) { InternalEncoderBestFitFallback that = value as InternalEncoderBestFitFallback; if (that != null) { return (this.encoding.CodePage == that.encoding.CodePage); } return (false); } public override int GetHashCode() { return this.encoding.CodePage; } } internal sealed class InternalEncoderBestFitFallbackBuffer : EncoderFallbackBuffer { // Our variables private char cBestFit = '\0'; private InternalEncoderBestFitFallback oFallback; private int iCount = -1; private int iSize; // Private object for locking instead of locking on a public type for SQL reliability work. private static Object s_InternalSyncObject; private static Object InternalSyncObject { get { if (s_InternalSyncObject == null) { Object o = new Object(); Interlocked.CompareExchange
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- DataGridViewRow.cs
- IPAddressCollection.cs
- DaylightTime.cs
- _CommandStream.cs
- ModelItemKeyValuePair.cs
- BamlTreeNode.cs
- TextReader.cs
- XmlRootAttribute.cs
- Vector3DConverter.cs
- CommonProperties.cs
- UIElementCollection.cs
- SmiContextFactory.cs
- OdbcConnectionHandle.cs
- ScheduleChanges.cs
- FieldAccessException.cs
- AccessViolationException.cs
- SettingsBindableAttribute.cs
- ErrorHandlerModule.cs
- IERequestCache.cs
- CodeChecksumPragma.cs
- CodeTypeConstructor.cs
- ImageFormat.cs
- BrushValueSerializer.cs
- StorageEntityContainerMapping.cs
- Button.cs
- TcpTransportElement.cs
- StructureChangedEventArgs.cs
- ParallelQuery.cs
- SettingsBindableAttribute.cs
- SupportingTokenChannel.cs
- NativeMethodsOther.cs
- RouteValueExpressionBuilder.cs
- Win32Native.cs
- WebPartEventArgs.cs
- RepeatEnumerable.cs
- MetadataItemEmitter.cs
- WindowsStatusBar.cs
- SqlDataSourceRefreshSchemaForm.cs
- HttpProtocolImporter.cs
- MemoryMappedViewStream.cs
- DataSetUtil.cs
- PartialTrustHelpers.cs
- ClaimComparer.cs
- Journaling.cs
- XmlEntityReference.cs
- MergeLocalizationDirectives.cs
- HtmlLiteralTextAdapter.cs
- DocumentPageView.cs
- JobDuplex.cs
- SemanticValue.cs
- QilSortKey.cs
- GridItemPatternIdentifiers.cs
- FunctionDetailsReader.cs
- ScriptingJsonSerializationSection.cs
- RectAnimation.cs
- Code.cs
- SymbolMethod.cs
- Propagator.cs
- FixedSOMSemanticBox.cs
- UnderstoodHeaders.cs
- DataGridViewRowErrorTextNeededEventArgs.cs
- EventLog.cs
- MetadataCollection.cs
- EntitySetRetriever.cs
- ShutDownListener.cs
- SQLRoleProvider.cs
- WebPartManagerInternals.cs
- WrappedIUnknown.cs
- DataGridViewSelectedCellsAccessibleObject.cs
- EventArgs.cs
- EntityDataSourceReferenceGroup.cs
- DrawingGroup.cs
- StylusButtonEventArgs.cs
- SynchronizedCollection.cs
- ClientConfigurationHost.cs
- ClusterSafeNativeMethods.cs
- BitmapEffectDrawingContextWalker.cs
- HtmlTableRow.cs
- RuntimeHandles.cs
- SqlDataSourceFilteringEventArgs.cs
- XmlQualifiedName.cs
- XmlText.cs
- DecoderBestFitFallback.cs
- ConfigurationSchemaErrors.cs
- XmlSchemaSearchPattern.cs
- PageStatePersister.cs
- AmbiguousMatchException.cs
- AccessDataSourceWizardForm.cs
- ListViewItem.cs
- UInt32.cs
- JsonStringDataContract.cs
- QueryableDataSourceView.cs
- RemoveStoryboard.cs
- EDesignUtil.cs
- PriorityChain.cs
- DataView.cs
- XmlHierarchicalEnumerable.cs
- OleDbCommand.cs
- EUCJPEncoding.cs
- sqlstateclientmanager.cs