summaryrefslogtreecommitdiff
path: root/source/slang/slang-module-library.h
diff options
context:
space:
mode:
Diffstat (limited to 'source/slang/slang-module-library.h')
-rw-r--r--source/slang/slang-module-library.h10
1 files changed, 7 insertions, 3 deletions
diff --git a/source/slang/slang-module-library.h b/source/slang/slang-module-library.h
index 7b65dad9e..58d10bfc3 100644
--- a/source/slang/slang-module-library.h
+++ b/source/slang/slang-module-library.h
@@ -10,7 +10,7 @@ namespace Slang
{
// Class to hold information serialized in from a -r slang-lib/slang-module
-class ModuleLibrary : public ComObject, public IArtifactInstance
+class ModuleLibrary : public ComObject, public IArtifactRepresentation
{
public:
@@ -18,14 +18,18 @@ public:
SLANG_CLASS_GUID(0x2f7412bd, 0x6154, 0x40a9, { 0x89, 0xb3, 0x62, 0xe0, 0x24, 0x17, 0x24, 0xa1 });
- // IArtifactInstance
+ // ICastable
+ virtual SLANG_NO_THROW void* SLANG_MCALL castAs(const Guid& guid) SLANG_OVERRIDE;
+
+ // IArtifactRepresentation
virtual SLANG_NO_THROW SlangResult SLANG_MCALL writeToBlob(ISlangBlob** blob) SLANG_OVERRIDE { SLANG_UNUSED(blob); return SLANG_E_NOT_IMPLEMENTED; }
- virtual SLANG_NO_THROW void* SLANG_MCALL queryObject(const Guid& classGuid) SLANG_OVERRIDE { return classGuid == getTypeGuid() ? this : nullptr; }
+ virtual SLANG_NO_THROW bool SLANG_MCALL exists() SLANG_OVERRIDE { return true; }
List<FrontEndCompileRequest::ExtraEntryPointInfo> m_entryPoints;
List<RefPtr<IRModule>> m_modules;
void* getInterface(const Guid& uuid);
+ void* getObject(const Guid& uuid);
};
SlangResult loadModuleLibrary(const Byte* inBytes, size_t bytesCount, EndToEndCompileRequest* req, RefPtr<ModuleLibrary>& module);