//public IEnumerable<TIfcType> OfType<TIfcType>() where TIfcType : IPersistIfcEntity //{ // return cache.OfType<TIfcType>(false); //} /// <summary> /// Filters the Ifc Instances based on their Type and the predicate /// </summary> /// <typeparam name = "TIfcType">Ifc Type to filter</typeparam> /// <param name = "expression">function to execute</param> /// <returns></returns> public IEnumerable <TIfcType> Where <TIfcType>(Expression <Func <TIfcType, bool> > expression) where TIfcType : IPersistIfcEntity { foreach (var item in cache.Where(expression)) { yield return(item); } }