Changeset 62848 in webkit for trunk/JavaScriptCore/parser/ASTBuilder.h
- Timestamp:
- Jul 8, 2010, 2:54:08 PM (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/JavaScriptCore/parser/ASTBuilder.h
r62727 r62848 250 250 } 251 251 252 PropertyNode* createGetterOrSetterProperty(const Identifier* getOrSet, const Identifier* name, ParameterNode* params, FunctionBodyNode* body, int openBracePos, int closeBracePos, int bodyStartLine, int bodyEndLine)252 template <bool> PropertyNode* createGetterOrSetterProperty(PropertyNode::Type type, const Identifier* name, ParameterNode* params, FunctionBodyNode* body, int openBracePos, int closeBracePos, int bodyStartLine, int bodyEndLine) 253 253 { 254 254 ASSERT(name); 255 PropertyNode::Type type;256 if (*getOrSet == m_globalData->propertyNames->get)257 type = PropertyNode::Getter;258 else if (*getOrSet == m_globalData->propertyNames->set)259 type = PropertyNode::Setter;260 else261 return 0;262 255 body->setLoc(bodyStartLine, bodyEndLine); 263 256 return new (m_globalData) PropertyNode(m_globalData, *name, new (m_globalData) FuncExprNode(m_globalData, m_globalData->propertyNames->nullIdentifier, body, m_lexer->sourceCode(openBracePos, closeBracePos, bodyStartLine), params), type); … … 270 263 ArgumentListNode* createArgumentsList(ArgumentListNode* args, ExpressionNode* arg) { return new (m_globalData) ArgumentListNode(m_globalData, args, arg); } 271 264 272 PropertyNode* createProperty(const Identifier* propertyName, ExpressionNode* node, PropertyNode::Type type) { return new (m_globalData) PropertyNode(m_globalData, *propertyName, node, type); }273 PropertyNode* createProperty(double propertyName, ExpressionNode* node, PropertyNode::Type type) { return new (m_globalData) PropertyNode(m_globalData, propertyName, node, type); }265 template <bool> PropertyNode* createProperty(const Identifier* propertyName, ExpressionNode* node, PropertyNode::Type type) { return new (m_globalData) PropertyNode(m_globalData, *propertyName, node, type); } 266 template <bool> PropertyNode* createProperty(JSGlobalData*, double propertyName, ExpressionNode* node, PropertyNode::Type type) { return new (m_globalData) PropertyNode(m_globalData, propertyName, node, type); } 274 267 PropertyListNode* createPropertyList(PropertyNode* property) { return new (m_globalData) PropertyListNode(m_globalData, property); } 275 268 PropertyListNode* createPropertyList(PropertyNode* property, PropertyListNode* tail) { return new (m_globalData) PropertyListNode(m_globalData, property, tail); } … … 577 570 return result; 578 571 } 579 572 573 const Identifier& getName(Property property) { return property->name(); } 574 PropertyNode::Type getType(Property property) { return property->type(); } 580 575 private: 581 576 struct Scope {
Note:
See TracChangeset
for help on using the changeset viewer.