00001
00005 package edu.mit.csail.sdg.squander.serializer.special;
00006
00007 import java.util.LinkedList;
00008 import java.util.List;
00009
00010 import edu.mit.csail.sdg.squander.absstate.FieldValue;
00011 import edu.mit.csail.sdg.squander.spec.JavaScene;
00012
00018 public class StringSer implements IObjSer {
00019
00020 @Override
00021 public boolean accepts(Class<?> clz) {
00022 return String.class == clz;
00023 }
00024
00025 @Override
00026 public Object newInstance(Class<?> cls) {
00027 throw new RuntimeException("cannot create a new String");
00028 }
00029
00030 @Override
00031 public Object concrFunc(Object obj, FieldValue fieldValue) {
00032 throw new RuntimeException("There should be no fields for Java String class");
00033 }
00034
00035 @Override
00036 public List<FieldValue> absFunc(JavaScene javaScene, Object obj) {
00037 return new LinkedList<FieldValue>();
00038 }
00039
00040 }