Skip to content

Serialization issue when using missing #108

Open
@slwu89

Description

@slwu89

The following round-trip serialization has an error when reading the data back in. The error is ERROR: MethodError: no method matching Union{Missing, String}(::String).

using Catlab

@present SimpleSch(FreeSchema) begin
    X::Ob
    Attr1::AttrType
    attr::Attr(X,Attr1)
end

@acset_type SimpleData(SimpleSch)

simple_data = @acset SimpleData{Union{String,Missing}} begin
    X=3
    attr=["a",missing,"c"]
end

write_json_acset_schema(SimpleSch, "./simplesch.json")
write_json_acset(simple_data, "./simpledata.json")

SimpleSch1 = read_json_acset_schema("./simplesch.json")

@acset_type SimpleData1(SimpleSch1)

simple_data1 = read_json_acset(SimpleData1{Union{String,Missing}}, "./simpledata.json")

On versions

  [227ef7b5] ACSets v0.2.13
  [134e5e36] Catlab v0.16.5

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions