@@ -288,10 +288,13 @@ if not fn then
288288 fn = function (...)
289289 local res = {}
290290 for _ , v in ipairs ({... }) do
291+ local err
291292 if dont_read then
292- res = tomlua .decode (read_file (v ), res )
293+ res , err = tomlua .decode (read_file (v ), res )
294+ assert (not err , (" failed to decode file '%s': %s" ):format (v , err ))
293295 else
294- res = tomlua .decode (v , res )
296+ res , err = tomlua .decode (v , res )
297+ assert (not err , (" failed to decode file: %s" ):format (err ))
295298 end
296299 end
297300 return res
@@ -300,12 +303,16 @@ end
300303local result = fn ((unpack or table.unpack )(inputs ))
301304if result then
302305 if outpath then
306+ local v , msg = tomlua .encode (result )
307+ assert (not msg , (" failed to encode result: %s" ):format (msg ))
303308 local f , err = io.open (outpath , " wb" )
304309 assert (f , (" failed to open file '%s' for writing: %s" ):format (outpath , err ))
305- local success , werr = f :write (tomlua . encode ( result ) )
310+ local success , werr = f :write (v )
306311 f :close ()
307312 assert (success , (" failed to write file '%s': %s" ):format (outpath , werr ))
308313 else
309- print (tomlua .encode (result ))
314+ local v , msg = tomlua .encode (result )
315+ assert (not msg , (" failed to encode result: %s" ):format (msg ))
316+ io.write (v )
310317 end
311318end
0 commit comments