yum-mirror/slang

Making it easier to work with shaders

git clone https://git.yummers.dev/yum-mirror/slang

Ellie Hermaszewskaformatf65d756bf

master
1.3 KiB34 linesraw
1#pragma once
2
3#include "../../source/compiler-core/slang-artifact.h"
4#include "../../source/core/slang-common.h"
5#include "../../tools/unit-test/slang-unit-test.h"
6
7namespace Slang
8{
9
10class IFileCheck : public ICastable
11{
12public:
13    SLANG_COM_INTERFACE(
14        0x046bfe4a,
15        0x99a3,
16        0x402f,
17        {0x83, 0xd7, 0x81, 0x8d, 0xa1, 0x38, 0xed, 0xfa})
18
19    using ReportDiagnostic = void(SLANG_STDCALL*)(void*, TestMessageType, const char*) noexcept;
20
21    virtual TestResult SLANG_MCALL performTest(
22        const char* programName,       // Included in diagnostic messages, for example "slang-test"
23        const char* rulesFilePath,     // The file from which to read the FileCheck rules
24        const char* fileCheckPrefix,   // The name of the FileCheck files to use in the rules file
25        const char* stringToCheck,     // The string to match with the rules
26        const char* stringToCheckName, // The name of that string, for example "actual-output"
27        ReportDiagnostic testReporter, // A callback for reporting diagnostic messages
28        void* reporterData,            // Some data to pass on to the callback
29        bool colorDiagnosticOutput     // Include color control codes in the string passed to
30                                       // testReporter
31        ) noexcept = 0;
32};
33
34} // namespace Slang