IStack<T> Interface

Definition

Represents a variable size last-in-first-out (LIFO) collection of instances of the same arbitrary type.

Delphi
type IStack<T> = interface(IEnumerable<T>)

Type Parameters

T

Specifies the type of elements in the stack.

Inheritance
IInterface
IStack<T>
Derived

Properties

Capacity

Gets or sets the total number of elements the internal data structure can hold without resizing.

Comparer

Gets the assigned comparer. If no comparer was assigned it returns the default comparer.

(Inherited from IEnumerable<T>)
Count

Returns the number of elements in the sequence.

(Inherited from IEnumerable<T>)
ElementType

Gets the type of the elements in the sequence.

(Inherited from IEnumerable<T>)
IsEmpty

Determines whether the sequence contains no elements.

(Inherited from IEnumerable<T>)
OnChanged

Occurs when an item is added, removed, or moved, or the entire list is refreshed.

Methods

Aggregate(Func<T,T,T>)

Applies an accumulator function over the sequence.

(Inherited from IEnumerable<T>)
All(Predicate<T>)

Determines whether all elements of the sequence satisfy a condition.

(Inherited from IEnumerable<T>)
Any(Predicate<T>)

Determines whether any element of the sequence satisfies a condition.

(Inherited from IEnumerable<T>)
AsObject

Returns the reference to this instance.

(Inherited from IEnumerable<T>)
AtLeast(Integer)

Determines whether or not the number of elements in the sequence is greater than or equal to the given count.

(Inherited from IEnumerable<T>)
AtMost(Integer)

Determines whether or not the number of elements in the sequence is lesser than or equal to the given count.

(Inherited from IEnumerable<T>)
Average(Func<T,Currency>)

Computes the average of a sequence of Currency values that are obtained by invoking a transform function on each element of the input sequence.

(Inherited from IEnumerable<T>)
Between(Integer, Integer)

Determines whether or not the number of elements in the sequence is between an inclusive range of minimum and maximum integers.

(Inherited from IEnumerable<T>)
Clear

Removes all elements from the stack.

Concat(IEnumerable<T>)

Concatenates two sequences.

(Inherited from IEnumerable<T>)
Contains(T, TEqualityComparison<T>)

Determines whether the sequence contains a specified element by using a specified equality comparison.

(Inherited from IEnumerable<T>)
DefaultIfEmpty(T)

Returns the elements of the sequence or the specified default value in sequence if the sequence is empty.

(Inherited from IEnumerable<T>)
Distinct(IEqualityComparer<T>)

Returns distinct elements from the sequence by using a specified equality comparer to compare values.

(Inherited from IEnumerable<T>)
ElementAt(Integer)

Returns the element at a specified index in the sequence.

(Inherited from IEnumerable<T>)
ElementAtOrDefault(Integer, T)

Returns the element at a specified index in the sequence or the specified default value if the index is out of range.

(Inherited from IEnumerable<T>)
EqualsTo(IEnumerable<T>, IEqualityComparer<T>)

Determines whether two sequences are equal by comparing their elements by using a specified equality comparer.

(Inherited from IEnumerable<T>)
Exactly(Integer)

Determines whether or not the number of elements in the sequence is equals to the given count.

(Inherited from IEnumerable<T>)
Exclude(IEnumerable<T>, IEqualityComparer<T>)

Produces the set difference of two sequences by using the specified equality comparer to compare values.

(Inherited from IEnumerable<T>)
Extract

Removes and returns the element at the top of the stack. If the stack has ownership over the instances, then ownership of the returned element is transferred to the caller.

First(Predicate<T>)

Returns the first element in the sequence that satisfies a specified condition.

(Inherited from IEnumerable<T>)
FirstOrDefault(Predicate<T>, T)

Returns the first element of the sequence that satisfies the specified condition or the specified default value if no such element is found.

(Inherited from IEnumerable<T>)
ForEach(Action<T>)

Performs the specified action on each element of the sequence.

(Inherited from IEnumerable<T>)
GetCapacity
GetComparer

Returns the specified comparer for this instance.

(Inherited from IEnumerable<T>)
GetCount (Inherited from IEnumerable<T>)
GetElementType (Inherited from IEnumerable<T>)
GetEnumerator

Returns an enumerator that iterates through the collection.

(Inherited from IEnumerable<T>)
GetIsEmpty (Inherited from IEnumerable<T>)
GetNonEnumeratedCount

Attempts to determine the number of elements in the sequence without forcing an enumeration.

(Inherited from IEnumerable<T>)
GetOnChanged
Intersect(IEnumerable<T>, IEqualityComparer<T>)

Produces the set intersection of two sequences by using the specified equality comparer to compare values.

(Inherited from IEnumerable<T>)
Last(Predicate<T>)

Returns the last element of the sequence that satisfies the specified condition.

(Inherited from IEnumerable<T>)
LastOrDefault(Predicate<T>, T)

Returns the last element of the sequence that satisfies the specified condition or the specified default value if no such element is found.

(Inherited from IEnumerable<T>)
Max(TComparison<T>)

Returns the maximum value in the sequence by using the specified comparison.

(Inherited from IEnumerable<T>)
Memoize

Returns a sequence that lazily caches the sequence as it is iterated for the first time, reusing the cache thereafter for future re-iterations. If the sequence is already cached or buffered then it is returned verbatim.

(Inherited from IEnumerable<T>)
Min(TComparison<T>)

Returns the minimum value in the sequence by using the specified comparison.

(Inherited from IEnumerable<T>)
Ordered(TComparison<T>)

Sorts the elements of the sequence in ascending order using the specified comparison.

(Inherited from IEnumerable<T>)
Peek

Returns the element at the top of the stack without removing it.

PeekOrDefault

Returns the element at the top of the stack without removing it. Returns Default(T) if the stack is empty.

Pop

Removes the element at the top of the stack.

Push(T)

Adds an element at the top of the stack.

Reversed

Inverts the order of the elements in the sequence.

(Inherited from IEnumerable<T>)
SetCapacity(Integer)
Shuffled

Returns a sequence of elements in random order from the original.

(Inherited from IEnumerable<T>)
Single(Predicate<T>)

Returns the only element of the sequence that satisfies a specified condition, and raises an exception if more than one such element exists.

(Inherited from IEnumerable<T>)
SingleOrDefault(Predicate<T>, T)

Returns the only element of the sequence that satisfies a specified condition, or a specified default value if no such element exists; this method raises an exception if more than one element satisfies the condition.

(Inherited from IEnumerable<T>)
Skip(Integer)

Bypasses a specified number of elements in the sequence and then returns the remaining elements.

(Inherited from IEnumerable<T>)
SkipLast(Integer)

Omits the specified number of elements at the end of the sequence.

(Inherited from IEnumerable<T>)
SkipWhile(Func<T,Integer,Boolean>)

Bypasses elements in the sequence as long as a specified condition is true and then returns the remaining elements. The element's index is used in the logic of the predicate function.

(Inherited from IEnumerable<T>)
Sum(Func<T,Currency>)

Computes the sum of the sequence of Currency values that are obtained by invoking a transform function on each element of the input sequence.

(Inherited from IEnumerable<T>)
Take(Integer)

Returns the specified number of contiguous elements from the start of the sequence.

(Inherited from IEnumerable<T>)
TakeLast(Integer)

Returns the specified number of contiguous elements from the end of the sequence.

(Inherited from IEnumerable<T>)
TakeWhile(Func<T,Integer,Boolean>)

Returns elements from the sequence as long as a specified condition is true. The element's index is used in the logic of the predicate function.

(Inherited from IEnumerable<T>)
ToArray

Creates a new array which is filled with the elements in the collection.

(Inherited from IEnumerable<T>)
TrimExcess

Sets the capacity to the actual number of elements in the stack.

TryExtract(T)

Attempts to remove and return the element at the top of the stack. If the stack has ownership over the instances, then ownership of the returned element is transferred to the caller.

TryGetElementAt(T, Integer)

Attempts to get the element at a specified index in the sequence.

(Inherited from IEnumerable<T>)
TryGetFirst(T, Predicate<T>)

Attempts to get the first element in the sequence that satisfies a specified condition.

(Inherited from IEnumerable<T>)
TryGetLast(T, Predicate<T>)

Attempts to get the last element in the sequence that satisfies a specified condition.

(Inherited from IEnumerable<T>)
TryGetSingle(T, Predicate<T>)

Attempts to get the only element in the sequence that satisfies a specified condition.

(Inherited from IEnumerable<T>)
TryPeek(T)

Attempts to return an element from the top of the stack without removing it.

TryPop(T)

Attempts to remove and return the element at the top of the stack.

Union(IEnumerable<T>, IEqualityComparer<T>)

Produces the set union of two sequences by using a specified equality comparer.

(Inherited from IEnumerable<T>)
Where(Func<T,Integer,Boolean>)

Filters the sequence based on the specified predicate. Each element's index is used in the logic of the predicate function.

(Inherited from IEnumerable<T>)