Changeset 37275 in webkit for trunk/JavaScriptCore/kjs/nodes.cpp


Ignore:
Timestamp:
Oct 3, 2008, 6:39:43 PM (17 years ago)
Author:
[email protected]
Message:

2008-10-03 Maciej Stachowiak <[email protected]>

Reviewed by Cameron Zwarich.


  • Some code cleanup to how we handle code features.


1) Rename FeatureInfo typedef to CodeFeatures.
2) Rename NodeFeatureInfo template to NodeInfo.
3) Keep CodeFeature bitmask in ScopeNode instead of trying to break it out into individual bools.
4) Rename misleadingly named "needsClosure" method to "containsClosures", which better describes the meaning
of ClosureFeature.
5) Make setUsersArguments() not take an argument since it only goes one way.

  • JavaScriptCore.exp:
  • VM/CodeBlock.h: (JSC::CodeBlock::CodeBlock):
  • kjs/NodeInfo.h:
  • kjs/Parser.cpp: (JSC::Parser::didFinishParsing):
  • kjs/Parser.h: (JSC::Parser::parse):
  • kjs/grammar.y:
  • kjs/nodes.cpp: (JSC::ScopeNode::ScopeNode): (JSC::ProgramNode::ProgramNode): (JSC::ProgramNode::create): (JSC::EvalNode::EvalNode): (JSC::EvalNode::create): (JSC::FunctionBodyNode::FunctionBodyNode): (JSC::FunctionBodyNode::create):
  • kjs/nodes.h: (JSC::ScopeNode::usesEval): (JSC::ScopeNode::containsClosures): (JSC::ScopeNode::usesArguments): (JSC::ScopeNode::setUsesArguments):
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/JavaScriptCore/kjs/nodes.cpp

    r37184 r37275  
    16991699// ------------------------------ ScopeNode -----------------------------
    17001700
    1701 ScopeNode::ScopeNode(JSGlobalData* globalData, const SourceCode& source, SourceElements* children, VarStack* varStack, FunctionStack* funcStack, bool usesEval, bool needsClosure, bool usesArguments, int numConstants)
     1701ScopeNode::ScopeNode(JSGlobalData* globalData, const SourceCode& source, SourceElements* children, VarStack* varStack, FunctionStack* funcStack, CodeFeatures features, int numConstants)
    17021702    : BlockNode(globalData, children)
    17031703    , m_source(source)
    1704     , m_usesEval(usesEval)
    1705     , m_needsClosure(needsClosure)
    1706     , m_usesArguments(usesArguments)
     1704    , m_features(features)
    17071705    , m_numConstants(numConstants)
    17081706{
     
    17171715// ------------------------------ ProgramNode -----------------------------
    17181716
    1719 ProgramNode::ProgramNode(JSGlobalData* globalData, SourceElements* children, VarStack* varStack, FunctionStack* funcStack, const SourceCode& source, bool usesEval, bool needsClosure, bool usesArguments, int numConstants)
    1720     : ScopeNode(globalData, source, children, varStack, funcStack, usesEval, needsClosure, usesArguments, numConstants)
    1721 {
    1722 }
    1723 
    1724 ProgramNode* ProgramNode::create(JSGlobalData* globalData, SourceElements* children, VarStack* varStack, FunctionStack* funcStack, const SourceCode& source, bool usesEval, bool needsClosure, bool usesArguments, int numConstants)
    1725 {
    1726     return new ProgramNode(globalData, children, varStack, funcStack, source, usesEval, needsClosure, usesArguments, numConstants);
     1717ProgramNode::ProgramNode(JSGlobalData* globalData, SourceElements* children, VarStack* varStack, FunctionStack* funcStack, const SourceCode& source, CodeFeatures features, int numConstants)
     1718    : ScopeNode(globalData, source, children, varStack, funcStack, features, numConstants)
     1719{
     1720}
     1721
     1722ProgramNode* ProgramNode::create(JSGlobalData* globalData, SourceElements* children, VarStack* varStack, FunctionStack* funcStack, const SourceCode& source, CodeFeatures features, int numConstants)
     1723{
     1724    return new ProgramNode(globalData, children, varStack, funcStack, source, features, numConstants);
    17271725}
    17281726
    17291727// ------------------------------ EvalNode -----------------------------
    17301728
    1731 EvalNode::EvalNode(JSGlobalData* globalData, SourceElements* children, VarStack* varStack, FunctionStack* funcStack, const SourceCode& source, bool usesEval, bool needsClosure, bool usesArguments, int numConstants)
    1732     : ScopeNode(globalData, source, children, varStack, funcStack, usesEval, needsClosure, usesArguments, numConstants)
     1729EvalNode::EvalNode(JSGlobalData* globalData, SourceElements* children, VarStack* varStack, FunctionStack* funcStack, const SourceCode& source, CodeFeatures features, int numConstants)
     1730    : ScopeNode(globalData, source, children, varStack, funcStack, features, numConstants)
    17331731{
    17341732}
     
    17591757}
    17601758
    1761 EvalNode* EvalNode::create(JSGlobalData* globalData, SourceElements* children, VarStack* varStack, FunctionStack* funcStack, const SourceCode& source, bool usesEval, bool needsClosure, bool usesArguments, int numConstants)
    1762 {
    1763     return new EvalNode(globalData, children, varStack, funcStack, source, usesEval, needsClosure, usesArguments, numConstants);
     1759EvalNode* EvalNode::create(JSGlobalData* globalData, SourceElements* children, VarStack* varStack, FunctionStack* funcStack, const SourceCode& source, CodeFeatures features, int numConstants)
     1760{
     1761    return new EvalNode(globalData, children, varStack, funcStack, source, features, numConstants);
    17641762}
    17651763
    17661764// ------------------------------ FunctionBodyNode -----------------------------
    17671765
    1768 FunctionBodyNode::FunctionBodyNode(JSGlobalData* globalData, SourceElements* children, VarStack* varStack, FunctionStack* funcStack, bool usesEval, bool needsClosure, bool usesArguments, int numConstants)
    1769     : ScopeNode(globalData, SourceCode(), children, varStack, funcStack, usesEval, needsClosure, usesArguments, numConstants)
     1766FunctionBodyNode::FunctionBodyNode(JSGlobalData* globalData, SourceElements* children, VarStack* varStack, FunctionStack* funcStack, CodeFeatures features, int numConstants)
     1767    : ScopeNode(globalData, SourceCode(), children, varStack, funcStack, features, numConstants)
    17701768    , m_parameters(0)
    17711769    , m_refCount(0)
     
    18011799}
    18021800
    1803 FunctionBodyNode* FunctionBodyNode::create(JSGlobalData* globalData, SourceElements* children, VarStack* varStack, FunctionStack* funcStack, bool usesEval, bool needsClosure, bool usesArguments, int numConstants)
    1804 {
    1805     return new FunctionBodyNode(globalData, children, varStack, funcStack, usesEval, needsClosure, usesArguments, numConstants);
    1806 }
    1807 
    1808 FunctionBodyNode* FunctionBodyNode::create(JSGlobalData* globalData, SourceElements* children, VarStack* varStack, FunctionStack* funcStack, const SourceCode&, bool usesEval, bool needsClosure, bool usesArguments, int numConstants)
    1809 {
    1810     return new FunctionBodyNode(globalData, children, varStack, funcStack, usesEval, needsClosure, usesArguments, numConstants);
     1801FunctionBodyNode* FunctionBodyNode::create(JSGlobalData* globalData, SourceElements* children, VarStack* varStack, FunctionStack* funcStack, CodeFeatures features, int numConstants)
     1802{
     1803    return new FunctionBodyNode(globalData, children, varStack, funcStack, features, numConstants);
     1804}
     1805
     1806FunctionBodyNode* FunctionBodyNode::create(JSGlobalData* globalData, SourceElements* children, VarStack* varStack, FunctionStack* funcStack, const SourceCode&, CodeFeatures features, int numConstants)
     1807{
     1808    return new FunctionBodyNode(globalData, children, varStack, funcStack, features, numConstants);
    18111809}
    18121810
Note: See TracChangeset for help on using the changeset viewer.