Changeset 26811 in webkit for trunk/JavaScriptCore/kjs/nodes.cpp
- Timestamp:
- Oct 20, 2007, 12:11:53 AM (18 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/JavaScriptCore/kjs/nodes.cpp
r26808 r26811 2423 2423 , m_sourceURL(Lexer::curr()->sourceURL()) 2424 2424 , m_sourceId(Parser::sid) 2425 { 2426 2425 , m_initializedDeclarationStacks(false) 2426 { 2427 2427 setLoc(-1, -1); 2428 2428 } 2429 2429 2430 void FunctionBodyNode:: processDeclarations(ExecState* exec)2430 void FunctionBodyNode::initializeDeclarationStacks() 2431 2431 { 2432 2432 Node* node = source.get(); … … 2434 2434 return; 2435 2435 2436 DeclarationStacks stacks;2437 DeclarationStacks ::NodeStack& nodeStack = stacks.nodeStack;2436 DeclarationStacks::NodeStack nodeStack; 2437 DeclarationStacks stacks(nodeStack, m_varStack, m_functionStack); 2438 2438 2439 2439 while (true) { … … 2448 2448 nodeStack.shrink(size); 2449 2449 } 2450 2450 2451 m_initializedDeclarationStacks = true; 2452 } 2453 2454 void FunctionBodyNode::processDeclarations(ExecState* exec) 2455 { 2456 if (!m_initializedDeclarationStacks) 2457 initializeDeclarationStacks(); 2458 2451 2459 size_t i, size; 2452 2460 2453 DeclarationStacks::FunctionStack& functionStack = stacks.functionStack; 2454 for (i = 0, size = functionStack.size(); i < size; ++i) 2455 functionStack[i]->processDeclaration(exec); 2456 2457 DeclarationStacks::VarStack& varStack = stacks.varStack; 2458 for (i = 0, size = varStack.size(); i < size; ++i) 2459 varStack[i]->processDeclaration(exec); 2461 for (i = 0, size = m_functionStack.size(); i < size; ++i) 2462 m_functionStack[i]->processDeclaration(exec); 2463 2464 for (i = 0, size = m_varStack.size(); i < size; ++i) 2465 m_varStack[i]->processDeclaration(exec); 2460 2466 } 2461 2467
Note:
See TracChangeset
for help on using the changeset viewer.