From d631ef9518e3a38bd10949f01700cbcba306252f Mon Sep 17 00:00:00 2001 From: jsmall-nvidia Date: Wed, 12 Apr 2023 16:24:08 -0400 Subject: Reading artifact hierarchy from file system interface (#2787) * #include an absolute path didn't work - because paths were taken to always be relative. * WIP simplifying artifact interface. * Use ContainedKind. * Remove LazyCastableList. Use ContainedKind for find. * Remove ICastableList. * Remove need for ICastableList. * Remove IArtifactContainer. * Small fixes. * Small improvements around Artifact. * Make explicit find is for *representations* that can cast. Fix bug in handling casting in lookup. * Made associated items artifacts too. * Small fixes. * Small improvements around writing a container. * WIP artifact container format. * Make the root a special case. * Special case if the artifact doesn't have children/associated. * First pass handling of interpretting a file system into artifact hierarchy. * Explain the final structure. Make the file system available. * Remove addArtifact from IArtifact interface - means will be compatible with previous version. * Rename function to get compile result as a filesytem. --- slang.h | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'slang.h') diff --git a/slang.h b/slang.h index 5dd2cb550..404d2ea23 100644 --- a/slang.h +++ b/slang.h @@ -3933,6 +3933,12 @@ namespace slang virtual SLANG_NO_THROW void const* SLANG_MCALL getCompileRequestCode( size_t* outSize) = 0; + /** Get the compilation result as a file system. + The result is not written to the actual OS file system, but is made avaiable as an + in memory representation. + */ + virtual SLANG_NO_THROW ISlangMutableFileSystem* SLANG_MCALL getCompileRequestResultAsFileSystem() = 0; + /** Return the container code as a blob. The container blob is created as part of a compilation (with spCompile), and a container is produced with a suitable ContainerFormat. -- cgit v1.2.3