示例#1
0
    public bool Enumerate(bool recursive, EnumerateEntityCallback callback)
    {
        //get the files and directories
        ProjectDirectory[] dirs  = GetDirectories();
        ProjectFile[]      files = GetFiles();

        //enumerate
        for (int c = 0; c < dirs.Length; c++)
        {
            if (!callback(dirs[c]))
            {
                return(false);
            }

            //recursion?
            if (recursive)
            {
                if (!dirs[c].Enumerate(true, callback))
                {
                    return(false);
                }
            }
        }
        for (int c = 0; c < files.Length; c++)
        {
            if (!callback(files[c]))
            {
                return(false);
            }
        }

        return(true);
    }
示例#2
0
    public bool Enumerate(bool recursive, EnumerateEntityCallback callback)
    {
        //get the files and directories
        ProjectDirectory[] dirs = GetDirectories();
        ProjectFile[] files = GetFiles();

        //enumerate
        for (int c = 0; c < dirs.Length; c++) {
            if (!callback(dirs[c])) { return false; }

            //recursion?
            if (recursive) {
                if (!dirs[c].Enumerate(true, callback)) { return false; }
            }
        }
        for (int c = 0; c < files.Length; c++) {
            if (!callback(files[c])) { return false; }
        }

        return true;
    }