class Time

def at_with_coercion(*args, **kwargs)

Experimental RBS support (using type sampling data from the type_fusion project).

def at_with_coercion: (*Array[Float] args, **Hash kwargs) -> Time

This signature was generated using 2 samples from 1 application.

instances can be used when called with a single argument
Layers additional behavior on Time.at so that ActiveSupport::TimeWithZone and DateTime
def at_with_coercion(*args, **kwargs)
  return at_without_coercion(*args, **kwargs) if args.size != 1 || !kwargs.empty?
  # Time.at can be called with a time or numerical value
  time_or_number = args.first
  if time_or_number.is_a?(ActiveSupport::TimeWithZone)
    at_without_coercion(time_or_number.to_r).getlocal
  elsif time_or_number.is_a?(DateTime)
    at_without_coercion(time_or_number.to_f).getlocal
  else
    at_without_coercion(time_or_number)
  end
end