summaryrefslogtreecommitdiff
path: root/source/slang/slang-compiler.h
diff options
context:
space:
mode:
authorYong He <yonghe@outlook.com>2024-06-12 09:45:50 -0700
committerGitHub <noreply@github.com>2024-06-12 09:45:50 -0700
commitccc26c2d22d471ae649bf16f37ed1cd6cfbddd1b (patch)
treef1b84f6c30d2f8aa5014587ef1b7995ae51996e4 /source/slang/slang-compiler.h
parent318adcc27b8d89ec1d47c445a93239dd81be0b31 (diff)
Extend the COM-based API to support whole program compilation. (#4355)
Diffstat (limited to 'source/slang/slang-compiler.h')
-rwxr-xr-xsource/slang/slang-compiler.h31
1 files changed, 30 insertions, 1 deletions
diff --git a/source/slang/slang-compiler.h b/source/slang/slang-compiler.h
index 789ac8816..881f511d0 100755
--- a/source/slang/slang-compiler.h
+++ b/source/slang/slang-compiler.h
@@ -309,6 +309,10 @@ namespace Slang
SlangInt targetIndex,
slang::IBlob** outCode,
slang::IBlob** outDiagnostics) SLANG_OVERRIDE;
+ SLANG_NO_THROW SlangResult SLANG_MCALL getTargetCode(
+ SlangInt targetIndex,
+ slang::IBlob** outCode,
+ slang::IBlob** outDiagnostics = nullptr) SLANG_OVERRIDE;
SLANG_NO_THROW SlangResult SLANG_MCALL getResultAsFileSystem(
SlangInt entryPointIndex,
@@ -602,11 +606,12 @@ namespace Slang
Index argCount,
DiagnosticSink* sink) SLANG_OVERRIDE;
- private:
+ public:
CompositeComponentType(
Linkage* linkage,
List<RefPtr<ComponentType>> const& childComponents);
+ private:
List<RefPtr<ComponentType>> m_childComponents;
// The following arrays hold the concatenated entry points, parameters,
@@ -879,6 +884,14 @@ namespace Slang
return Super::getEntryPointCode(entryPointIndex, targetIndex, outCode, outDiagnostics);
}
+ SLANG_NO_THROW SlangResult SLANG_MCALL getTargetCode(
+ SlangInt targetIndex,
+ slang::IBlob** outCode,
+ slang::IBlob** outDiagnostics) SLANG_OVERRIDE
+ {
+ return Super::getTargetCode(targetIndex, outCode, outDiagnostics);
+ }
+
SLANG_NO_THROW SlangResult SLANG_MCALL getResultAsFileSystem(
SlangInt entryPointIndex,
SlangInt targetIndex,
@@ -1112,6 +1125,14 @@ namespace Slang
return Super::getEntryPointCode(entryPointIndex, targetIndex, outCode, outDiagnostics);
}
+ SLANG_NO_THROW SlangResult SLANG_MCALL getTargetCode(
+ SlangInt targetIndex,
+ slang::IBlob** outCode,
+ slang::IBlob** outDiagnostics) SLANG_OVERRIDE
+ {
+ return Super::getTargetCode(targetIndex, outCode, outDiagnostics);
+ }
+
SLANG_NO_THROW SlangResult SLANG_MCALL getResultAsFileSystem(
SlangInt entryPointIndex,
SlangInt targetIndex,
@@ -1286,6 +1307,14 @@ namespace Slang
return Super::getEntryPointCode(entryPointIndex, targetIndex, outCode, outDiagnostics);
}
+ SLANG_NO_THROW SlangResult SLANG_MCALL getTargetCode(
+ SlangInt targetIndex,
+ slang::IBlob** outCode,
+ slang::IBlob** outDiagnostics) SLANG_OVERRIDE
+ {
+ return Super::getTargetCode(targetIndex, outCode, outDiagnostics);
+ }
+
SLANG_NO_THROW SlangResult SLANG_MCALL getResultAsFileSystem(
SlangInt entryPointIndex,
SlangInt targetIndex,