21 #ifndef _ARRAY_OBJECT_H_
22 #define _ARRAY_OBJECT_H_
25 #include "function_object.h"
29 class ArrayPrototypeImp :
public ArrayInstanceImp {
31 ArrayPrototypeImp(ExecState *exec,
32 ObjectPrototypeImp *objProto);
33 Value get(ExecState *exec,
const Identifier &p)
const;
34 virtual const ClassInfo *classInfo()
const {
return &info; }
35 static const ClassInfo info;
38 class ArrayProtoFuncImp :
public InternalFunctionImp {
40 ArrayProtoFuncImp(ExecState *exec,
int i,
int len);
42 virtual bool implementsCall()
const;
43 virtual Value call(ExecState *exec, Object &thisObj,
const List &args);
45 enum { ToString, ToLocaleString, Concat, Join, Pop, Push,
46 Reverse, Shift, Slice, Sort, Splice, UnShift };
51 class ArrayObjectImp :
public InternalFunctionImp {
53 ArrayObjectImp(ExecState *exec,
54 FunctionPrototypeImp *funcProto,
55 ArrayPrototypeImp *arrayProto);
57 virtual bool implementsConstruct()
const;
58 virtual Object construct(ExecState *exec,
const List &args);
59 virtual bool implementsCall()
const;
60 virtual Value call(ExecState *exec, Object &thisObj,
const List &args);