summaryrefslogtreecommitdiff
path: root/slang.h
diff options
context:
space:
mode:
authorjsmall-nvidia <jsmall@nvidia.com>2023-04-12 16:24:08 -0400
committerGitHub <noreply@github.com>2023-04-12 16:24:08 -0400
commitd631ef9518e3a38bd10949f01700cbcba306252f (patch)
treeeeb065fe132c4fc61d3c484837951fba9ff44b3b /slang.h
parent2ce42a25d9732650cfac72211aa918e2fa82b8de (diff)
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.
Diffstat (limited to 'slang.h')
-rw-r--r--slang.h6
1 files changed, 6 insertions, 0 deletions
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.