elua: pass opts to callback
authorDaniel Kolesa <quaker66@gmail.com>
Wed, 14 May 2014 09:22:53 +0000 (10:22 +0100)
committerDaniel Kolesa <d.kolesa@samsung.com>
Tue, 10 Jun 2014 14:48:51 +0000 (15:48 +0100)
src/bin/elua/modules/getopt.lua

index f7288e0a5bab70017ee66386f505d5485318447d..c098672c32ecd3bcd21c0322d6b5b475ea1be2e7 100644 (file)
@@ -46,7 +46,9 @@ local parse_l = function(opts, opt, descs, args, parser)
         error("option --" .. opt .. " cannot have an argument", 3)
     end
     local rets
-    if desc.callback then rets = { desc:callback(parser, optval) } end
+    if desc.callback then
+        rets = { desc:callback(parser, optval, opts) }
+    end
     if not rets or #rets == 0 then rets = { optval } end
     local optn = desc.alias or desc[1] or desc[2]
     opts[#opts + 1] = { optn, short = desc[1], long = desc[2],
@@ -85,7 +87,9 @@ local parse_s = function(opts, optstr, descs, args, parser)
             optval, optstr = optstr, ""
         end
         local rets
-        if desc.callback then rets = { desc:callback(parser, optval) } end
+        if desc.callback then
+            rets = { desc:callback(parser, optval, opts) }
+        end
         if not rets or #rets == 0 then rets = { optval } end
         local optn = desc.alias or desc[1] or desc[2]
         opts[#opts + 1] = { optn, short = desc[1], long = desc[2],