Mercurial > pub > ImplabNet
view Implab/Safe.cs @ 64:a809805210d1
small refactoring
| author | cin | 
|---|---|
| date | Wed, 25 Jun 2014 04:44:53 +0400 | 
| parents | c0bf853aa04f | 
| children | 790e8a997d30 | 
line wrap: on
 line source
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Text.RegularExpressions; namespace Implab { public static class Safe { public static void ArgumentMatch(string param, string name, Regex rx) { if (rx == null) throw new ArgumentNullException("rx"); if (!rx.IsMatch(param)) throw new ArgumentException(String.Format("A prameter value must match {0}", rx), name); } public static void ArgumentNotEmpty(string param, string name) { if (String.IsNullOrEmpty(param)) throw new ArgumentException("A parameter can't be empty", name); } public static void ArgumentNotNull(object param, string name) { if (param == null) throw new ArgumentNullException(name); } public static void ArgumentInRange(int arg, int min, int max, string name) { if (arg < min || arg > max) throw new ArgumentOutOfRangeException(name); } public static void Dispose<T>(T obj) where T : class { var disp = obj as IDisposable; if (disp != null) disp.Dispose(); } } }
