blob: e28d95ad5f6c35644ad7b86fc45b5f7a9d586579 (
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
|
// slang-stdlib.cpp
#include "slang-compiler.h"
#include "slang-ir.h"
#include "../core/slang-string-util.h"
#define STRINGIZE(x) STRINGIZE2(x)
#define STRINGIZE2(x) #x
#define LINE_STRING STRINGIZE(__LINE__)
namespace Slang
{
String Session::getStdlibPath()
{
if(stdlibPath.getLength() == 0)
{
// Make sure we have a line of text from __FILE__, that we'll extract the filename from
List<UnownedStringSlice> lines;
StringUtil::calcLines(UnownedStringSlice::fromLiteral(__FILE__), lines);
SLANG_ASSERT(lines.getCount() > 0 && lines[0].getLength() > 0);
// Make the path just the filename to remove issues around path being included on different targets
stdlibPath = Path::getFileName(lines[0]);
}
return stdlibPath;
}
}
|