Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1150)

Side by Side Diff: src/objects-printer.cc

Issue 7623011: Implement function proxies (except for their use as constructors). (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Addressed second round of comments. Created 9 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « src/objects-inl.h ('k') | src/objects-visiting.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2011 the V8 project authors. All rights reserved. 1 // Copyright 2011 the V8 project authors. All rights reserved.
2 // Redistribution and use in source and binary forms, with or without 2 // Redistribution and use in source and binary forms, with or without
3 // modification, are permitted provided that the following conditions are 3 // modification, are permitted provided that the following conditions are
4 // met: 4 // met:
5 // 5 //
6 // * Redistributions of source code must retain the above copyright 6 // * Redistributions of source code must retain the above copyright
7 // notice, this list of conditions and the following disclaimer. 7 // notice, this list of conditions and the following disclaimer.
8 // * Redistributions in binary form must reproduce the above 8 // * Redistributions in binary form must reproduce the above
9 // copyright notice, this list of conditions and the following 9 // copyright notice, this list of conditions and the following
10 // disclaimer in the documentation and/or other materials provided 10 // disclaimer in the documentation and/or other materials provided
(...skipping 133 matching lines...) Expand 10 before | Expand all | Expand 10 after
144 case JS_VALUE_TYPE: 144 case JS_VALUE_TYPE:
145 PrintF(out, "Value wrapper around:"); 145 PrintF(out, "Value wrapper around:");
146 JSValue::cast(this)->value()->Print(out); 146 JSValue::cast(this)->value()->Print(out);
147 break; 147 break;
148 case CODE_TYPE: 148 case CODE_TYPE:
149 Code::cast(this)->CodePrint(out); 149 Code::cast(this)->CodePrint(out);
150 break; 150 break;
151 case JS_PROXY_TYPE: 151 case JS_PROXY_TYPE:
152 JSProxy::cast(this)->JSProxyPrint(out); 152 JSProxy::cast(this)->JSProxyPrint(out);
153 break; 153 break;
154 case JS_FUNCTION_PROXY_TYPE:
155 JSFunctionProxy::cast(this)->JSFunctionProxyPrint(out);
156 break;
154 case JS_WEAK_MAP_TYPE: 157 case JS_WEAK_MAP_TYPE:
155 JSWeakMap::cast(this)->JSWeakMapPrint(out); 158 JSWeakMap::cast(this)->JSWeakMapPrint(out);
156 break; 159 break;
157 case FOREIGN_TYPE: 160 case FOREIGN_TYPE:
158 Foreign::cast(this)->ForeignPrint(out); 161 Foreign::cast(this)->ForeignPrint(out);
159 break; 162 break;
160 case SHARED_FUNCTION_INFO_TYPE: 163 case SHARED_FUNCTION_INFO_TYPE:
161 SharedFunctionInfo::cast(this)->SharedFunctionInfoPrint(out); 164 SharedFunctionInfo::cast(this)->SharedFunctionInfoPrint(out);
162 break; 165 break;
163 case JS_MESSAGE_OBJECT_TYPE: 166 case JS_MESSAGE_OBJECT_TYPE:
(...skipping 417 matching lines...) Expand 10 before | Expand all | Expand 10 after
581 584
582 void JSProxy::JSProxyPrint(FILE* out) { 585 void JSProxy::JSProxyPrint(FILE* out) {
583 HeapObject::PrintHeader(out, "JSProxy"); 586 HeapObject::PrintHeader(out, "JSProxy");
584 PrintF(out, " - map = 0x%p\n", reinterpret_cast<void*>(map())); 587 PrintF(out, " - map = 0x%p\n", reinterpret_cast<void*>(map()));
585 PrintF(out, " - handler = "); 588 PrintF(out, " - handler = ");
586 handler()->Print(out); 589 handler()->Print(out);
587 PrintF(out, "\n"); 590 PrintF(out, "\n");
588 } 591 }
589 592
590 593
594 void JSFunctionProxy::JSFunctionProxyPrint(FILE* out) {
595 HeapObject::PrintHeader(out, "JSFunctionProxy");
596 PrintF(out, " - map = 0x%p\n", reinterpret_cast<void*>(map()));
597 PrintF(out, " - handler = ");
598 handler()->Print(out);
599 PrintF(out, " - call_trap = ");
600 call_trap()->Print(out);
601 PrintF(out, " - construct_trap = ");
602 construct_trap()->Print(out);
603 PrintF(out, "\n");
604 }
605
606
591 void JSWeakMap::JSWeakMapPrint(FILE* out) { 607 void JSWeakMap::JSWeakMapPrint(FILE* out) {
592 HeapObject::PrintHeader(out, "JSWeakMap"); 608 HeapObject::PrintHeader(out, "JSWeakMap");
593 PrintF(out, " - map = 0x%p\n", reinterpret_cast<void*>(map())); 609 PrintF(out, " - map = 0x%p\n", reinterpret_cast<void*>(map()));
594 PrintF(out, " - number of elements = %d\n", table()->NumberOfElements()); 610 PrintF(out, " - number of elements = %d\n", table()->NumberOfElements());
595 PrintF(out, " - table = "); 611 PrintF(out, " - table = ");
596 table()->ShortPrint(out); 612 table()->ShortPrint(out);
597 PrintF(out, "\n"); 613 PrintF(out, "\n");
598 } 614 }
599 615
600 616
(...skipping 274 matching lines...) Expand 10 before | Expand all | Expand 10 after
875 desc.Print(out); 891 desc.Print(out);
876 } 892 }
877 PrintF(out, "\n"); 893 PrintF(out, "\n");
878 } 894 }
879 895
880 896
881 #endif // OBJECT_PRINT 897 #endif // OBJECT_PRINT
882 898
883 899
884 } } // namespace v8::internal 900 } } // namespace v8::internal
OLDNEW
« no previous file with comments | « src/objects-inl.h ('k') | src/objects-visiting.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698