Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / ndp / fx / src / xsp / System / Web / Util / SimpleBitVector32.cs / 1 / SimpleBitVector32.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.Util { using System; // // This is a cut down copy of System.Collections.Specialized.BitVector32. The // reason this is here is because it is used rather intensively by Control and // WebControl. As a result, being able to inline this operations results in a // measurable performance gain, at the expense of some maintainability. // [Serializable] internal struct SimpleBitVector32 { private int data; internal SimpleBitVector32(int data) { this.data = data; } internal int IntegerValue { get { return data; } set { data = value; } } internal bool this[int bit] { get { return (data & bit) == bit; } set { int _data = data; if(value) { data = _data | bit; } else { data = _data & ~bit; } } } internal void Set(int bit) { data |= bit; } internal void Clear(int bit) { data &= ~bit; } #if UNUSED_CODE internal void Toggle(int bit) { data ^= bit; } /* * COPY_FLAG copies the value of flags from a source field * into a destination field. * * In the macro: * + "&flag" limits the outer xor operation to just the flag we're interested in. * + These are the results of the two xor operations: * * fieldDst fieldSrc inner xor outer xor * 0 0 0 0 * 0 1 1 1 * 1 0 1 0 * 1 1 0 1 */ internal void Copy(SimpleBitVector32 src, int bit) { data ^= (data ^ src.data) & bit; } internal int Data { get { return data; } set { data = value; } } #endif } }
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- StreamBodyWriter.cs
- HttpStaticObjectsCollectionBase.cs
- ToolboxDataAttribute.cs
- ButtonColumn.cs
- EqualityArray.cs
- TextRangeEdit.cs
- VectorKeyFrameCollection.cs
- ToolZone.cs
- LineGeometry.cs
- ActivationWorker.cs
- ThaiBuddhistCalendar.cs
- InvalidWMPVersionException.cs
- Int16Storage.cs
- Metadata.cs
- SqlProviderUtilities.cs
- SaveCardRequest.cs
- DoubleStorage.cs
- EventSource.cs
- keycontainerpermission.cs
- TimeoutValidationAttribute.cs
- AuthenticatingEventArgs.cs
- DesignerCommandSet.cs
- SizeConverter.cs
- NameObjectCollectionBase.cs
- JournalEntryListConverter.cs
- JsonFormatGeneratorStatics.cs
- XmlEnumAttribute.cs
- EarlyBoundInfo.cs
- OrCondition.cs
- DrawListViewSubItemEventArgs.cs
- AssemblyNameProxy.cs
- WebPartZoneBaseDesigner.cs
- DbProviderServices.cs
- WebPartCollection.cs
- FixedPage.cs
- ACE.cs
- TraceListener.cs
- XmlSchemaObject.cs
- HostedTransportConfigurationManager.cs
- SaveWorkflowAsyncResult.cs
- AnnotationResourceChangedEventArgs.cs
- X509CertificateValidator.cs
- TransformerInfoCollection.cs
- RSAOAEPKeyExchangeDeformatter.cs
- DbMetaDataCollectionNames.cs
- Validator.cs
- CmsInterop.cs
- CqlIdentifiers.cs
- SimpleMailWebEventProvider.cs
- localization.cs
- ProgressBar.cs
- CommandBindingCollection.cs
- SafeBitVector32.cs
- RequestSecurityTokenResponse.cs
- SubpageParaClient.cs
- FtpWebRequest.cs
- NullableConverter.cs
- AccessedThroughPropertyAttribute.cs
- DefaultValueTypeConverter.cs
- ViewManager.cs
- SqlDesignerDataSourceView.cs
- nulltextcontainer.cs
- TypeReference.cs
- PointCollection.cs
- MultiBindingExpression.cs
- Stylus.cs
- SqlParameter.cs
- SerializableReadOnlyDictionary.cs
- ApplicationDirectory.cs
- WebPartDisplayModeCancelEventArgs.cs
- WorkflowQueuingService.cs
- MDIWindowDialog.cs
- IgnoreSectionHandler.cs
- StaticExtension.cs
- ValueHandle.cs
- securitycriticaldataformultiplegetandset.cs
- GroupBox.cs
- FixedFindEngine.cs
- NotCondition.cs
- VirtualDirectoryMappingCollection.cs
- IdentityNotMappedException.cs
- BuildProvider.cs
- GridViewColumnCollectionChangedEventArgs.cs
- DataRow.cs
- SectionInformation.cs
- ListSortDescriptionCollection.cs
- CssTextWriter.cs
- SHA1Managed.cs
- DynamicPropertyHolder.cs
- System.Data_BID.cs
- ExpressionBinding.cs
- Flowchart.cs
- ProfileSettingsCollection.cs
- WebBrowserSiteBase.cs
- _ContextAwareResult.cs
- ObjectDataSourceEventArgs.cs
- Binding.cs
- ValidationSummary.cs
- WebGetAttribute.cs
- ParagraphVisual.cs