com.caucho.quercus.env
Class JavaOverloadMethod

java.lang.Object
  extended by com.caucho.quercus.env.Value
      extended by com.caucho.quercus.env.Callback
          extended by com.caucho.quercus.function.AbstractFunction
              extended by com.caucho.quercus.env.AbstractJavaMethod
                  extended by com.caucho.quercus.env.JavaOverloadMethod
All Implemented Interfaces:
Callable, java.io.Serializable

public class JavaOverloadMethod
extends AbstractJavaMethod

Represents the introspected static function information.

See Also:
Serialized Form

Field Summary
 
Fields inherited from class com.caucho.quercus.function.AbstractFunction
_bindingClass, _declaringClassName, _isClosure, _isConstructor, _isFinal, _isStatic, _parseIndex, _visibility
 
Fields inherited from class com.caucho.quercus.env.Value
NULL_VALUE_ARRAY, SCALAR_V
 
Constructor Summary
JavaOverloadMethod(AbstractJavaMethod fun)
           
 
Method Summary
 Value callMethod(Env env, QuercusClass qClass, Value qThis, Value[] args)
          Evaluates the function.
 AbstractFunction getActualFunction(Expr[] args)
          Returns the actual function
 boolean getHasRestArgs()
          Returns true if the function can take in unlimited number of args.
 int getMarshalingCost(Expr[] args)
          Returns the cost of marshaling for this method given the args.
 int getMarshalingCost(Value[] args)
          Returns the cost of marshaling for this method given the args.
 int getMaxArgLength()
          Returns the maximum number of arguments allowed.
 int getMinArgLength()
          Returns the minimally required number of arguments.
 java.lang.String getName()
           
 AbstractJavaMethod overload(AbstractJavaMethod fun)
          Returns an overloaded java method.
 java.lang.String toString()
           
 
Methods inherited from class com.caucho.quercus.env.AbstractJavaMethod
call, call, call, call, call, call, call, callCopy, callMethod, callMethod, callMethod, callMethod, callMethod, callMethod, getJavaDeclaringClass, getJavaParameterTypes
 
Methods inherited from class com.caucho.quercus.function.AbstractFunction
callMethod, callMethodRef, callMethodRef, callMethodRef, callMethodRef, callMethodRef, callMethodRef, callMethodRef, callMethodRef, callRef, callRef, callRef, callRef, callRef, callRef, callRef, errorPrivateAccess, errorProtectedAccess, evalArguments, getArgs, getBindingClass, getBindingClassName, getCallbackName, getComment, getCompilationName, getDeclaringClass, getDeclaringClassName, getLocation, getType, isAbstract, isBoolean, isCallUsesSymbolTable, isCallUsesVariableArgs, isClosure, isConstructor, isDouble, isFinal, isGlobal, isInternal, isLong, isObject, isPrivate, isProtected, isPublic, isReturnsReference, isStatic, isString, isValid, setBindingClass, setClosure, setConstructor, setDeclaringClassName, setFinal, setGlobal, setParseIndex, setStatic, setVisibility, toFun
 
Methods inherited from class com.caucho.quercus.env.Callback
callArray, callArray, callArray, toCallable
 
Methods inherited from class com.caucho.quercus.env.Value
abs, add, add, addOne, append, appendTo, appendTo, appendTo, appendTo, bitAnd, bitOr, bitXor, callMethod, callMethod, callMethod, callMethod, callMethod, callMethod, callMethod, callMethod, callMethod, callMethod, callMethod, callMethod, callMethod, callMethod, callMethodRef, callMethodRef, callMethodRef, callMethodRef, callMethodRef, callMethodRef, callMethodRef, callMethodRef, callMethodRef, callMethodRef, callMethodRef, callMethodRef, callMethodRef, callMethodRef, charValueAt, checkPrivate, checkProtected, clone, cmp, containsKey, copy, copy, copy, copyArrayItem, copyReturn, copySaveFunArg, copyStringBuilder, copyTree, current, div, div, end, eq, eql, eqValue, findFunction, generate, geq, get, getArg, getArray, getArray, getBaseIterator, getCallableName, getCalledClass, getClassName, getCount, getCountRecursive, getDirty, getField, getFieldArg, getFieldArgRef, getFieldArray, getFieldObject, getFieldVar, getHashCode, getIterator, getKeyArray, getKeyIterator, getObject, getObject, getQuercusClass, getRef, getResourceType, getSize, getThisField, getThisFieldArg, getThisFieldArgRef, getThisFieldArray, getThisFieldObject, getThisFieldVar, getValueArray, getValueIterator, getValueType, getVar, gt, hasCurrent, hashCode, increment, initField, isA, isA, isArray, isBinary, isCallable, isDefault, isDoubleConvertible, isEmpty, isFieldInit, isLongConvertible, isNull, isNumberConvertible, isNumeric, isResource, isset, isset, issetField, issetThisField, isUnicode, isVar, jsonEncode, key, keyExists, length, leq, lshift, lt, mod, mul, mul, neg, next, nextIndex, pop, pos, postdecr, postincr, postincr, predecr, preincr, preincr, prev, print, print, printDepth, printJavaChar, printJavaString, printR, printRImpl, put, put, put, putField, putField, putField, putObject, putThisField, putThisField, putVar, remove, reset, rshift, serialize, serialize, set, setCharValueAt, setFieldInit, setJavaObject, shuffle, sub_rev, sub, sub, subOne, toArgRef, toArray, toArrayValue, toAutoArray, toAutoObject, toBigDecimal, toBigInteger, toBinaryValue, toBinaryValue, toBinaryValue, toBinaryValueMarshalCost, toBoolean, toBooleanMarshalCost, toByteArrayMarshalCost, toByteMarshalCost, toChar, toCharArrayMarshalCost, toCharMarshalCost, toDebugString, toDouble, toDoubleMarshalCost, toDoubleValue, toException, toFloatMarshalCost, toInputStream, toInt, toIntegerMarshalCost, toInternString, toJavaBoolean, toJavaByte, toJavaCalendar, toJavaCharacter, toJavaCollection, toJavaDate, toJavaDouble, toJavaFloat, toJavaInteger, toJavaList, toJavaLong, toJavaMap, toJavaObject, toJavaObject, toJavaObjectMarshalCost, toJavaObjectNotNull, toJavaShort, toJavaString, toJavaURL, toKey, toLocalRef, toLocalThis, toLocalValue, toLocalValueReadOnly, toLocalVar, toLocalVarDeclAsRef, toLong, toLongMarshalCost, toLongValue, toObject, toRef, toRefValue, toShortMarshalCost, toString, toStringBuilder, toStringBuilder, toStringBuilder, toStringBuilder, toStringMarshalCost, toStringValue, toStringValue, toStringValueMarshalCost, toUnicode, toUnicodeValue, toUnicodeValue, toUnicodeValueMarshalCost, toValue, toVar, unsetArray, unsetField, unsetThisArray, unsetThisField, valuesToArray, varDump, varDumpImpl, varExport
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

JavaOverloadMethod

public JavaOverloadMethod(AbstractJavaMethod fun)
Method Detail

getMaxArgLength

public int getMaxArgLength()
Description copied from class: AbstractJavaMethod
Returns the maximum number of arguments allowed.

Specified by:
getMaxArgLength in class AbstractJavaMethod

getMinArgLength

public int getMinArgLength()
Description copied from class: AbstractJavaMethod
Returns the minimally required number of arguments.

Specified by:
getMinArgLength in class AbstractJavaMethod

getHasRestArgs

public boolean getHasRestArgs()
Description copied from class: AbstractJavaMethod
Returns true if the function can take in unlimited number of args.

Specified by:
getHasRestArgs in class AbstractJavaMethod

overload

public AbstractJavaMethod overload(AbstractJavaMethod fun)
Returns an overloaded java method.

Overrides:
overload in class AbstractJavaMethod

getActualFunction

public AbstractFunction getActualFunction(Expr[] args)
Returns the actual function

Overrides:
getActualFunction in class AbstractFunction

callMethod

public Value callMethod(Env env,
                        QuercusClass qClass,
                        Value qThis,
                        Value[] args)
Evaluates the function.

Specified by:
callMethod in class AbstractJavaMethod

getMarshalingCost

public int getMarshalingCost(Value[] args)
Returns the cost of marshaling for this method given the args.

Specified by:
getMarshalingCost in class AbstractJavaMethod

getMarshalingCost

public int getMarshalingCost(Expr[] args)
Returns the cost of marshaling for this method given the args.

Specified by:
getMarshalingCost in class AbstractJavaMethod

getName

public java.lang.String getName()
Overrides:
getName in class AbstractFunction

toString

public java.lang.String toString()
Overrides:
toString in class AbstractFunction