com.caucho.quercus.marshal
Class ProExpectMarshal

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

public abstract class ProExpectMarshal
extends ExpectMarshal
implements ProMarshal


Nested Class Summary
 
Nested classes/interfaces inherited from class com.caucho.quercus.marshal.ExpectMarshal
ExpectMarshal.Type
 
Field Summary
static Marshal MARSHAL_EXPECT_BOOLEAN
           
static Marshal MARSHAL_EXPECT_NUMERIC
           
static Marshal MARSHAL_EXPECT_STRING
           
 
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
ProExpectMarshal(ExpectMarshal.Type type)
           
 
Method Summary
 void generate(PhpWriter out, ExprGenerator expr, java.lang.Class argClass)
           
protected abstract  void generateExpected(PhpWriter out, ExprGenerator expr)
           
 void generateMarshal(CodeWriterAttribute code, int argIndex)
           
 void generateResultEnd(PhpWriter out)
           
 void generateResultStart(PhpWriter out)
           
 void generateUnmarshal(CodeWriterAttribute code)
           
 boolean isByteCodeGenerator()
           
 
Methods inherited from class com.caucho.quercus.marshal.ExpectMarshal
expect, getExpectedClass, getMarshalingCostImpl, isReadOnly, isValue, marshal, marshal, unmarshal
 
Methods inherited from class com.caucho.quercus.marshal.Marshal
getMarshalingCost, getMarshalingCost, isBoolean, isDouble, isLong, isReference, isString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

MARSHAL_EXPECT_STRING

public static final Marshal MARSHAL_EXPECT_STRING

MARSHAL_EXPECT_NUMERIC

public static final Marshal MARSHAL_EXPECT_NUMERIC

MARSHAL_EXPECT_BOOLEAN

public static final Marshal MARSHAL_EXPECT_BOOLEAN
Constructor Detail

ProExpectMarshal

public ProExpectMarshal(ExpectMarshal.Type type)
Method Detail

generateExpected

protected abstract void generateExpected(PhpWriter out,
                                         ExprGenerator expr)
                                  throws java.io.IOException
Throws:
java.io.IOException

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

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