summaryrefslogtreecommitdiff
path: root/slang.h
diff options
context:
space:
mode:
Diffstat (limited to 'slang.h')
-rw-r--r--slang.h14
1 files changed, 9 insertions, 5 deletions
diff --git a/slang.h b/slang.h
index 4d775ac45..c4e62f01e 100644
--- a/slang.h
+++ b/slang.h
@@ -2820,9 +2820,10 @@ namespace slang
It is an error to create a composite component type that recursively
aggregates the a single module more than once.
*/
- virtual SLANG_NO_THROW IComponentType* SLANG_MCALL createCompositeComponentType(
+ virtual SLANG_NO_THROW SlangResult SLANG_MCALL createCompositeComponentType(
IComponentType* const* componentTypes,
SlangInt componentTypeCount,
+ IComponentType** outCompositeComponentType,
ISlangBlob** outDiagnostics = nullptr) = 0;
/** Specialize a type based on type arguments.
@@ -2965,13 +2966,12 @@ namespace slang
The `specializationArgs` array must have `specializationArgCount` entries, and
this must match the number of specialization parameters on this component type.
- If the specialization arguments are not valid, then the function will return null.
-
If any diagnostics (error or warnings) are produced, they will be written to `outDiagnostics`.
*/
- virtual SLANG_NO_THROW IComponentType* SLANG_MCALL specialize(
+ virtual SLANG_NO_THROW SlangResult SLANG_MCALL specialize(
SpecializationArg const* specializationArgs,
SlangInt specializationArgCount,
+ IComponentType** outSpecializedComponentType,
ISlangBlob** outDiagnostics = nullptr) = 0;
};
#define SLANG_UUID_IComponentType { 0x5bc42be8, 0x5c50, 0x4929, { 0x9e, 0x5e, 0xd1, 0x5e, 0x7c, 0x24, 0x1, 0x5f } };
@@ -2999,7 +2999,6 @@ namespace slang
#define SLANG_UUID_IModule { 0xc720e64, 0x8722, 0x4d31, { 0x89, 0x90, 0x63, 0x8a, 0x98, 0xb1, 0xc2, 0x79 } }
-
/** Argument used for specialization to types/values.
*/
struct SpecializationArg
@@ -3041,6 +3040,11 @@ SLANG_API SlangResult spCompileRequest_getProgram(
SlangCompileRequest* request,
slang::IComponentType** outProgram);
+SLANG_API SlangResult spCompileRequest_getEntryPoint(
+ SlangCompileRequest* request,
+ SlangInt entryPointIndex,
+ slang::IComponentType** outEntryPoint);
+
#endif
/* DEPRECATED DEFINITIONS