X-Git-Url: https://git.madduck.net/etc/awesome.git/blobdiff_plain/30d7af10d208006ea09f32bd006c2cb2556a36ac..8f2b79ab6974384bf3760c3015156cd9c6090c34:/luatz/parse.lua

diff --git a/luatz/parse.lua b/luatz/parse.lua
index 2c5f8d3..6feeb29 100644
--- a/luatz/parse.lua
+++ b/luatz/parse.lua
@@ -5,36 +5,36 @@ local new_timetable = require "luatz.timetable".new
 -- Return value is not normalised (this preserves a leap second)
 -- If the timestamp is only partial (i.e. missing "Z" or time offset) then `tz_offset` will be nil
 -- TODO: Validate components are within their boundarys (e.g. 1 <= month <= 12)
-local function rfc_3339 ( str , init )
-	local year , month , day , hour , min , sec , patt_end = str:match ( "^(%d%d%d%d)%-(%d%d)%-(%d%d)[Tt](%d%d%.?%d*):(%d%d):(%d%d)()" , init )
+local function rfc_3339(str, init)
+	local year, month, day, hour, min, sec, patt_end = str:match("^(%d%d%d%d)%-(%d%d)%-(%d%d)[Tt](%d%d%.?%d*):(%d%d):(%d%d)()", init) -- luacheck: ignore 631
 	if not year then
-		error ( "Invalid RFC 3339 timestamp" )
+		return nil, "Invalid RFC 3339 timestamp"
 	end
-	year  = tonumber ( year )
-	month = tonumber ( month )
-	day   = tonumber ( day )
-	hour  = tonumber ( hour )
-	min   = tonumber ( min )
-	sec   = tonumber ( sec )
+	year  = tonumber(year, 10)
+	month = tonumber(month, 10)
+	day   = tonumber(day, 10)
+	hour  = tonumber(hour, 10)
+	min   = tonumber(min, 10)
+	sec   = tonumber(sec, 10)
 
-	local tt = new_timetable ( year , month , day ,	hour , min , sec )
+	local tt = new_timetable(year, month, day, hour, min, sec)
 
 	local tz_offset
-	if str:match ("^[Zz]" , patt_end ) then
+	if str:match("^[Zz]", patt_end) then
 		tz_offset = 0
 	else
-		local hour_offset , min_offset = str:match ( "^([+-]%d%d):(%d%d)" , patt_end )
+		local hour_offset, min_offset = str:match("^([+-]%d%d):(%d%d)", patt_end)
 		if hour_offset then
-			tz_offset = tonumber ( hour_offset )*60 + tonumber ( min_offset )
-		else
-			-- Invalid RFC 3339 timestamp offset (should be Z or (+/-)hour:min
+			tz_offset = tonumber(hour_offset, 10) * 3600 + tonumber(min_offset, 10) * 60
+		else -- luacheck: ignore 542
+			-- Invalid RFC 3339 timestamp offset (should be Z or (+/-)hour:min)
 			-- tz_offset will be nil
 		end
 	end
 
-	return tt , tz_offset
+	return tt, tz_offset
 end
 
 return {
-	rfc_3339 = rfc_3339 ;
+	rfc_3339 = rfc_3339;
 }