diff --git a/preserves.nimble b/preserves.nimble index 907ad9a..552f02f 100644 --- a/preserves.nimble +++ b/preserves.nimble @@ -1,6 +1,6 @@ # Package -version = "20231230" +version = "20240101" 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 778c9a8..3d32a55 100644 --- a/src/preserves/preserves_schema_nim.nim +++ b/src/preserves/preserves_schema_nim.nim @@ -126,11 +126,6 @@ proc deref(loc: Location; r: Ref): (Location, Definition) = except KeyError: raise newException(KeyError, "reference not found in bundle: " & $r) -proc hasEmbeddedType(scm: Schema): bool = - case scm.field0.embeddedType.orKind - of EmbeddedtypenameKind.false: false - of EmbeddedtypenameKind.Ref: true - proc hash(r: Ref): Hash = r.toPreserves.hash type RefSet = HashSet[Ref] @@ -611,7 +606,7 @@ proc addField(recList: PNode; loc: Location; known: var TypeTable; sp: SimplePat ident"preservesLiteral", toStrLit(loc, sp)))) recList.add identDef(scm, id, TypeSpec(node: ident"tuple[]")) - elif sp.orKind == SimplePatternKind.embedded and not scm.hasEmbeddedType: + elif sp.orKind == SimplePatternKind.embedded: let id = nkPragmaExpr.newTree( id, nkPragma.newTree(ident"preservesEmbedded")) recList.add identDef(scm, id, nimTypeOf(loc, known, "", sp))