Browse Source

Allow custom formatting for Observable.dump;

bjorn 10 years ago
parent
commit
b1b5bba230
1 changed files with 4 additions and 2 deletions
  1. 4 2
      rx.lua

+ 4 - 2
rx.lua

@@ -159,10 +159,12 @@ end
 
 --- Subscribes to this Observable and prints values it produces.
 -- @arg {string=} name - Prefixes the printed messages with a name.
-function Observable:dump(name)
+-- @arg {function=tostring} formatter - A function that formats one or more values to be printed.
+function Observable:dump(name, formatter)
   name = name and (name .. ' ') or ''
+  formatter = formatter or tostring
 
-  local onNext = function(...) print(name .. 'onNext: ' .. table.concat({...}, ', ')) end
+  local onNext = function(...) print(name .. 'onNext: ' .. formatter(...)) end
   local onError = function(e) print(name .. 'onError: ' .. e) end
   local onComplete = function() print(name .. 'onComplete') end