Chromium Code Reviews| Index: src/mirror-debugger.js | 
| diff --git a/src/mirror-debugger.js b/src/mirror-debugger.js | 
| index c43dd228ec9d12c73a0d66a4102477649f85862f..e39dc5de8760eba4e14798fc378badb9022ab023 100644 | 
| --- a/src/mirror-debugger.js | 
| +++ b/src/mirror-debugger.js | 
| @@ -596,6 +596,22 @@ ObjectMirror.prototype.protoObject = function() { | 
| }; | 
| +/** | 
| + * Return the primitive value if this is object of Boolean, Number or String type (but not Date). | 
| 
 
Yang
2012/04/17 12:48:44
Please keep the 80 character limit.
 
Peter Rybin
2012/04/18 12:36:09
Sorry, too much programming in WebKit :)
 
 | 
| + * Otherwise return undefined. | 
| + */ | 
| +ObjectMirror.prototype.primitiveValue = function() { | 
| + if (!IS_STRING_WRAPPER(this.value_) && !IS_NUMBER_WRAPPER(this.value_) && !IS_BOOLEAN_WRAPPER(this.value_)) { | 
| 
 
Yang
2012/04/17 12:48:44
Ditto.
 
Peter Rybin
2012/04/18 12:36:09
Done.
 
 | 
| + return void 0; | 
| + } | 
| + var primitiveValue = %DebugGetPrimitiveValue(this.value_); | 
| + if (IS_UNDEFINED(primitiveValue)) { | 
| + return void 0; | 
| + } | 
| + return MakeMirror(primitiveValue); | 
| +}; | 
| + | 
| + | 
| ObjectMirror.prototype.hasNamedInterceptor = function() { | 
| // Get information on interceptors for this object. | 
| var x = %GetInterceptorInfo(this.value_); | 
| @@ -2233,6 +2249,11 @@ JSONProtocolSerializer.prototype.serializeObject_ = function(mirror, content, | 
| this.serializeReference(mirror.constructorFunction()); | 
| content.protoObject = this.serializeReference(mirror.protoObject()); | 
| content.prototypeObject = this.serializeReference(mirror.prototypeObject()); | 
| + | 
| + var primitiveValue = mirror.primitiveValue(); | 
| + if (!IS_UNDEFINED(primitiveValue)) { | 
| + content.primitiveValue = this.serializeReference(primitiveValue); | 
| + } | 
| // Add flags to indicate whether there are interceptors. | 
| if (mirror.hasNamedInterceptor()) { |