diff options
-rw-r--r-- | time.c | 6 | ||||
-rw-r--r-- | timev.rb | 6 |
2 files changed, 11 insertions, 1 deletions
@@ -2708,6 +2708,12 @@ time_s_at(rb_execution_context_t *ec, VALUE klass, VALUE time, VALUE subsec, VAL return t; } +static VALUE +time_s_at1(rb_execution_context_t *ec, VALUE klass, VALUE time) +{ + return time_s_at(ec, klass, time, Qfalse, ID2SYM(id_microsecond), Qnil); +} + static const char months[][4] = { "jan", "feb", "mar", "apr", "may", "jun", "jul", "aug", "sep", "oct", "nov", "dec", @@ -268,7 +268,11 @@ class Time # :include: doc/time/in.rdoc # def self.at(time, subsec = false, unit = :microsecond, in: nil) - Primitive.time_s_at(time, subsec, unit, Primitive.arg!(:in)) + if Primitive.mandatory_only? + Primitive.time_s_at1(time) + else + Primitive.time_s_at(time, subsec, unit, Primitive.arg!(:in)) + end end # Returns a new \Time object based the on given arguments. |