Changeset 5356 in webkit for trunk/JavaScriptCore/kjs/nodes.cpp
- Timestamp:
- Nov 2, 2003, 2:51:46 PM (22 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/JavaScriptCore/kjs/nodes.cpp
r5291 r5356 342 342 // ------------------------------ ArrayNode ------------------------------------ 343 343 344 void ArrayNode::reverseElementList()345 {346 ElementNode *head = 0;347 ElementNode *next;348 for (ElementNode *n = element; n; n = next) {349 next = n->list;350 n->list = head;351 head = n;352 }353 element = head;354 }355 356 344 void ArrayNode::ref() 357 345 { … … 391 379 392 380 // ------------------------------ ObjectLiteralNode ---------------------------- 393 394 void ObjectLiteralNode::reverseList()395 {396 PropertyValueNode *head = 0;397 PropertyValueNode *next;398 for (PropertyValueNode *n = list; n; n = next) {399 next = n->list;400 n->list = head;401 head = n;402 }403 list = head;404 }405 381 406 382 void ObjectLiteralNode::ref() … … 561 537 // ------------------------------ ArgumentListNode ----------------------------- 562 538 563 ArgumentListNode::ArgumentListNode(Node *e) : list(0L), expr(e)564 {565 }566 567 ArgumentListNode::ArgumentListNode(ArgumentListNode *l, Node *e)568 : list(l), expr(e)569 {570 }571 572 539 void ArgumentListNode::ref() 573 540 { … … 613 580 614 581 // ------------------------------ ArgumentsNode -------------------------------- 615 616 void ArgumentsNode::reverseList()617 {618 ArgumentListNode *head = 0;619 ArgumentListNode *next;620 for (ArgumentListNode *n = list; n; n = next) {621 next = n->list;622 n->list = head;623 head = n;624 }625 list = head;626 }627 582 628 583 void ArgumentsNode::ref() … … 1513 1468 // ------------------------------ StatListNode --------------------------------- 1514 1469 1470 StatListNode::StatListNode(StatementNode *s) 1471 : statement(s), list(this) 1472 { 1473 setLoc(s->firstLine(), s->lastLine(), s->sourceId()); 1474 } 1475 1476 StatListNode::StatListNode(StatListNode *l, StatementNode *s) 1477 : statement(s), list(l->list) 1478 { 1479 l->list = this; 1480 setLoc(l->firstLine(), s->lastLine(), l->sourceId()); 1481 } 1482 1515 1483 void StatListNode::ref() 1516 1484 { … … 1701 1669 // ------------------------------ VarStatementNode ----------------------------- 1702 1670 1703 void VarStatementNode::reverseList()1704 {1705 VarDeclListNode *head = 0;1706 VarDeclListNode *next;1707 for (VarDeclListNode *n = list; n; n = next) {1708 next = n->list;1709 n->list = head;1710 head = n;1711 }1712 list = head;1713 }1714 1715 1671 void VarStatementNode::ref() 1716 1672 { … … 1745 1701 // ------------------------------ BlockNode ------------------------------------ 1746 1702 1747 void BlockNode::reverseList() 1748 { 1749 SourceElementsNode *head = 0; 1750 SourceElementsNode *next; 1751 for (SourceElementsNode *n = source; n; n = next) { 1752 next = n->elements; 1753 n->elements = head; 1754 head = n; 1755 } 1756 source = head; 1703 BlockNode::BlockNode(SourceElementsNode *s) 1704 { 1705 if (s) { 1706 source = s->elements; 1707 s->elements = 0; 1708 setLoc(s->firstLine(), s->lastLine(), s->sourceId()); 1709 } else { 1710 source = 0; 1711 } 1757 1712 } 1758 1713 … … 1988 1943 1989 1944 // ------------------------------ ForNode -------------------------------------- 1990 1991 VarDeclListNode *ForNode::reverseList(VarDeclListNode *list)1992 {1993 VarDeclListNode *head = 0;1994 VarDeclListNode *next;1995 for (VarDeclListNode *n = list; n; n = next) {1996 next = n->list;1997 n->list = head;1998 head = n;1999 }2000 return head;2001 }2002 1945 2003 1946 void ForNode::ref() … … 2275 2218 // ------------------------------ CaseClauseNode ------------------------------- 2276 2219 2277 void CaseClauseNode::reverseList()2278 {2279 StatListNode *head = 0;2280 StatListNode *next;2281 for (StatListNode *n = list; n; n = next) {2282 next = n->list;2283 n->list = head;2284 head = n;2285 }2286 list = head;2287 }2288 2289 2220 void CaseClauseNode::ref() 2290 2221 { … … 2370 2301 // ------------------------------ CaseBlockNode -------------------------------- 2371 2302 2372 void CaseBlockNode::reverseLists() 2373 { 2374 ClauseListNode *head = 0; 2375 ClauseListNode *next;2376 for (ClauseListNode *n = list1; n; n = next) {2377 next = n->nx;2378 n->nx = head;2379 head = n;2380 } 2381 list1 = head; 2382 2383 head = 0; 2384 for (ClauseListNode *n = list2; n; n = next) {2385 next = n->nx;2386 n->nx = head;2387 head = n;2388 }2389 list2 = head;2390 } 2391 2303 CaseBlockNode::CaseBlockNode(ClauseListNode *l1, CaseClauseNode *d, 2304 ClauseListNode *l2) 2305 { 2306 if (l1) { 2307 list1 = l1->nx; 2308 l1->nx = 0; 2309 } else { 2310 list1 = 0; 2311 } 2312 2313 def = d; 2314 2315 if (l2) { 2316 list2 = l2->nx; 2317 l2->nx = 0; 2318 } else { 2319 list2 = 0; 2320 } 2321 } 2322 2392 2323 void CaseBlockNode::ref() 2393 2324 { … … 2773 2704 // ------------------------------ FuncDeclNode --------------------------------- 2774 2705 2775 void FuncDeclNode::reverseParameterList()2776 {2777 ParameterNode *head = 0;2778 ParameterNode *next;2779 for (ParameterNode *n = param; n; n = next) {2780 next = n->next;2781 n->next = head;2782 head = n;2783 }2784 param = head;2785 }2786 2787 2706 void FuncDeclNode::ref() 2788 2707 { … … 2838 2757 // ------------------------------ FuncExprNode --------------------------------- 2839 2758 2840 void FuncExprNode::reverseParameterList()2841 {2842 ParameterNode *head = 0;2843 ParameterNode *next;2844 for (ParameterNode *n = param; n; n = next) {2845 next = n->next;2846 n->next = head;2847 head = n;2848 }2849 param = head;2850 }2851 2852 2759 void FuncExprNode::ref() 2853 2760 { … … 2886 2793 2887 2794 // ------------------------------ SourceElementsNode --------------------------- 2795 2796 SourceElementsNode::SourceElementsNode(StatementNode *s1) 2797 : element(s1), elements(this) 2798 { 2799 setLoc(s1->firstLine(), s1->lastLine(), s1->sourceId()); 2800 } 2801 2802 SourceElementsNode::SourceElementsNode(SourceElementsNode *s1, StatementNode *s2) 2803 : element(s2), elements(s1->elements) 2804 { 2805 s1->elements = this; 2806 setLoc(s1->firstLine(), s2->lastLine(), s1->sourceId()); 2807 } 2888 2808 2889 2809 void SourceElementsNode::ref()
Note:
See TracChangeset
for help on using the changeset viewer.