22 #ifndef _ARRAY_OBJECT_H_
23 #define _ARRAY_OBJECT_H_
26 #include "function_object.h"
30 class ArrayPrototypeImp :
public ArrayInstanceImp {
32 ArrayPrototypeImp(ExecState *exec,
33 ObjectPrototypeImp *objProto);
34 Value
get(ExecState *exec,
const Identifier &p)
const;
35 virtual const ClassInfo *classInfo()
const {
return &info; }
36 static const ClassInfo info;
39 class ArrayProtoFuncImp :
public InternalFunctionImp {
41 ArrayProtoFuncImp(ExecState *exec,
int i,
int len);
43 virtual bool implementsCall()
const;
44 virtual Value call(ExecState *exec, Object &thisObj,
const List &args);
46 enum { ToString, ToLocaleString, Concat, Join, Pop, Push,
47 Reverse, Shift, Slice, Sort, Splice, UnShift };
52 class ArrayObjectImp :
public InternalFunctionImp {
54 ArrayObjectImp(ExecState *exec,
55 FunctionPrototypeImp *funcProto,
56 ArrayPrototypeImp *arrayProto);
58 virtual bool implementsConstruct()
const;
59 virtual Object construct(ExecState *exec,
const List &args);
60 virtual bool implementsCall()
const;
61 virtual Value call(ExecState *exec, Object &thisObj,
const List &args);