1 29 30 package com.caucho.quercus.function; 31 32 import com.caucho.quercus.env.Env; 33 import com.caucho.quercus.env.Value; 34 import com.caucho.quercus.expr.Expr; 35 import com.caucho.util.L10N; 36 37 40 abstract public class Marshal { 41 protected static final L10N L = new L10N(Marshal.class); 42 43 46 public boolean isBoolean() 47 { 48 return false; 49 } 50 51 54 public boolean isString() 55 { 56 return false; 57 } 58 59 62 public boolean isLong() 63 { 64 return false; 65 } 66 67 70 public boolean isDouble() 71 { 72 return false; 73 } 74 75 78 public boolean isReadOnly() 79 { 80 return true; 81 } 82 83 86 public boolean isReference() 87 { 88 return false; 89 } 90 91 abstract public Object marshal(Env env, Expr expr, Class argClass); 92 93 public Object marshal(Env env, Value value, Class argClass) 94 { 95 return value; 96 } 97 98 public Value unmarshal(Env env, Object value) 99 { 100 throw new UnsupportedOperationException (getClass().getName()); 101 } 102 } 103 104 | Popular Tags |