blob: d52ef9c92a2102883fdf8981d041b89bafc0156d (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
// find-file-util.cpp
#include "directory-util.h"
#include "slang-com-helper.h"
using namespace Slang;
/* static */ SlangResult DirectoryUtil::findDirectories(
const Slang::String& directoryPath,
Slang::List<Slang::String>& outPaths)
{
outPaths.clear();
CombinePathVisitor visitor(directoryPath, Path::TypeFlag::Directory);
SLANG_RETURN_ON_FAIL(Path::find(directoryPath, nullptr, &visitor));
outPaths.swapWith(visitor.m_paths);
return SLANG_OK;
}
/* static */ SlangResult DirectoryUtil::findFilesMatchingPattern(
const Slang::String& directoryPath,
const char* pattern,
Slang::List<Slang::String>& outPaths)
{
outPaths.clear();
CombinePathVisitor visitor(directoryPath, Path::TypeFlag::File);
SLANG_RETURN_ON_FAIL(Path::find(directoryPath, pattern, &visitor));
outPaths.swapWith(visitor.m_paths);
return SLANG_OK;
}
/* static */ SlangResult DirectoryUtil::findFiles(
const Slang::String& directoryPath,
Slang::List<Slang::String>& outPaths)
{
return findFilesMatchingPattern(directoryPath, nullptr, outPaths);
}
|