Changeset 146318 in webkit for trunk/Source/JavaScriptCore/parser/Nodes.cpp
- Timestamp:
- Mar 20, 2013, 2:09:38 AM (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/JavaScriptCore/parser/Nodes.cpp
r140947 r146318 2 2 * Copyright (C) 1999-2002 Harri Porten ([email protected]) 3 3 * Copyright (C) 2001 Peter Kelly ([email protected]) 4 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009 Apple Inc. All rights reserved.4 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2013 Apple Inc. All rights reserved. 5 5 * Copyright (C) 2007 Cameron Zwarich ([email protected]) 6 6 * Copyright (C) 2007 Maks Orlovich … … 53 53 // ------------------------------ StatementNode -------------------------------- 54 54 55 void StatementNode::setLoc(int firstLine, int lastLine, int c olumn)55 void StatementNode::setLoc(int firstLine, int lastLine, int charPosition) 56 56 { 57 57 m_lineNumber = firstLine; 58 58 m_lastLine = lastLine; 59 m_columnNumber = column; 60 } 61 62 void StatementNode::setLoc(int firstLine, int lastLine) 63 { 64 m_lineNumber = firstLine; 65 m_lastLine = lastLine; 66 m_columnNumber = 0; 59 m_charPosition = charPosition; 67 60 } 68 61 … … 84 77 // ------------------------------ ScopeNode ----------------------------- 85 78 86 ScopeNode::ScopeNode(JSGlobalData* globalData, const JSTokenLocation& location, bool inStrictContext)87 : StatementNode( location)79 ScopeNode::ScopeNode(JSGlobalData* globalData, const JSTokenLocation& startLocation, const JSTokenLocation& endLocation, bool inStrictContext) 80 : StatementNode(endLocation) 88 81 , ParserArenaRefCounted(globalData) 82 , m_startLineNumber(startLocation.line) 83 , m_startCharPosition(startLocation.charPosition) 89 84 , m_features(inStrictContext ? StrictModeFeature : NoFeatures) 90 85 , m_numConstants(0) … … 93 88 } 94 89 95 ScopeNode::ScopeNode(JSGlobalData* globalData, const JSTokenLocation& location, const SourceCode& source, SourceElements* children, VarStack* varStack, FunctionStack* funcStack, IdentifierSet& capturedVariables, CodeFeatures features, int numConstants)96 : StatementNode( location)90 ScopeNode::ScopeNode(JSGlobalData* globalData, const JSTokenLocation& startLocation, const JSTokenLocation& endLocation, const SourceCode& source, SourceElements* children, VarStack* varStack, FunctionStack* funcStack, IdentifierSet& capturedVariables, CodeFeatures features, int numConstants) 91 : StatementNode(endLocation) 97 92 , ParserArenaRefCounted(globalData) 93 , m_startLineNumber(startLocation.line) 94 , m_startCharPosition(startLocation.charPosition) 98 95 , m_features(features) 99 96 , m_source(source) … … 116 113 // ------------------------------ ProgramNode ----------------------------- 117 114 118 inline ProgramNode::ProgramNode(JSGlobalData* globalData, const JSTokenLocation& location, SourceElements* children, VarStack* varStack, FunctionStack* funcStack, IdentifierSet& capturedVariables, const SourceCode& source, CodeFeatures features, int numConstants)119 : ScopeNode(globalData, location, source, children, varStack, funcStack, capturedVariables, features, numConstants)120 { 121 } 122 123 PassRefPtr<ProgramNode> ProgramNode::create(JSGlobalData* globalData, const JSTokenLocation& location, SourceElements* children, VarStack* varStack, FunctionStack* funcStack, IdentifierSet& capturedVariables, const SourceCode& source, CodeFeatures features, int numConstants)124 { 125 RefPtr<ProgramNode> node = new ProgramNode(globalData, location, children, varStack, funcStack, capturedVariables, source, features, numConstants);115 inline ProgramNode::ProgramNode(JSGlobalData* globalData, const JSTokenLocation& startLocation, const JSTokenLocation& endLocation, SourceElements* children, VarStack* varStack, FunctionStack* funcStack, IdentifierSet& capturedVariables, const SourceCode& source, CodeFeatures features, int numConstants) 116 : ScopeNode(globalData, startLocation, endLocation, source, children, varStack, funcStack, capturedVariables, features, numConstants) 117 { 118 } 119 120 PassRefPtr<ProgramNode> ProgramNode::create(JSGlobalData* globalData, const JSTokenLocation& startLocation, const JSTokenLocation& endLocation, SourceElements* children, VarStack* varStack, FunctionStack* funcStack, IdentifierSet& capturedVariables, const SourceCode& source, CodeFeatures features, int numConstants) 121 { 122 RefPtr<ProgramNode> node = new ProgramNode(globalData, startLocation, endLocation, children, varStack, funcStack, capturedVariables, source, features, numConstants); 126 123 127 124 ASSERT(node->m_arena.last() == node); … … 134 131 // ------------------------------ EvalNode ----------------------------- 135 132 136 inline EvalNode::EvalNode(JSGlobalData* globalData, const JSTokenLocation& location, SourceElements* children, VarStack* varStack, FunctionStack* funcStack, IdentifierSet& capturedVariables, const SourceCode& source, CodeFeatures features, int numConstants)137 : ScopeNode(globalData, location, source, children, varStack, funcStack, capturedVariables, features, numConstants)138 { 139 } 140 141 PassRefPtr<EvalNode> EvalNode::create(JSGlobalData* globalData, const JSTokenLocation& location, SourceElements* children, VarStack* varStack, FunctionStack* funcStack, IdentifierSet& capturedVariables, const SourceCode& source, CodeFeatures features, int numConstants)142 { 143 RefPtr<EvalNode> node = new EvalNode(globalData, location, children, varStack, funcStack, capturedVariables, source, features, numConstants);133 inline EvalNode::EvalNode(JSGlobalData* globalData, const JSTokenLocation& startLocation, const JSTokenLocation& endLocation, SourceElements* children, VarStack* varStack, FunctionStack* funcStack, IdentifierSet& capturedVariables, const SourceCode& source, CodeFeatures features, int numConstants) 134 : ScopeNode(globalData, startLocation, endLocation, source, children, varStack, funcStack, capturedVariables, features, numConstants) 135 { 136 } 137 138 PassRefPtr<EvalNode> EvalNode::create(JSGlobalData* globalData, const JSTokenLocation& startLocation, const JSTokenLocation& endLocation, SourceElements* children, VarStack* varStack, FunctionStack* funcStack, IdentifierSet& capturedVariables, const SourceCode& source, CodeFeatures features, int numConstants) 139 { 140 RefPtr<EvalNode> node = new EvalNode(globalData, startLocation, endLocation, children, varStack, funcStack, capturedVariables, source, features, numConstants); 144 141 145 142 ASSERT(node->m_arena.last() == node); … … 177 174 } 178 175 179 inline FunctionBodyNode::FunctionBodyNode(JSGlobalData* globalData, const JSTokenLocation& location, bool inStrictContext)180 : ScopeNode(globalData, location, inStrictContext)181 { 182 } 183 184 inline FunctionBodyNode::FunctionBodyNode(JSGlobalData* globalData, const JSTokenLocation& location, SourceElements* children, VarStack* varStack, FunctionStack* funcStack, IdentifierSet& capturedVariables, const SourceCode& sourceCode, CodeFeatures features, int numConstants)185 : ScopeNode(globalData, location, sourceCode, children, varStack, funcStack, capturedVariables, features, numConstants)176 inline FunctionBodyNode::FunctionBodyNode(JSGlobalData* globalData, const JSTokenLocation& startLocation, const JSTokenLocation& endLocation, bool inStrictContext) 177 : ScopeNode(globalData, startLocation, endLocation, inStrictContext) 178 { 179 } 180 181 inline FunctionBodyNode::FunctionBodyNode(JSGlobalData* globalData, const JSTokenLocation& startLocation, const JSTokenLocation& endLocation, SourceElements* children, VarStack* varStack, FunctionStack* funcStack, IdentifierSet& capturedVariables, const SourceCode& sourceCode, CodeFeatures features, int numConstants) 182 : ScopeNode(globalData, startLocation, endLocation, sourceCode, children, varStack, funcStack, capturedVariables, features, numConstants) 186 183 { 187 184 } … … 201 198 } 202 199 203 FunctionBodyNode* FunctionBodyNode::create(JSGlobalData* globalData, const JSTokenLocation& location, bool inStrictContext)204 { 205 return new FunctionBodyNode(globalData, location, inStrictContext);206 } 207 208 PassRefPtr<FunctionBodyNode> FunctionBodyNode::create(JSGlobalData* globalData, const JSTokenLocation& location, SourceElements* children, VarStack* varStack, FunctionStack* funcStack, IdentifierSet& capturedVariables, const SourceCode& sourceCode, CodeFeatures features, int numConstants)209 { 210 RefPtr<FunctionBodyNode> node = new FunctionBodyNode(globalData, location, children, varStack, funcStack, capturedVariables, sourceCode, features, numConstants);200 FunctionBodyNode* FunctionBodyNode::create(JSGlobalData* globalData, const JSTokenLocation& startLocation, const JSTokenLocation& endLocation, bool inStrictContext) 201 { 202 return new FunctionBodyNode(globalData, startLocation, endLocation, inStrictContext); 203 } 204 205 PassRefPtr<FunctionBodyNode> FunctionBodyNode::create(JSGlobalData* globalData, const JSTokenLocation& startLocation, const JSTokenLocation& endLocation, SourceElements* children, VarStack* varStack, FunctionStack* funcStack, IdentifierSet& capturedVariables, const SourceCode& sourceCode, CodeFeatures features, int numConstants) 206 { 207 RefPtr<FunctionBodyNode> node = new FunctionBodyNode(globalData, startLocation, endLocation, children, varStack, funcStack, capturedVariables, sourceCode, features, numConstants); 211 208 212 209 ASSERT(node->m_arena.last() == node);
Note:
See TracChangeset
for help on using the changeset viewer.