From 2825bceecf33a15b9b7942db5331a32cbc39b281 Mon Sep 17 00:00:00 2001 From: Emery Hemingway Date: Thu, 8 Feb 2024 14:21:11 +0000 Subject: [PATCH] preserves_schema_nim: collect imports of simple compounds --- preserves.nimble | 2 +- src/preserves/preserves_schema_nim.nim | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/preserves.nimble b/preserves.nimble index 7363ada..7f6711d 100644 --- a/preserves.nimble +++ b/preserves.nimble @@ -1,6 +1,6 @@ # Package -version = "20240206" +version = "20240208" author = "Emery Hemingway" description = "data model and serialization format" license = "Unlicense" diff --git a/src/preserves/preserves_schema_nim.nim b/src/preserves/preserves_schema_nim.nim index 5ccdf5a..a1b3dfa 100644 --- a/src/preserves/preserves_schema_nim.nim +++ b/src/preserves/preserves_schema_nim.nim @@ -930,10 +930,15 @@ proc collectRefImports(imports: var StringSet; loc: Location; pat: Pattern) proc collectRefImports(imports: var StringSet; loc: Location; sp: SimplePattern) = case sp.orKind + of SimplePatternKind.seqof: + collectRefImports(imports, loc, sp.seqof.pattern) of SimplePatternKind.setof: incl(imports, "std/sets") + collectRefImports(imports, loc, sp.setof.pattern) of SimplePatternKind.dictof: incl(imports, "std/tables") + collectRefImports(imports, loc, sp.dictof.key) + collectRefImports(imports, loc, sp.dictof.value) of SimplePatternKind.Ref: if sp.ref.module != @[] and sp.ref.module != loc.schemaPath: incl(imports, string sp.ref.module[0])