Code:
/ FX-1434 / FX-1434 / 1.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
- ExportException.cs
- WebPartCatalogCloseVerb.cs
- CriticalFinalizerObject.cs
- XmlAnyAttributeAttribute.cs
- SocketElement.cs
- EnumConverter.cs
- ChannelFactoryRefCache.cs
- WebZone.cs
- ApplicationManager.cs
- AnnotationService.cs
- DataGridViewRowCancelEventArgs.cs
- DeflateStream.cs
- IconEditor.cs
- ColumnMapVisitor.cs
- ConnectivityStatus.cs
- _SslStream.cs
- PhysicalOps.cs
- NotifyInputEventArgs.cs
- OdbcFactory.cs
- StorageBasedPackageProperties.cs
- SystemIPAddressInformation.cs
- RequestTimeoutManager.cs
- CqlParser.cs
- HierarchicalDataBoundControlAdapter.cs
- EventManager.cs
- TcpStreams.cs
- ToolStripItemRenderEventArgs.cs
- NamespaceQuery.cs
- Method.cs
- WebPartVerbsEventArgs.cs
- PromptEventArgs.cs
- CollectionViewGroup.cs
- unsafenativemethodstextservices.cs
- DynamicDataRoute.cs
- RotationValidation.cs
- SQLChars.cs
- AnimationClockResource.cs
- RemotingException.cs
- ArrayHelper.cs
- JoinCqlBlock.cs
- CodeDirectoryCompiler.cs
- TextChange.cs
- UIElementCollection.cs
- ComponentEditorForm.cs
- Track.cs
- BitmapEffectDrawing.cs
- TreeViewImageIndexConverter.cs
- ListDictionary.cs
- ParameterCollection.cs
- BlockingCollection.cs
- X500Name.cs
- ContextMenuAutomationPeer.cs
- UiaCoreTypesApi.cs
- ColumnMapCopier.cs
- TabControlCancelEvent.cs
- XmlSchemaNotation.cs
- FontUnit.cs
- EntityDataSourceContainerNameItem.cs
- WebPartDeleteVerb.cs
- PrefixHandle.cs
- EventRoute.cs
- securestring.cs
- CheckPair.cs
- GridViewAutomationPeer.cs
- DataSourceSelectArguments.cs
- DateTimeParse.cs
- XmlWrappingReader.cs
- SqlAggregateChecker.cs
- FlowDocumentFormatter.cs
- MatcherBuilder.cs
- BinaryCommonClasses.cs
- BitmapData.cs
- ListViewCommandEventArgs.cs
- UnaryOperationBinder.cs
- RepeaterItemCollection.cs
- PageCatalogPart.cs
- VisualStyleRenderer.cs
- SystemParameters.cs
- DocumentViewerHelper.cs
- EmbeddedMailObject.cs
- WebColorConverter.cs
- ResolveInfo.cs
- MatrixConverter.cs
- ServiceInfoCollection.cs
- HttpException.cs
- OleDbRowUpdatingEvent.cs
- ObjectConverter.cs
- PolicyDesigner.cs
- DataComponentGenerator.cs
- CodeAttributeArgument.cs
- XmlHierarchicalDataSourceView.cs
- FilteredXmlReader.cs
- MessageBox.cs
- LoginNameDesigner.cs
- SortableBindingList.cs
- HtmlInputButton.cs
- ClientSession.cs
- InternalMappingException.cs
- XmlCodeExporter.cs
- Point.cs