number_object.h
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023 #ifndef _NUMBER_OBJECT_H_
00024 #define _NUMBER_OBJECT_H_
00025
00026 #include "internal.h"
00027 #include "function_object.h"
00028
00029 namespace KJS {
00030
00031 class NumberInstanceImp : public ObjectImp {
00032 public:
00033 NumberInstanceImp(const Object &proto);
00034
00035 virtual const ClassInfo *classInfo() const { return &info; }
00036 static const ClassInfo info;
00037 };
00038
00045 class NumberPrototypeImp : public NumberInstanceImp {
00046 public:
00047 NumberPrototypeImp(ExecState *exec,
00048 ObjectPrototypeImp *objProto,
00049 FunctionPrototypeImp *funcProto);
00050 };
00051
00058 class NumberProtoFuncImp : public InternalFunctionImp {
00059 public:
00060 NumberProtoFuncImp(ExecState *exec, FunctionPrototypeImp *funcProto,
00061 int i, int len);
00062
00063 virtual bool implementsCall() const;
00064 virtual Value call(ExecState *exec, Object &thisObj, const List &args);
00065
00066 enum { ToString, ToLocaleString, ValueOf };
00067 private:
00068 int id;
00069 };
00070
00076 class NumberObjectImp : public InternalFunctionImp {
00077 public:
00078 NumberObjectImp(ExecState *exec,
00079 FunctionPrototypeImp *funcProto,
00080 NumberPrototypeImp *numberProto);
00081
00082 virtual bool implementsConstruct() const;
00083 virtual Object construct(ExecState *exec, const List &args);
00084
00085 virtual bool implementsCall() const;
00086 virtual Value call(ExecState *exec, Object &thisObj, const List &args);
00087
00088 Value get(ExecState *exec, const UString &p) const;
00089 Value getValueProperty(ExecState *exec, int token) const;
00090 virtual const ClassInfo *classInfo() const { return &info; }
00091 static const ClassInfo info;
00092 enum { NaNValue, NegInfinity, PosInfinity, MaxValue, MinValue };
00093
00094 Completion execute(const List &);
00095 Object construct(const List &);
00096 };
00097
00098 }
00099
00100 #endif
This file is part of the documentation for kdelibs Version 3.1.4.