com.caucho.quercus.marshal
Class ProClassMarshal

java.lang.Object
  extended by com.caucho.quercus.marshal.Marshal
      extended by com.caucho.quercus.marshal.ClassMarshal
          extended by com.caucho.quercus.marshal.ProClassMarshal
All Implemented Interfaces:
ProMarshal

public class ProClassMarshal
extends ClassMarshal
implements ProMarshal


Field Summary
static Marshal MARSHAL
           
 
Fields inherited from class com.caucho.quercus.marshal.Marshal
BINARY_BINARY_VALUE_COST, BINARY_BYTE_ARRAY_COST, BINARY_BYTE_OBJECT_ARRAY_COST, BINARY_CHARACTER_ARRAY_COST, BINARY_CHARACTER_OBJECT_ARRAY_COST, BINARY_STRING_COST, BINARY_STRING_VALUE_COST, COST_BINARY_TO_BYTE, COST_BINARY_TO_STRING, COST_EQUAL, COST_FROM_NULL, COST_IDENTICAL, COST_INCOMPATIBLE, COST_NUMERIC_LOSSLESS, COST_NUMERIC_LOSSY, COST_STRING_TO_BINARY, COST_STRING_TO_BYTE, COST_STRING_TO_CHAR, COST_STRING_TO_CHAR_ARRAY, COST_TO_BOOLEAN, COST_TO_BYTE_ARRAY, COST_TO_CHAR, COST_TO_CHAR_ARRAY, COST_TO_JAVA_OBJECT, COST_TO_STRING, COST_VALUE, DOUBLE_CONVERTIBLE_BYTE_COST, DOUBLE_CONVERTIBLE_BYTE_OBJECT_COST, DOUBLE_CONVERTIBLE_DOUBLE_COST, DOUBLE_CONVERTIBLE_DOUBLE_OBJECT_COST, DOUBLE_CONVERTIBLE_DOUBLE_VALUE_COST, DOUBLE_CONVERTIBLE_FLOAT_COST, DOUBLE_CONVERTIBLE_FLOAT_OBJECT_COST, DOUBLE_CONVERTIBLE_INTEGER_COST, DOUBLE_CONVERTIBLE_INTEGER_OBJECT_COST, DOUBLE_CONVERTIBLE_LONG_COST, DOUBLE_CONVERTIBLE_LONG_OBJECT_COST, DOUBLE_CONVERTIBLE_LONG_VALUE_COST, FOUR, L, LONG_CONVERTIBLE_BYTE_COST, LONG_CONVERTIBLE_BYTE_OBJECT_COST, LONG_CONVERTIBLE_DOUBLE_COST, LONG_CONVERTIBLE_DOUBLE_OBJECT_COST, LONG_CONVERTIBLE_DOUBLE_VALUE_COST, LONG_CONVERTIBLE_FLOAT_COST, LONG_CONVERTIBLE_FLOAT_OBJECT_COST, LONG_CONVERTIBLE_INTEGER_COST, LONG_CONVERTIBLE_INTEGER_OBJECT_COST, LONG_CONVERTIBLE_LONG_COST, LONG_CONVERTIBLE_LONG_OBJECT_COST, LONG_CONVERTIBLE_LONG_VALUE_COST, MAX, ONE, PHP5_BINARY_VALUE_COST, PHP5_BYTE_ARRAY_COST, PHP5_BYTE_OBJECT_ARRAY_COST, PHP5_CHARACTER_ARRAY_COST, PHP5_CHARACTER_OBJECT_ARRAY_COST, PHP5_STRING_COST, PHP5_STRING_VALUE_COST, THREE, TWO, UNICODE_BINARY_VALUE_COST, UNICODE_BYTE_ARRAY_COST, UNICODE_BYTE_OBJECT_ARRAY_COST, UNICODE_CHARACTER_ARRAY_COST, UNICODE_CHARACTER_OBJECT_ARRAY_COST, UNICODE_STRING_COST, UNICODE_STRING_VALUE_COST, ZERO
 
Constructor Summary
ProClassMarshal()
           
 
Method Summary
 void generate(PhpWriter out, ExprGenerator expr, java.lang.Class argClass)
           
 void generateMarshal(CodeWriterAttribute code, int argIndex)
           
 void generateResultEnd(PhpWriter out)
           
 void generateResultStart(PhpWriter out)
           
 void generateUnmarshal(CodeWriterAttribute code)
           
 boolean isByteCodeGenerator()
           
static java.lang.Class toClass(Env env, Value value)
           
 
Methods inherited from class com.caucho.quercus.marshal.ClassMarshal
getExpectedClass, getMarshalingCost, getMarshalingCostImpl, isReadOnly, isString, marshal, marshal, unmarshal
 
Methods inherited from class com.caucho.quercus.marshal.Marshal
getMarshalingCost, isBoolean, isDouble, isLong, isReference, isValue
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

MARSHAL

public static final Marshal MARSHAL
Constructor Detail

ProClassMarshal

public ProClassMarshal()
Method Detail

generate

public void generate(PhpWriter out,
                     ExprGenerator expr,
                     java.lang.Class argClass)
              throws java.io.IOException
Specified by:
generate in interface ProMarshal
Throws:
java.io.IOException

generateResultStart

public void generateResultStart(PhpWriter out)
                         throws java.io.IOException
Specified by:
generateResultStart in interface ProMarshal
Throws:
java.io.IOException

generateResultEnd

public void generateResultEnd(PhpWriter out)
                       throws java.io.IOException
Specified by:
generateResultEnd in interface ProMarshal
Throws:
java.io.IOException

toClass

public static java.lang.Class toClass(Env env,
                                      Value value)

isByteCodeGenerator

public boolean isByteCodeGenerator()
Specified by:
isByteCodeGenerator in interface ProMarshal

generateMarshal

public void generateMarshal(CodeWriterAttribute code,
                            int argIndex)
Specified by:
generateMarshal in interface ProMarshal

generateUnmarshal

public void generateUnmarshal(CodeWriterAttribute code)
Specified by:
generateUnmarshal in interface ProMarshal