1 // Copyright 2014 the V8 project authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #include "src/property.h" 6 7 #include "src/handles-inl.h" 8 #include "src/ostreams.h" 9 10 namespace v8 { 11 namespace internal { 12 Iterate(ObjectVisitor * visitor)13void LookupResult::Iterate(ObjectVisitor* visitor) { 14 LookupResult* current = this; // Could be NULL. 15 while (current != NULL) { 16 visitor->VisitPointer(bit_cast<Object**>(¤t->holder_)); 17 visitor->VisitPointer(bit_cast<Object**>(¤t->transition_)); 18 current = current->next_; 19 } 20 } 21 22 operator <<(OStream & os,const LookupResult & r)23OStream& operator<<(OStream& os, const LookupResult& r) { 24 if (!r.IsFound()) return os << "Not Found\n"; 25 26 os << "LookupResult:\n"; 27 if (r.IsTransition()) { 28 os << " -transition target:\n" << Brief(r.GetTransitionTarget()) << "\n"; 29 } 30 return os; 31 } 32 33 operator <<(OStream & os,const Descriptor & d)34OStream& operator<<(OStream& os, const Descriptor& d) { 35 return os << "Descriptor " << Brief(*d.GetKey()) << " @ " 36 << Brief(*d.GetValue()); 37 } 38 39 } } // namespace v8::internal 40