public Method

Object.to_s

obj.to_s     string

Returns a string representing obj. The default to_s prints the object’s class and an encoding of the object id. As a special case, the top-level object that is the initial execution context of Ruby programs returns ``main.’‘

Source Code

/*
*  call-seq:
*     obj.to_s    => string
*  
*  Returns a string representing <i>obj</i>. The default
*  <code>to_s</code> prints the object's class and an encoding of the
*  object id. As a special case, the top-level object that is the
*  initial execution context of Ruby programs returns ``main.''
*/

VALUE
rb_any_to_s(obj)
   VALUE obj;
{
   char *cname = rb_obj_classname(obj);
   size_t len;
   VALUE str;

   len = strlen(cname)+6+16;
   str = rb_str_new(0, len); /* 6:tags 16:addr */
   snprintf(RSTRING(str)->ptr, len+1, "#<%s:0x%lx>", cname, obj);
   RSTRING(str)->len = strlen(RSTRING(str)->ptr);
   if (OBJ_TAINTED(obj)) OBJ_TAINT(str);

   return str;
}
Comments

Have your say
Please use Textile formatting (click here for a cheat sheet). Use <code/> and <pre/> for code samples.
Click here to login with OpenID to to post comments.