Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / clr / src / BCL / System / Security / PermissionSetEnumerator.cs / 1 / PermissionSetEnumerator.cs
// ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== namespace System.Security { //PermissionSetEnumerator.cs using System; using System.Collections; using TokenBasedSetEnumerator = System.Security.Util.TokenBasedSetEnumerator; using TokenBasedSet = System.Security.Util.TokenBasedSet; internal class PermissionSetEnumerator : IEnumerator { PermissionSetEnumeratorInternal enm; public Object Current { get { return enm.Current; } } public bool MoveNext() { return enm.MoveNext(); } public void Reset() { enm.Reset(); } internal PermissionSetEnumerator(PermissionSet permSet) { enm = new PermissionSetEnumeratorInternal(permSet); } } internal struct PermissionSetEnumeratorInternal { private PermissionSet m_permSet; private TokenBasedSetEnumerator enm; public Object Current { get { return enm.Current; } } internal PermissionSetEnumeratorInternal(PermissionSet permSet) { m_permSet = permSet; enm = new TokenBasedSetEnumerator(permSet.m_permSet); } public int GetCurrentIndex() { return enm.Index; } public void Reset() { enm.Reset(); } public bool MoveNext() { while (enm.MoveNext()) { Object obj = enm.Current; IPermission perm = obj as IPermission; if (perm != null) { enm.Current = perm; return true; } SecurityElement elem = obj as SecurityElement; if (elem != null) { perm = m_permSet.CreatePermission(elem, enm.Index); if (perm != null) { enm.Current = perm; return true; } } } return false; } } }
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- SymmetricKey.cs
- SimpleModelProvider.cs
- Label.cs
- XmlSchemaObject.cs
- EncoderReplacementFallback.cs
- ToolStripDropDownItem.cs
- TableLayout.cs
- PtsContext.cs
- NetMsmqBindingCollectionElement.cs
- Ref.cs
- Rect.cs
- DataFormats.cs
- OperatorExpressions.cs
- DataControlFieldHeaderCell.cs
- WaitForChangedResult.cs
- SharedConnectionInfo.cs
- WebPartUserCapability.cs
- Visitors.cs
- SQLMoneyStorage.cs
- ThreadStateException.cs
- SystemIcons.cs
- Tool.cs
- EdmToObjectNamespaceMap.cs
- DecimalKeyFrameCollection.cs
- PointLight.cs
- GeneralTransform3D.cs
- UIElementPropertyUndoUnit.cs
- XmlLoader.cs
- SelectionPatternIdentifiers.cs
- AdornedElementPlaceholder.cs
- AssertUtility.cs
- ContractComponent.cs
- SqlMethodAttribute.cs
- SubpageParagraph.cs
- QueueSurrogate.cs
- BoolExpressionVisitors.cs
- ButtonColumn.cs
- RefreshPropertiesAttribute.cs
- RestHandlerFactory.cs
- StreamProxy.cs
- UriSection.cs
- JsonEncodingStreamWrapper.cs
- CommandPlan.cs
- FlowLayoutPanelDesigner.cs
- UnauthorizedAccessException.cs
- AssemblySettingAttributes.cs
- BindingSource.cs
- UserInitiatedNavigationPermission.cs
- CharacterMetrics.cs
- OracleRowUpdatedEventArgs.cs
- printdlgexmarshaler.cs
- XmlComment.cs
- HealthMonitoringSection.cs
- HttpProfileGroupBase.cs
- DataObjectEventArgs.cs
- WebConfigurationManager.cs
- InstanceStoreQueryResult.cs
- HandleValueEditor.cs
- DSASignatureDeformatter.cs
- TypeNameHelper.cs
- WorkflowOperationFault.cs
- SliderAutomationPeer.cs
- WmpBitmapEncoder.cs
- PointAnimationUsingPath.cs
- OdbcConnectionPoolProviderInfo.cs
- ToolZone.cs
- ResourceSetExpression.cs
- StringConcat.cs
- BinaryFormatterWriter.cs
- DesignerLinkAdapter.cs
- ToolStripItemImageRenderEventArgs.cs
- DataServiceRequest.cs
- NativeActivityAbortContext.cs
- MemoryMappedViewAccessor.cs
- ToolStripItemEventArgs.cs
- GradientBrush.cs
- CodeRemoveEventStatement.cs
- XmlText.cs
- IntegerValidatorAttribute.cs
- ReferenceSchema.cs
- RecordsAffectedEventArgs.cs
- XmlReflectionMember.cs
- AliasedSlot.cs
- IsolatedStorageException.cs
- Point3D.cs
- ProcessManager.cs
- UserMapPath.cs
- DataGridCell.cs
- WeakRefEnumerator.cs
- Glyph.cs
- MeasurementDCInfo.cs
- ExecutorLocksHeldException.cs
- CryptoStream.cs
- ListBox.cs
- HttpFormatExtensions.cs
- WebPart.cs
- HtmlInputControl.cs
- XmlNamedNodeMap.cs
- securitycriticaldataformultiplegetandset.cs
- ToolStripLocationCancelEventArgs.cs