diff --git a/engine/runtime-compiler/src/main/java/org/enso/compiler/pass/analyse/PassPersistance.java b/engine/runtime-compiler/src/main/java/org/enso/compiler/pass/analyse/PassPersistance.java index 73e5cb0b8928..f79b05d5594c 100644 --- a/engine/runtime-compiler/src/main/java/org/enso/compiler/pass/analyse/PassPersistance.java +++ b/engine/runtime-compiler/src/main/java/org/enso/compiler/pass/analyse/PassPersistance.java @@ -19,6 +19,12 @@ @Persistable(clazz = ModuleAnnotations.Annotations.class, id = 1118) @Persistable(clazz = AliasAnalysis.Graph.class, id = 1119) @Persistable(clazz = AliasAnalysis$Info$Scope$Root.class, id = 1120) +@Persistable(clazz = DataflowAnalysis$DependencyInfo$Type$Static.class, id = 1121) +@Persistable(clazz = DataflowAnalysis$DependencyInfo$Type$Dynamic.class, id = 1122) +@Persistable(clazz = AliasAnalysis$Info$Scope$Child.class, id = 1123) +@Persistable(clazz = AliasAnalysis$Graph$Scope.class, id = 1124) +@Persistable(clazz = AliasAnalysis$Graph$Occurrence$Use.class, id = 1125) +@Persistable(clazz = AliasAnalysis$Graph$Occurrence$Def.class, id = 1126) public final class PassPersistance { private PassPersistance() {} diff --git a/engine/runtime-parser/src/main/java/org/enso/compiler/core/ir/IrPersistance.java b/engine/runtime-parser/src/main/java/org/enso/compiler/core/ir/IrPersistance.java index f511d5305576..af057406cb8e 100644 --- a/engine/runtime-parser/src/main/java/org/enso/compiler/core/ir/IrPersistance.java +++ b/engine/runtime-parser/src/main/java/org/enso/compiler/core/ir/IrPersistance.java @@ -4,6 +4,9 @@ import java.util.HashMap; import java.util.Map; import java.util.NoSuchElementException; +import java.util.UUID; +import java.util.jar.Attributes; + import org.enso.compiler.core.Persistance; import org.enso.compiler.core.ir.expression.Application; import org.enso.compiler.core.ir.expression.Case; @@ -16,6 +19,7 @@ import org.enso.compiler.core.ir.type.Set; import org.enso.interpreter.dsl.Persistable; import org.openide.util.lookup.ServiceProvider; + import scala.Option; import scala.Tuple2; import scala.collection.Iterator; @@ -49,6 +53,8 @@ @Persistable(clazz = Set.Union.class, id = 772) @Persistable(clazz = Foreign.Definition.class, id = 781) @Persistable(clazz = Type.Function.class, id = 782) +@Persistable(clazz = Name.BuiltinAnnotation.class, id = 783) +@Persistable(clazz = Type.Error.class, id = 784) public final class IrPersistance { private IrPersistance() {} @@ -70,6 +76,24 @@ protected IdentifiedLocation readObject(Input in) throws IOException, ClassNotFo } } + @ServiceProvider(service = Persistance.class) + public static final class PersistUUID extends Persistance { + public PersistUUID() { + super(UUID.class, false, 27); + } + + @Override + protected void writeObject(UUID obj, Output out) throws IOException { + out.writeUTF(obj.toString()); + } + + @Override + protected UUID readObject(Input in) throws IOException, ClassNotFoundException { + var str = in.readUTF(); + return UUID.fromString(str); + } + } + @ServiceProvider(service = Persistance.class) public static final class PersistScalaOption extends Persistance