public static ElemT FindByLabel <ElemT, LabelT, ParamT> (this List <ElemT> self, LabelT targetLabel, ParamT parameters) where ElemT : ILabeled <LabelT, ParamT> { if (self == null) { throw new ArgumentNullException("self"); } return(self.Find(ListSearchByLabel <ElemT, LabelT, ParamT> .GetPredicate(targetLabel, parameters))); }
public static int FindIndexByLabel <ElemT, LabelT> (this List <ElemT> self, LabelT targetLabel) where ElemT : ILabeled <LabelT> { if (self == null) { throw new ArgumentNullException("self"); } return(self.FindIndex(ListSearchByLabel <ElemT, LabelT> .GetPredicate(targetLabel))); }