Changeset 15360
- Timestamp:
- 08/06/20 16:03:10 (3 years ago)
- Location:
- trunk/abcl
- Files:
-
- 2 added
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/abcl/build.xml
r15331 r15360 1060 1060 <arg value="org.armedbear.lisp.SeekableStringWriterTest"/> 1061 1061 <arg value="org.armedbear.lisp.UtilitiesTest"/> 1062 <arg value="org.armedbear.lisp.serialization.SerializationTest"/> 1062 1063 <!-- currently hangs(!) the running process 1063 1064 <arg value="org.armedbear.lisp.util.HttpHeadTest"/> -
trunk/abcl/src/org/armedbear/lisp/Function.java
r14957 r15360 34 34 package org.armedbear.lisp; 35 35 36 import java.io.NotSerializableException; 37 import java.io.Serializable; 38 36 39 import static org.armedbear.lisp.Lisp.*; 37 40 38 public abstract class Function extends Operator 39 { 41 public abstract class Function extends Operator implements Serializable { 40 42 private LispObject propertyList = NIL; 41 43 private int callCount; … … 386 388 ++hotCount; 387 389 } 390 391 //Serialization 392 public static class SerializedNamedFunction implements Serializable { 393 private final Symbol name; 394 public SerializedNamedFunction(Symbol name) { 395 this.name = name; 396 } 397 398 public Object readResolve() { 399 return name.getSymbolFunctionOrDie(); 400 } 401 } 402 403 public Object writeReplace() throws NotSerializableException { 404 LispObject lambdaName = getLambdaName(); 405 if(lambdaName instanceof Symbol && lambdaName.getSymbolFunction() == this) { 406 return new SerializedNamedFunction((Symbol) lambdaName); 407 } else { 408 throw new NotSerializableException(getClass().getName()); 409 } 410 } 388 411 } -
trunk/abcl/src/org/armedbear/lisp/Pathname.java
r15038 r15360 35 35 import static org.armedbear.lisp.Lisp.*; 36 36 37 import java.io.File; 38 import java.io.IOException; 39 import java.io.InputStream; 40 import java.io.FileInputStream; 37 import java.io.*; 41 38 import java.net.MalformedURLException; 42 39 import java.net.URI; … … 51 48 import java.util.zip.ZipInputStream; 52 49 53 public class Pathname extends LispObject {50 public class Pathname extends LispObject implements Serializable { 54 51 55 52 /** The path component separator used by internally generated
Note: See TracChangeset
for help on using the changeset viewer.