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
- OutgoingWebResponseContext.cs
- PartBasedPackageProperties.cs
- EqualityArray.cs
- TextSegment.cs
- ConnectionStringsSection.cs
- _FixedSizeReader.cs
- ProfileSettings.cs
- EventRecord.cs
- ReferencedAssembly.cs
- processwaithandle.cs
- TextAnchor.cs
- GridViewColumnCollection.cs
- DllNotFoundException.cs
- DataPager.cs
- SimplePropertyEntry.cs
- DispatcherOperation.cs
- SortQuery.cs
- MatrixAnimationBase.cs
- XmlWhitespace.cs
- SystemColors.cs
- BodyGlyph.cs
- DefaultValueAttribute.cs
- ListBoxItemAutomationPeer.cs
- BindUriHelper.cs
- InvalidComObjectException.cs
- FloaterParaClient.cs
- SchemaNames.cs
- Floater.cs
- DesignerSerializationManager.cs
- TextSyndicationContentKindHelper.cs
- HandlerFactoryCache.cs
- ListBoxChrome.cs
- TransformValueSerializer.cs
- TableNameAttribute.cs
- Simplifier.cs
- DispatcherHookEventArgs.cs
- MetafileHeader.cs
- COM2PictureConverter.cs
- SvcMapFile.cs
- LockCookie.cs
- PassportAuthenticationModule.cs
- ParameterCollection.cs
- Int64Animation.cs
- CookieProtection.cs
- PriorityItem.cs
- Storyboard.cs
- OleDbConnectionFactory.cs
- ToolStripSeparatorRenderEventArgs.cs
- TrustSection.cs
- BitHelper.cs
- IRCollection.cs
- FastPropertyAccessor.cs
- CustomAttributeBuilder.cs
- PipelineComponent.cs
- ExpressionLexer.cs
- DesigntimeLicenseContextSerializer.cs
- DSASignatureFormatter.cs
- HttpPostLocalhostServerProtocol.cs
- XmlUrlResolver.cs
- RetriableClipboard.cs
- XmlSchemaAnyAttribute.cs
- IUnknownConstantAttribute.cs
- DocumentApplicationJournalEntry.cs
- DataSourceUtil.cs
- LocalizationParserHooks.cs
- PointValueSerializer.cs
- TdsParserSafeHandles.cs
- AddInAttribute.cs
- AnonymousIdentificationModule.cs
- PrintingPermission.cs
- Zone.cs
- TextTreeInsertUndoUnit.cs
- TraversalRequest.cs
- StreamGeometry.cs
- PropertySet.cs
- FloatMinMaxAggregationOperator.cs
- BufferBuilder.cs
- SchemaDeclBase.cs
- CodeAttributeArgument.cs
- ChangeNode.cs
- BufferedStream2.cs
- MetadataArtifactLoaderCompositeResource.cs
- Formatter.cs
- HtmlHead.cs
- Internal.cs
- EntityParameterCollection.cs
- Authorization.cs
- _ReceiveMessageOverlappedAsyncResult.cs
- CodeDomExtensionMethods.cs
- PanelStyle.cs
- Convert.cs
- CodeRemoveEventStatement.cs
- InputMethod.cs
- SecureStringHasher.cs
- SymbolType.cs
- BamlLocalizerErrorNotifyEventArgs.cs
- MarkerProperties.cs
- GridViewPageEventArgs.cs
- ProcessRequestAsyncResult.cs
- Light.cs