From 365cd4d206f9a5f6e47843e005a18cf4de5bfdd5 Mon Sep 17 00:00:00 2001 From: jsmall-nvidia Date: Mon, 21 Oct 2019 15:51:01 -0400 Subject: First pass Repro documentation (#1086) * WIP on serialize/save state. * Relative string encoding. * Added RelativeContainer unit test. Split out RelativeContainer into core. * Fix bug in RelativeString encoding. * More work around relative container. * Fix checks. * Use RelativeBase for safe access. Use malloc/free/realloc instead of List. * Add natvis support for relative types. * Setting up of state (not includes) writing of repro state. * Capture after spCompile. * Writing SourceFile and file system files. Added -dump-repo * First pass at loading state. * First pass at reading repro. * Small optimization around Safe32Ptr * Refactor how repro data is stored - to make saving off the files more simple, by having all all backed by 'files'. Make file loading always set up PathInfo so we get uniqueIdentifier info. * Generate unique file names. * Added RelativeFileSystem Added saveFile to ISlangFileSystemExt and implemented for interfaces Added mechanism to save of files (and manifest) * Added ability to replace files in repo with directory holding their contents. * Add support for entry points. * Fix problem compiling on linux. * Added SIMPLE_EX option, where everything on command line must be specified. * Fix typo in unit test for relative container. * Fix another typo in unit test for RelativeContainer. * Fix small bugs. * Fix release unused variable issue in slang-state-serialize.cpp * Fix checking for SIMPLE_EX in testing, else broke COMMAND_LINE_SIMPLE. * Fix warnings on 32 bit debug build. * First pass repro docs. --- slang.h | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'slang.h') diff --git a/slang.h b/slang.h index 970150edf..a7e4b8aa7 100644 --- a/slang.h +++ b/slang.h @@ -1618,10 +1618,13 @@ extern "C" /** Load repro from memory specified. - Should only be performed on a newly created request. + Should only be performed on a newly created request. + + NOTE! When using the fileSystem, files will be loaded via their `unique names` as if they are part of the flat file system. This + mechanism is described more fully in docs/repro.md. @param request The request - @param fileSystem An (optional) filesystem. If non null, files from repro will be loaded (by unique names) from the file system + @param fileSystem An (optional) filesystem. Pass nullptr to just use contents of repro held in data. @param data The data to load from. @param size The size of the data to load from. @returns A `SlangResult` to indicate success or failure. -- cgit v1.2.3