code: protected static function _castObject(stdClass $in)
  	{
  		if ($in instanceof AtomicInterface) {
  			return $in->get();
  		}
  
  		if (method_exists($in, '__toString')) {
  			return $in->__toString();
  		}
  
  		if (method_exists($in, 'format')) {
  			return $in->format('c');
  		}
  
  		if (method_exists($in, 'toArray')) {
  			return $in->toArray();
  		}
  
  		return (array)$in;
  	}
docs: @param stdClass $in
  
  @return mixed