public static void Dispose <T>(this ExtensionPoint <T> extensionPoint) { var disposable = extensionPoint.ExtendedValue as IDisposable; disposable.Maybe(d => d.Dispose()); }
public static IDisposable Using <T>(this ExtensionPoint <T> extensionPoint) { var disposable = extensionPoint.ExtendedValue as IDisposable; return(disposable ?? NullDisposable.Instance); }
public static bool IsDefault <T>(this ExtensionPoint <T> extensionPoint) { return(Equals(extensionPoint.ExtendedValue, default(T))); }