Code:
/ FXUpdate3074 / FXUpdate3074 / 1.1 / untmp / whidbey / QFE / 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 } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ModifierKeysConverter.cs
- Int32RectConverter.cs
- PrintingPermission.cs
- SiteMembershipCondition.cs
- Matrix3DStack.cs
- MarkupObject.cs
- ObjectResult.cs
- MiniModule.cs
- BCryptHashAlgorithm.cs
- MultiView.cs
- SafeHandles.cs
- AppDomainCompilerProxy.cs
- TdsValueSetter.cs
- BitmapImage.cs
- DbQueryCommandTree.cs
- FontUnitConverter.cs
- dtdvalidator.cs
- SystemNetworkInterface.cs
- FixedStringLookup.cs
- LocatorBase.cs
- ActivationArguments.cs
- ToolStripRendererSwitcher.cs
- PassportAuthentication.cs
- SQLRoleProvider.cs
- WeakReference.cs
- ByteFacetDescriptionElement.cs
- FormsAuthenticationTicket.cs
- ResourceManagerWrapper.cs
- DefaultAutoFieldGenerator.cs
- SqlError.cs
- BinaryParser.cs
- NetTcpBinding.cs
- AssociationType.cs
- Variable.cs
- SchemaType.cs
- DataQuery.cs
- ColorDialog.cs
- UndirectedGraph.cs
- RegistrationServices.cs
- WindowsImpersonationContext.cs
- PrimitiveXmlSerializers.cs
- ProcessInfo.cs
- HyperLinkDesigner.cs
- APCustomTypeDescriptor.cs
- WebBrowserContainer.cs
- CompModHelpers.cs
- RectangleGeometry.cs
- FacetValueContainer.cs
- ServerValidateEventArgs.cs
- RecordManager.cs
- PropertyNames.cs
- OleDbRowUpdatingEvent.cs
- VSWCFServiceContractGenerator.cs
- TextRangeAdaptor.cs
- LinqDataSourceEditData.cs
- assemblycache.cs
- EventSetterHandlerConverter.cs
- Grid.cs
- DbModificationClause.cs
- InvalidWorkflowException.cs
- PatternMatcher.cs
- Variable.cs
- IdnElement.cs
- DataGridViewColumnDesignTimeVisibleAttribute.cs
- DefaultSerializationProviderAttribute.cs
- TypeResolver.cs
- JsonClassDataContract.cs
- RenderContext.cs
- PointAnimationBase.cs
- ObjectFactoryCodeDomTreeGenerator.cs
- TemplatedMailWebEventProvider.cs
- CopyEncoder.cs
- CompensatableSequenceActivity.cs
- SqlDataSource.cs
- Stacktrace.cs
- SecurityKeyIdentifierClause.cs
- LineUtil.cs
- DesignTimeVisibleAttribute.cs
- PersonalizablePropertyEntry.cs
- TableCell.cs
- EnumType.cs
- IdnElement.cs
- XmlAtomicValue.cs
- InvalidDataException.cs
- GeneralTransform2DTo3DTo2D.cs
- MeshGeometry3D.cs
- TypeDescriptor.cs
- ToolboxSnapDragDropEventArgs.cs
- sqlinternaltransaction.cs
- File.cs
- WebBrowserContainer.cs
- NumericUpDownAcceleration.cs
- SecurityTokenProvider.cs
- BitmapCodecInfo.cs
- StrongNameMembershipCondition.cs
- HandleTable.cs
- ComboBox.cs
- GeometryGroup.cs
- TraceXPathNavigator.cs
- Privilege.cs