Show / Hide Table of Contents
  • MaybeSharp
    • Maybe<T>
      • As
      • Bind
      • Cast
      • CompareTo
      • Equality
      • Equals
      • Explicit
      • GetHashCode
      • GreaterThan
      • GreaterThanOrEqual
      • HasValue
      • Implicit
      • Inequality
      • IsEmpty
      • LessThan
      • LessThanOrEqual
      • Maybe
      • Nothing
      • ToString
      • Value
  • MaybeSharp.Extensions
    • MaybeDictionaryExtensions
      • TryGetValue
    • MaybeExtensions
      • Coalesce
      • Or
      • Select
      • SelectMany
      • SelectNonempty
      • ToNullable
      • ValueOr
      • ValueOrException
      • WhenNothing
      • WhenSomething
      • Where
    • MaybeStringExtensions
      • TryParseBoolean
      • TryParseByte
      • TryParseChar
      • TryParseDateTime
      • TryParseDateTimeOffset
      • TryParseDecimal
      • TryParseDouble
      • TryParseInt
      • TryParseInt16
      • TryParseInt64
      • TryParseSingle
    • NullableExtensions
      • ToMaybe

Method SelectNonempty

SelectNonempty<T, TResult>(IEnumerable<Maybe<T>>, Func<T, Maybe<TResult>>)

Converts an of Maybe<T> values to a set of Maybe{TResult} values, skipping any empty values.

Declaration
public static IEnumerable<Maybe<TResult>> SelectNonempty<T, TResult>(this IEnumerable<Maybe<T>> source, Func<T, Maybe<TResult>> predicate)
Parameters
Type Name Description
IEnumerable<Maybe<T>> source

The to operate on.

Func<T, Maybe<TResult>> predicate

A function that converts a {T} value to a Maybe{TResult}.

Returns
Type Description
IEnumerable<Maybe<TResult>>

A set of Maybe{TResult} values that excludes any empty values in the source.

Type Parameters
Name Description
T

The type of value contained with the Maybe<T> instances in the source argument.

TResult

The type of value contained in the Maybe<T> instances returned.

Remarks

If source is null then an empty set is returned.

Exceptions
Type Condition
System.ArgumentNullException

Thrown if predicate is null.

Back to top Copyright (c) 2017 Troy Willmot