using System;
using System.Collections;
namespace System.Security.AccessControl
{
/// Provides the ability to iterate through the access control entries (ACEs) in an access control list (ACL).
// Token: 0x020004A6 RID: 1190
public sealed class AceEnumerator : IEnumerator
{
// Token: 0x06002CAA RID: 11434 RVA: 0x00092E34 File Offset: 0x00091034
internal AceEnumerator(GenericAcl owner)
{
this.owner = owner;
}
// Token: 0x170008B7 RID: 2231
// (get) Token: 0x06002CAB RID: 11435 RVA: 0x00092E4C File Offset: 0x0009104C
object IEnumerator.Current
{
get
{
return this.Current;
}
}
/// Gets the current element in the collection. This property gets the type-friendly version of the object.
/// The current element in the collection.
// Token: 0x170008B8 RID: 2232
// (get) Token: 0x06002CAC RID: 11436 RVA: 0x00092E54 File Offset: 0x00091054
public GenericAce Current
{
get
{
return (this.current >= 0) ? this.owner[this.current] : null;
}
}
/// Advances the enumerator to the next element of the collection.
/// true if the enumerator was successfully advanced to the next element; false if the enumerator has passed the end of the collection.
/// The collection was modified after the enumerator was created.
// Token: 0x06002CAD RID: 11437 RVA: 0x00092E7C File Offset: 0x0009107C
public bool MoveNext()
{
if (this.current + 1 == this.owner.Count)
{
return false;
}
this.current++;
return true;
}
/// Sets the enumerator to its initial position, which is before the first element in the collection.
/// The collection was modified after the enumerator was created.
// Token: 0x06002CAE RID: 11438 RVA: 0x00092EA8 File Offset: 0x000910A8
public void Reset()
{
this.current = -1;
}
// Token: 0x0400116D RID: 4461
private GenericAcl owner;
// Token: 0x0400116E RID: 4462
private int current = -1;
}
}