Changeset 2778 in webkit for trunk/JavaScriptCore/kjs/function.h


Ignore:
Timestamp:
Nov 20, 2002, 1:11:43 AM (23 years ago)
Author:
darin
Message:
  • on the road to killing ActivationImp
  • kjs/function.h: Add get/put to FunctionImp. Remove argumentsObject() from ActivationImp. Add function() to ActivationImp.
  • kjs/function.cpp: (FunctionImp::FunctionImp): No arguments property. (FunctionImp::call): No need to set up the arguments property. (FunctionImp::parameterString): Remove strangeness. (FunctionImp::processParameters): Ditto. (FunctionImp::get): Added, handles arguments and length properties. (FunctionImp::put): Ditto. (FunctionImp::hasProperty): Ditto. (FunctionImp::deleteProperty): Ditto. (ActivationImp::ActivationImp): Store a function pointer so we can find it in the context.
  • kjs/function_object.cpp: (FunctionObjectImp::construct): No need to set up arguments property.
  • kjs/nodes.cpp: (FuncExprNode::evaluate): No need to set up length property.
  • kjs/internal.h: Return ObjectImp * for activation object.
  • kjs/interpreter.h: Remove stray declaration of ExecStateImp.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/JavaScriptCore/kjs/function.h

    r2760 r2778  
    3939    FunctionImp(ExecState *exec, const Identifier &n = Identifier::null);
    4040    virtual ~FunctionImp();
     41
     42    virtual Value get(ExecState *exec, const Identifier &propertyName) const;
     43    virtual void put(ExecState *exec, const Identifier &propertyName, const Value &value, int attr = None);
     44    virtual bool hasProperty(ExecState *exec, const Identifier &propertyName) const;
     45    virtual bool deleteProperty(ExecState *exec, const Identifier &propertyName);
    4146
    4247    virtual void mark();
     
    99104    ~ActivationImp();
    100105
    101     Object argumentsObject() { return Object(arguments); }
    102 
    103106    virtual const ClassInfo *classInfo() const { return &info; }
    104107    static const ClassInfo info;
     108   
     109    FunctionImp *function() const { return _function; }
     110   
    105111  private:
     112    FunctionImp *_function;
    106113    ObjectImp* arguments;
    107114  };
Note: See TracChangeset for help on using the changeset viewer.