Code:
/ DotNET / DotNET / 8.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
- FullTrustAssembliesSection.cs
- hresults.cs
- CodeNamespaceImportCollection.cs
- DataServiceQueryProvider.cs
- WorkflowDefinitionDispenser.cs
- RNGCryptoServiceProvider.cs
- SQLUtility.cs
- ContextMenu.cs
- HttpModule.cs
- WindowsListViewSubItem.cs
- _UriSyntax.cs
- OracleBFile.cs
- SynchronizingStream.cs
- RedirectionProxy.cs
- TreeViewBindingsEditorForm.cs
- CodeSnippetCompileUnit.cs
- XmlNotation.cs
- XmlValueConverter.cs
- RuntimeUtils.cs
- ValidationError.cs
- PerCallInstanceContextProvider.cs
- SqlDataSource.cs
- DataGridCommandEventArgs.cs
- HashCodeCombiner.cs
- RepeaterItem.cs
- Transform3DCollection.cs
- SqlReferenceCollection.cs
- RowCache.cs
- ControlCollection.cs
- AliasGenerator.cs
- XamlGridLengthSerializer.cs
- MSG.cs
- ProtocolElementCollection.cs
- BuildProviderInstallComponent.cs
- DoubleLinkListEnumerator.cs
- MaskedTextProvider.cs
- GeometryModel3D.cs
- CodeTypeDeclaration.cs
- FlowThrottle.cs
- ChildDocumentBlock.cs
- SoapServerProtocol.cs
- IndependentAnimationStorage.cs
- WindowsFormsHostAutomationPeer.cs
- EntityProviderServices.cs
- SpeechSynthesizer.cs
- RichTextBoxConstants.cs
- StructuredTypeEmitter.cs
- OpenFileDialog.cs
- SharedDp.cs
- GroupQuery.cs
- ExceptionRoutedEventArgs.cs
- DependsOnAttribute.cs
- FormViewUpdatedEventArgs.cs
- SimpleHandlerBuildProvider.cs
- Parser.cs
- WebPartDisplayMode.cs
- BookmarkOptionsHelper.cs
- ActivitiesCollection.cs
- SoapRpcServiceAttribute.cs
- ASCIIEncoding.cs
- Rules.cs
- Composition.cs
- QuadTree.cs
- DataTableMappingCollection.cs
- LinkConverter.cs
- TimeoutException.cs
- SuppressMessageAttribute.cs
- DrawingState.cs
- RuleProcessor.cs
- SqlRowUpdatedEvent.cs
- OrderingInfo.cs
- WindowExtensionMethods.cs
- ObjectDataSourceMethodEditor.cs
- BeginStoryboard.cs
- PkcsUtils.cs
- TextEditorCopyPaste.cs
- XNodeNavigator.cs
- HttpProfileGroupBase.cs
- DbConnectionPoolIdentity.cs
- CapabilitiesSection.cs
- PeerNodeAddress.cs
- XPathAncestorQuery.cs
- DesignerActionItemCollection.cs
- OdbcUtils.cs
- PrintControllerWithStatusDialog.cs
- XmlCharCheckingWriter.cs
- GenericsInstances.cs
- AssociationSetMetadata.cs
- BindingSourceDesigner.cs
- RoleService.cs
- CustomValidator.cs
- RelatedImageListAttribute.cs
- InputEventArgs.cs
- MenuItemBindingCollection.cs
- ExceptionUtil.cs
- Menu.cs
- XmlSchemaAll.cs
- ConfigurationStrings.cs
- ScriptComponentDescriptor.cs
- AssociationEndMember.cs