From 20ea33f3321738e7c1b4cad7bdcaedcdb54dd0f0 Mon Sep 17 00:00:00 2001 From: jsmall-nvidia Date: Tue, 11 Apr 2023 10:18:18 -0400 Subject: Artifact simplification (#2781) * #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. --- source/compiler-core/slang-artifact-handler-impl.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'source/compiler-core/slang-artifact-handler-impl.cpp') diff --git a/source/compiler-core/slang-artifact-handler-impl.cpp b/source/compiler-core/slang-artifact-handler-impl.cpp index 84b786784..1b71dbf59 100644 --- a/source/compiler-core/slang-artifact-handler-impl.cpp +++ b/source/compiler-core/slang-artifact-handler-impl.cpp @@ -9,7 +9,7 @@ #include "slang-artifact-helper.h" #include "slang-artifact-util.h" -#include "../core/slang-castable-util.h" +#include "../core/slang-castable.h" #include "slang-slice-allocator.h" @@ -93,8 +93,9 @@ SlangResult DefaultArtifactHandler::_addRepresentation(IArtifact* artifact, Arti return SLANG_OK; } -SlangResult DefaultArtifactHandler::expandChildren(IArtifactContainer* container) +SlangResult DefaultArtifactHandler::expandChildren(IArtifact* container) { + // First check if it has already been expanded SlangResult res = container->getExpandChildrenResult(); if (res != SLANG_E_UNINITIALIZED) { @@ -109,6 +110,7 @@ SlangResult DefaultArtifactHandler::expandChildren(IArtifactContainer* container container->setChildren(nullptr, 0); return SLANG_OK; } + // TODO(JS): // Proper implementation should (for example) be able to expand a Zip file etc. return SLANG_E_NOT_IMPLEMENTED; -- cgit v1.2.3