public static IEnumerable <SearchDatabase> Enumerate(IndexLocation location, params string[] types)
        {
            return(EnumerateAll().Where(db =>
            {
                if (types != null && types.Length > 0 && Array.IndexOf(types, db.settings.type) == -1)
                {
                    return false;
                }

                if (location == IndexLocation.all)
                {
                    return true;
                }
                else if (location == IndexLocation.packages)
                {
                    return !string.IsNullOrEmpty(db.path) && db.path.StartsWith("Packages", StringComparison.OrdinalIgnoreCase);
                }

                return string.IsNullOrEmpty(db.path) || db.path.StartsWith("Assets", StringComparison.OrdinalIgnoreCase);
            }));
        }
예제 #2
0
 public bool Equals(IndexLocation other)
 {
     return data0 == other.data0 && data1 == other.data1 && data2 == other.data2;
 }
예제 #3
0
 internal static extern SourceLocation clang_indexLoc_getCXSourceLocation(IndexLocation idxLoc);