mk_time 0.1.2 → 0.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +5 -4
- data/exe/mk_time +3 -3
- data/lib/mk_time/argument.rb +7 -3
- data/lib/mk_time/compute.rb +2 -1
- data/lib/mk_time/consts.rb +1 -1
- data/lib/mk_time/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e53dc8d60c6fbf93a1a9f620efe200cae2166235
|
4
|
+
data.tar.gz: d45dd8be20c82a1ba37d18bc8747a425ce6cb3ab
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e2c5cc3dfd3b9c87ae6b4ef10ed48cd2a48ec631e4ecf1fd3ba06ce959b7acad9baabf54e0b3e2040c8e77bb752705f80d9b8d706d3380913a7f5ee2bf3525b1
|
7
|
+
data.tar.gz: 33ed2330807a2d4151cc2206a722c1a5823bd62be1322cf0aed7f9625e99f99c167b623822d737ac4c60030c8e8f616573f96c7d50444253e64a9b36565823ec
|
data/README.md
CHANGED
@@ -26,15 +26,16 @@ Or install it yourself as:
|
|
26
26
|
|
27
27
|
t = MkTime.new("20160726")
|
28
28
|
t = MkTime.new("20160726123456")
|
29
|
-
|
29
|
+
t = MkTime.new("20160726123456123")
|
30
|
+
t = MkTime.new
|
30
31
|
|
31
|
-
* You can set TDB formatted "YYYYMMDD" or "YYYYMMDDHHMMSS" as an argument.
|
32
|
+
* You can set TDB formatted "YYYYMMDD" or "YYYYMMDDHHMMSS" or "YYYYMMDDHHMMSSU..." as an argument. (`U`: milliseconds)
|
32
33
|
* If you don't set an argument, this class considers the system time to have been set as an argument.
|
33
34
|
|
34
35
|
### Conversion
|
35
36
|
|
36
|
-
puts " UTC: #{t.utc}"
|
37
|
-
puts " JST: #{t.jst}"
|
37
|
+
puts " UTC: #{t.utc.instance_eval { '%s.%03d' % [strftime('%Y-%m-%d %H:%M:%S'), (usec / 1000.0).round] }}"
|
38
|
+
puts " JST: #{t.jst.instance_eval { '%s.%03d' % [strftime('%Y-%m-%d %H:%M:%S'), (usec / 1000.0).round] }}"
|
38
39
|
puts " JD: #{t.jd} day"
|
39
40
|
puts " T: #{t.t} century"
|
40
41
|
puts " UTC-TAI: #{t.utc_tai} sec"
|
data/exe/mk_time
CHANGED
@@ -3,12 +3,12 @@
|
|
3
3
|
require "mk_time"
|
4
4
|
|
5
5
|
t = MkTime.new(ARGV[0])
|
6
|
-
puts " UTC: #{t.utc}"
|
7
|
-
puts " JST: #{t.jst}"
|
6
|
+
puts " UTC: #{t.utc.instance_eval { '%s.%03d' % [strftime('%Y-%m-%d %H:%M:%S'), (usec / 1000.0).round] }}"
|
7
|
+
puts " JST: #{t.jst.instance_eval { '%s.%03d' % [strftime('%Y-%m-%d %H:%M:%S'), (usec / 1000.0).round] }}"
|
8
8
|
puts " JD: #{t.jd} day"
|
9
9
|
puts " T: #{t.t} century"
|
10
10
|
puts " UTC-TAI: #{t.utc_tai} sec"
|
11
|
-
puts "LEAP_SEC: #{t.leap_sec} sec" # =
|
11
|
+
puts "LEAP_SEC: #{t.leap_sec} sec" # = utc_tai
|
12
12
|
puts " DUT1: #{t.dut1} sec"
|
13
13
|
puts " deltaT: #{t.dt} sec"
|
14
14
|
puts " TAI: #{t.tai.instance_eval { '%s.%03d' % [strftime('%Y-%m-%d %H:%M:%S'), (usec / 1000.0).round] }}"
|
data/lib/mk_time/argument.rb
CHANGED
@@ -13,12 +13,16 @@ module MkTime
|
|
13
13
|
# @return: utc (Time Object)
|
14
14
|
#=========================================================================
|
15
15
|
def get_utc
|
16
|
-
(puts Const::MSG_ERR_1; return) unless @arg =~ /^\d{8}$|^\d{14}$/
|
16
|
+
(puts Const::MSG_ERR_1; return) unless @arg =~ /^\d{8}$|^\d{14,}$/
|
17
17
|
year, month, day = @arg[ 0, 4].to_i, @arg[ 4, 2].to_i, @arg[ 6, 2].to_i
|
18
18
|
hour, min, sec = @arg[ 8, 2].to_i, @arg[10, 2].to_i, @arg[12, 2].to_i
|
19
|
+
usec = @arg.split(//).size > 14 ? @arg[14..-1].to_i : 0
|
19
20
|
(puts Const::MSG_ERR_2; return) unless Date.valid_date?(year, month, day)
|
20
|
-
(puts Const::MSG_ERR_2; return) if hour > 23 || min > 59 || sec
|
21
|
-
|
21
|
+
(puts Const::MSG_ERR_2; return) if hour > 23 || min > 59 || sec >= 60.0
|
22
|
+
d = usec.to_s.split(//).size
|
23
|
+
return Time.new(
|
24
|
+
year, month, day, hour, min, sec + Rational(usec, 10 ** d), "+00:00"
|
25
|
+
)
|
22
26
|
end
|
23
27
|
end
|
24
28
|
end
|
data/lib/mk_time/compute.rb
CHANGED
@@ -12,9 +12,10 @@ module MkTime
|
|
12
12
|
#=========================================================================
|
13
13
|
def utc2jst(utc)
|
14
14
|
jst = utc + Const::JST_OFFSET * 60 * 60
|
15
|
+
d = jst.usec.to_s.split(//).size
|
15
16
|
return Time.new(
|
16
17
|
jst.year, jst.month, jst.day,
|
17
|
-
jst.hour, jst.min, jst.sec,
|
18
|
+
jst.hour, jst.min, jst.sec + Rational(jst.usec, 10 ** d),
|
18
19
|
sprintf("+%02d:00", Const::JST_OFFSET)
|
19
20
|
)
|
20
21
|
rescue => e
|
data/lib/mk_time/consts.rb
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
module MkTime
|
2
2
|
module Const
|
3
|
-
MSG_ERR_1 = "[ERROR] Format: YYYYMMDD or YYYYMMDDHHMMSS"
|
3
|
+
MSG_ERR_1 = "[ERROR] Format: YYYYMMDD or YYYYMMDDHHMMSS or YYYYMMDDHHMMSSU..."
|
4
4
|
MSG_ERR_2 = "[ERROR] Invalid date-time!"
|
5
5
|
JST_OFFSET = 9 # JST offset from UTC
|
6
6
|
J2000 = 2451545 # Julian Day of 2000-01-01 12:00:00
|
data/lib/mk_time/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: mk_time
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- komasaru
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-
|
11
|
+
date: 2016-09-13 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|