Эх сурвалжийг харах

Merge pull request #2 from bjornbytes/oncompleted

onCompleted
Bjorn Swenson 9 жил өмнө
parent
commit
799cabc8f2

+ 19 - 19
doc/README.md

@@ -5,13 +5,13 @@ RxLua
   - [create](#createaction)
   - [unsubscribe](#unsubscribe)
 - [Observer](#observer)
-  - [create](#createonnext-onerror-oncomplete)
+  - [create](#createonnext-onerror-oncompleted)
   - [onNext](#onnextvalues)
   - [onError](#onerrormessage)
-  - [onComplete](#oncomplete)
+  - [onCompleted](#oncompleted)
 - [Observable](#observable)
   - [create](#createsubscribe)
-  - [subscribe](#subscribeonnext-onerror-oncomplete)
+  - [subscribe](#subscribeonnext-onerror-oncompleted)
   - [empty](#empty)
   - [never](#never)
   - [throw](#throwmessage)
@@ -47,7 +47,7 @@ RxLua
   - [take](#taken)
   - [takeUntil](#takeuntilother)
   - [takeWhile](#takewhilepredicate)
-  - [tap](#taponnext-onerror-oncomplete)
+  - [tap](#taponnext-onerror-oncompleted)
   - [unpack](#unpack)
   - [unwrap](#unwrap)
   - [window](#windowsize)
@@ -63,13 +63,13 @@ RxLua
   - [isEmpty](#isempty)
 - [Subject](#subject)
   - [create](#create)
-  - [subscribe](#subscribeonnext-onerror-oncomplete)
+  - [subscribe](#subscribeonnext-onerror-oncompleted)
   - [onNext](#onnextvalues)
   - [onError](#onerrormessage)
-  - [onComplete](#oncomplete)
+  - [onCompleted](#oncompleted)
 - [BehaviorSubject](#behaviorsubject)
   - [create](#createvalue)
-  - [subscribe](#subscribeonnext-onerror-oncomplete)
+  - [subscribe](#subscribeonnext-onerror-oncompleted)
   - [onNext](#onnextvalues)
   - [getValue](#getvalue)
 
@@ -99,7 +99,7 @@ Observers are simple objects that receive values from Observables.
 
 ---
 
-#### `.create(onNext, onError, onComplete)`
+#### `.create(onNext, onError, onCompleted)`
 
 Creates a new Observer.
 
@@ -107,7 +107,7 @@ Creates a new Observer.
 |------|------|---------|-------------|
 | `onNext` | function (optional) |  | Called when the Observable produces a value. |
 | `onError` | function (optional) |  | Called when the Observable terminates due to an error. |
-| `onComplete` | function (optional) |  | Called when the Observable completes normally. |
+| `onCompleted` | function (optional) |  | Called when the Observable completes normally. |
 
 ---
 
@@ -131,7 +131,7 @@ Notify the Observer that an error has occurred.
 
 ---
 
-#### `:onComplete()`
+#### `:onCompleted()`
 
 Notify the Observer that the sequence has completed and will produce no more values.
 
@@ -151,7 +151,7 @@ Creates a new Observable.
 
 ---
 
-#### `:subscribe(onNext, onError, onComplete)`
+#### `:subscribe(onNext, onError, onCompleted)`
 
 Shorthand for creating an Observer and passing it to this Observable's subscription function.
 
@@ -159,7 +159,7 @@ Shorthand for creating an Observer and passing it to this Observable's subscript
 |------|------|---------|-------------|
 | `onNext` | function |  | Called when the Observable produces a value. |
 | `onError` | function |  | Called when the Observable terminates due to an error. |
-| `onComplete` | function |  | Called when the Observable completes normally. |
+| `onCompleted` | function |  | Called when the Observable completes normally. |
 
 ---
 
@@ -476,7 +476,7 @@ Returns a new Observable that produces elements until the predicate returns fals
 
 ---
 
-#### `:tap(onNext, onError, onComplete)`
+#### `:tap(onNext, onError, onCompleted)`
 
 Runs a function each time this Observable has activity. Similar to subscribe but does not create a subscription.
 
@@ -484,7 +484,7 @@ Runs a function each time this Observable has activity. Similar to subscribe but
 |------|------|---------|-------------|
 | `onNext` | function (optional) |  | Run when the Observable produces values. |
 | `onError` | function (optional) |  | Run when the Observable encounters a problem. |
-| `onComplete` | function (optional) |  | Run when the Observable completes. |
+| `onCompleted` | function (optional) |  | Run when the Observable completes. |
 
 ---
 
@@ -601,7 +601,7 @@ Creates a new Subject.
 
 ---
 
-#### `:subscribe(onNext, onError, onComplete)`
+#### `:subscribe(onNext, onError, onCompleted)`
 
 Creates a new Observer and attaches it to the Subject.
 
@@ -609,7 +609,7 @@ Creates a new Observer and attaches it to the Subject.
 |------|------|---------|-------------|
 | `onNext` | function|table |  | A function called when the Subject produces a value or an existing Observer to attach to the Subject. |
 | `onError` | function |  | Called when the Subject terminates due to an error. |
-| `onComplete` | function |  | Called when the Subject completes normally. |
+| `onCompleted` | function |  | Called when the Subject completes normally. |
 
 ---
 
@@ -633,7 +633,7 @@ Signal to all Observers that an error has occurred.
 
 ---
 
-#### `:onComplete()`
+#### `:onCompleted()`
 
 Signal to all Observers that the Subject will not produce any more values.
 
@@ -653,7 +653,7 @@ Creates a new BehaviorSubject.
 
 ---
 
-#### `:subscribe(onNext, onError, onComplete)`
+#### `:subscribe(onNext, onError, onCompleted)`
 
 Creates a new Observer and attaches it to the Subject. Immediately broadcasts the most recent value to the Observer.
 
@@ -661,7 +661,7 @@ Creates a new Observer and attaches it to the Subject. Immediately broadcasts th
 |------|------|---------|-------------|
 | `onNext` | function |  | Called when the Subject produces a value. |
 | `onError` | function |  | Called when the Subject terminates due to an error. |
-| `onComplete` | function |  | Called when the Subject completes normally. |
+| `onCompleted` | function |  | Called when the Subject completes normally. |
 
 ---
 

+ 111 - 111
rx.lua

@@ -47,13 +47,13 @@ Observer.__tostring = util.constant('Observer')
 --- Creates a new Observer.
 -- @arg {function=} onNext - Called when the Observable produces a value.
 -- @arg {function=} onError - Called when the Observable terminates due to an error.
--- @arg {function=} onComplete - Called when the Observable completes normally.
+-- @arg {function=} onCompleted - Called when the Observable completes normally.
 -- @returns {Observer}
-function Observer.create(onNext, onError, onComplete)
+function Observer.create(onNext, onError, onCompleted)
   local self = {
     _onNext = onNext or util.noop,
     _onError = onError or error,
-    _onComplete = onComplete or util.noop,
+    _onCompleted = onCompleted or util.noop,
     stopped = false
   }
 
@@ -78,10 +78,10 @@ function Observer:onError(message)
 end
 
 --- Notify the Observer that the sequence has completed and will produce no more values.
-function Observer:onComplete()
+function Observer:onCompleted()
   if not self.stopped then
     self.stopped = true
-    self._onComplete()
+    self._onCompleted()
   end
 end
 
@@ -105,19 +105,19 @@ end
 --- Shorthand for creating an Observer and passing it to this Observable's subscription function.
 -- @arg {function} onNext - Called when the Observable produces a value.
 -- @arg {function} onError - Called when the Observable terminates due to an error.
--- @arg {function} onComplete - Called when the Observable completes normally.
-function Observable:subscribe(onNext, onError, onComplete)
+-- @arg {function} onCompleted - Called when the Observable completes normally.
+function Observable:subscribe(onNext, onError, onCompleted)
   if type(onNext) == 'table' then
     return self._subscribe(onNext)
   else
-    return self._subscribe(Observer.create(onNext, onError, onComplete))
+    return self._subscribe(Observer.create(onNext, onError, onCompleted))
   end
 end
 
 --- Returns an Observable that immediately completes without producing a value.
 function Observable:empty()
   return Observable.create(function(observer)
-    observer:onComplete()
+    observer:onCompleted()
   end)
 end
 
@@ -139,7 +139,7 @@ end
 function Observable.fromValue(value)
   return Observable.create(function(observer)
     observer:onNext(value)
-    observer:onComplete()
+    observer:onCompleted()
   end)
 end
 
@@ -161,7 +161,7 @@ function Observable.fromRange(initial, limit, step)
       observer:onNext(i)
     end
 
-    observer:onComplete()
+    observer:onCompleted()
   end)
 end
 
@@ -177,7 +177,7 @@ function Observable.fromTable(t, iterator, keys)
       observer:onNext(value, keys and key or nil)
     end
 
-    observer:onComplete()
+    observer:onCompleted()
   end)
 end
 
@@ -198,7 +198,7 @@ function Observable.fromCoroutine(thread, scheduler)
         end
 
         if coroutine.status(thread) == 'dead' then
-          return observer:onComplete()
+          return observer:onCompleted()
         end
 
         coroutine.yield()
@@ -216,9 +216,9 @@ function Observable:dump(name, formatter)
 
   local onNext = function(...) print(name .. 'onNext: ' .. formatter(...)) end
   local onError = function(e) print(name .. 'onError: ' .. e) end
-  local onComplete = function() print(name .. 'onComplete') end
+  local onCompleted = function() print(name .. 'onCompleted') end
 
-  return self:subscribe(onNext, onError, onComplete)
+  return self:subscribe(onNext, onError, onCompleted)
 end
 
 --- Determine whether all items emitted by an Observable meet some criteria.
@@ -230,7 +230,7 @@ function Observable:all(predicate)
     local function onNext(...)
       if not predicate(...) then
         observer:onNext(false)
-        observer:onComplete()
+        observer:onCompleted()
       end
     end
 
@@ -238,12 +238,12 @@ function Observable:all(predicate)
       return observer:onError(e)
     end
 
-    local function onComplete()
+    local function onCompleted()
       observer:onNext(true)
-      return observer:onComplete()
+      return observer:onCompleted()
     end
 
-    return self:subscribe(onNext, onError, onComplete)
+    return self:subscribe(onNext, onError, onCompleted)
   end)
 end
 
@@ -283,18 +283,18 @@ function Observable:combineLatest(...)
       return observer:onError(e)
     end
 
-    local function onComplete(i)
+    local function onCompleted(i)
       return function()
         table.insert(completed, i)
 
         if #completed == #sources then
-          observer:onComplete()
+          observer:onCompleted()
         end
       end
     end
 
     for i = 1, #sources do
-      sources[i]:subscribe(onNext(i), onError, onComplete(i))
+      sources[i]:subscribe(onNext(i), onError, onCompleted(i))
     end
   end)
 end
@@ -323,12 +323,12 @@ function Observable:concat(other, ...)
       return observer:onError(message)
     end
 
-    local function onComplete()
-      return observer:onComplete()
+    local function onCompleted()
+      return observer:onCompleted()
     end
 
     local function chain()
-      return other:concat(util.unpack(others)):subscribe(onNext, onError, onComplete)
+      return other:concat(util.unpack(others)):subscribe(onNext, onError, onCompleted)
     end
 
     return self:subscribe(onNext, onError, chain)
@@ -354,12 +354,12 @@ function Observable:count(predicate)
       return observer:onError(e)
     end
 
-    local function onComplete()
+    local function onCompleted()
       observer:onNext(count)
-      observer:onComplete()
+      observer:onCompleted()
     end
 
-    return self:subscribe(onNext, onError, onComplete)
+    return self:subscribe(onNext, onError, onCompleted)
   end)
 end
 
@@ -381,11 +381,11 @@ function Observable:distinct()
       return observer:onError(e)
     end
 
-    local function onComplete()
-      return observer:onComplete()
+    local function onCompleted()
+      return observer:onCompleted()
     end
 
-    return self:subscribe(onNext, onError, onComplete)
+    return self:subscribe(onNext, onError, onCompleted)
   end)
 end
 
@@ -412,11 +412,11 @@ function Observable:distinctUntilChanged(comparator)
       return observer:onError(onError)
     end
 
-    local function onComplete()
-      return observer:onComplete()
+    local function onCompleted()
+      return observer:onCompleted()
     end
 
-    return self:subscribe(onNext, onError, onComplete)
+    return self:subscribe(onNext, onError, onCompleted)
   end)
 end
 
@@ -437,11 +437,11 @@ function Observable:filter(predicate)
       return observer:onError(e)
     end
 
-    local function onComplete()
-      return observer:onComplete(e)
+    local function onCompleted()
+      return observer:onCompleted(e)
     end
 
-    return self:subscribe(onNext, onError, onComplete)
+    return self:subscribe(onNext, onError, onCompleted)
   end)
 end
 
@@ -455,7 +455,7 @@ function Observable:find(predicate)
     local function onNext(...)
       if predicate(...) then
         observer:onNext(...)
-        return observer:onComplete()
+        return observer:onCompleted()
       end
     end
 
@@ -463,11 +463,11 @@ function Observable:find(predicate)
       return observer:onError(e)
     end
 
-    local function onComplete()
-      return observer:onComplete()
+    local function onCompleted()
+      return observer:onCompleted()
     end
 
-    return self:subscribe(onNext, onError, onComplete)
+    return self:subscribe(onNext, onError, onCompleted)
   end)
 end
 
@@ -494,11 +494,11 @@ function Observable:flatten()
       observable:subscribe(innerOnNext, onError, util.noop)
     end
 
-    local function onComplete()
-      return observer:onComplete()
+    local function onCompleted()
+      return observer:onCompleted()
     end
 
-    return self:subscribe(onNext, onError, onComplete)
+    return self:subscribe(onNext, onError, onCompleted)
   end)
 end
 
@@ -518,15 +518,15 @@ function Observable:last()
       return observer:onError(e)
     end
 
-    local function onComplete()
+    local function onCompleted()
       if not empty then
         observer:onNext(util.unpack(value or {}))
       end
 
-      return observer:onComplete()
+      return observer:onCompleted()
     end
 
-    return self:subscribe(onNext, onError, onComplete)
+    return self:subscribe(onNext, onError, onCompleted)
   end)
 end
 
@@ -545,11 +545,11 @@ function Observable:map(callback)
       return observer:onError(e)
     end
 
-    local function onComplete()
-      return observer:onComplete()
+    local function onCompleted()
+      return observer:onCompleted()
     end
 
-    return self:subscribe(onNext, onError, onComplete)
+    return self:subscribe(onNext, onError, onCompleted)
   end)
 end
 
@@ -576,18 +576,18 @@ function Observable:merge(...)
       return observer:onError(message)
     end
 
-    local function onComplete(i)
+    local function onCompleted(i)
       return function()
         sources[i] = nil
 
         if not next(sources) then
-          observer:onComplete()
+          observer:onCompleted()
         end
       end
     end
 
     for i = 1, #sources do
-      sources[i]:subscribe(onNext, onError, onComplete(i))
+      sources[i]:subscribe(onNext, onError, onCompleted(i))
     end
   end)
 end
@@ -630,11 +630,11 @@ function Observable:pluck(key, ...)
       return observer:onError(e)
     end
 
-    local function onComplete()
-      return observer:onComplete()
+    local function onCompleted()
+      return observer:onCompleted()
     end
 
-    return self:subscribe(onNext, onError, onComplete)
+    return self:subscribe(onNext, onError, onCompleted)
   end):pluck(...)
 end
 
@@ -663,12 +663,12 @@ function Observable:reduce(accumulator, seed)
       return observer:onError(e)
     end
 
-    local function onComplete()
+    local function onCompleted()
       observer:onNext(result)
-      return observer:onComplete()
+      return observer:onCompleted()
     end
 
-    return self:subscribe(onNext, onError, onComplete)
+    return self:subscribe(onNext, onError, onCompleted)
   end)
 end
 
@@ -690,11 +690,11 @@ function Observable:reject(predicate)
       return observer:onError(e)
     end
 
-    local function onComplete()
-      return observer:onComplete(e)
+    local function onCompleted()
+      return observer:onCompleted(e)
     end
 
-    return self:subscribe(onNext, onError, onComplete)
+    return self:subscribe(onNext, onError, onCompleted)
   end)
 end
 
@@ -720,11 +720,11 @@ function Observable:skip(n)
       return observer:onError(e)
     end
 
-    local function onComplete()
-      return observer:onComplete()
+    local function onCompleted()
+      return observer:onCompleted()
     end
 
-    return self:subscribe(onNext, onError, onComplete)
+    return self:subscribe(onNext, onError, onCompleted)
   end)
 end
 
@@ -753,13 +753,13 @@ function Observable:skipUntil(other)
       end
     end
 
-    local function onComplete()
+    local function onCompleted()
       if triggered then
-        observer:onComplete()
+        observer:onCompleted()
       end
     end
 
-    return self:subscribe(onNext, onError, onComplete)
+    return self:subscribe(onNext, onError, onCompleted)
   end)
 end
 
@@ -786,11 +786,11 @@ function Observable:skipWhile(predicate)
       return observer:onError(message)
     end
 
-    local function onComplete()
-      return observer:onComplete()
+    local function onCompleted()
+      return observer:onCompleted()
     end
 
-    return self:subscribe(onNext, onError, onComplete)
+    return self:subscribe(onNext, onError, onCompleted)
   end)
 end
 
@@ -802,7 +802,7 @@ function Observable:take(n)
 
   return Observable.create(function(observer)
     if n <= 0 then
-      observer:onComplete()
+      observer:onCompleted()
       return
     end
 
@@ -814,7 +814,7 @@ function Observable:take(n)
       i = i + 1
 
       if i > n then
-        observer:onComplete()
+        observer:onCompleted()
       end
     end
 
@@ -822,11 +822,11 @@ function Observable:take(n)
       return observer:onError(e)
     end
 
-    local function onComplete()
-      return observer:onComplete()
+    local function onCompleted()
+      return observer:onCompleted()
     end
 
-    return self:subscribe(onNext, onError, onComplete)
+    return self:subscribe(onNext, onError, onCompleted)
   end)
 end
 
@@ -843,13 +843,13 @@ function Observable:takeUntil(other)
       return observer:onError(e)
     end
 
-    local function onComplete()
-      return observer:onComplete()
+    local function onCompleted()
+      return observer:onCompleted()
     end
 
-    other:subscribe(onComplete, onComplete, onComplete)
+    other:subscribe(onCompleted, onCompleted, onCompleted)
 
-    return self:subscribe(onNext, onError, onComplete)
+    return self:subscribe(onNext, onError, onCompleted)
   end)
 end
 
@@ -869,7 +869,7 @@ function Observable:takeWhile(predicate)
         if taking then
           return observer:onNext(...)
         else
-          return observer:onComplete()
+          return observer:onCompleted()
         end
       end
     end
@@ -878,11 +878,11 @@ function Observable:takeWhile(predicate)
       return observer:onError(message)
     end
 
-    local function onComplete()
-      return observer:onComplete()
+    local function onCompleted()
+      return observer:onCompleted()
     end
 
-    return self:subscribe(onNext, onError, onComplete)
+    return self:subscribe(onNext, onError, onCompleted)
   end)
 end
 
@@ -890,12 +890,12 @@ end
 -- create a subscription.
 -- @arg {function=} onNext - Run when the Observable produces values.
 -- @arg {function=} onError - Run when the Observable encounters a problem.
--- @arg {function=} onComplete - Run when the Observable completes.
+-- @arg {function=} onCompleted - Run when the Observable completes.
 -- @returns {Observable}
-function Observable:tap(_onNext, _onError, _onComplete)
+function Observable:tap(_onNext, _onError, _onCompleted)
   _onNext = _onNext or util.noop
   _onError = _onError or util.noop
-  _onComplete = _onComplete or util.noop
+  _onCompleted = _onCompleted or util.noop
 
   return Observable.create(function(observer)
     local function onNext(...)
@@ -908,12 +908,12 @@ function Observable:tap(_onNext, _onError, _onComplete)
       return observer:onError(message)
     end
 
-    local function onComplete()
-      _onComplete()
-      return observer:onComplete()
+    local function onCompleted()
+      _onCompleted()
+      return observer:onCompleted()
     end
 
-    return self:subscribe(onNext, onError, onComplete)
+    return self:subscribe(onNext, onError, onCompleted)
   end)
 end
 
@@ -939,11 +939,11 @@ function Observable:unwrap()
       return observer:onError(message)
     end
 
-    local function onComplete()
-      return observer:onComplete()
+    local function onCompleted()
+      return observer:onCompleted()
     end
 
-    return self:subscribe(onNext, onError, onComplete)
+    return self:subscribe(onNext, onError, onCompleted)
   end)
 end
 
@@ -968,11 +968,11 @@ function Observable:window(size)
       return observer:onError(message)
     end
 
-    local function onComplete()
-      return observer:onComplete()
+    local function onCompleted()
+      return observer:onCompleted()
     end
 
-    return self:subscribe(onNext, onError, onComplete)
+    return self:subscribe(onNext, onError, onCompleted)
   end)
 end
 
@@ -1001,15 +1001,15 @@ function Observable:with(...)
       return observer:onError(e)
     end
 
-    local function onComplete()
-      return observer:onComplete()
+    local function onCompleted()
+      return observer:onCompleted()
     end
 
     for i = 1, #sources do
       sources[i]:subscribe(setLatest(i), util.noop, util.noop)
     end
 
-    return self:subscribe(onNext, onError, onComplete)
+    return self:subscribe(onNext, onError, onCompleted)
   end)
 end
 
@@ -1042,12 +1042,12 @@ function Observable:wrap(size)
       return observer:onError(message)
     end
 
-    local function onComplete()
+    local function onCompleted()
       emit()
-      return observer:onComplete()
+      return observer:onCompleted()
     end
 
-    return self:subscribe(onNext, onError, onComplete)
+    return self:subscribe(onNext, onError, onCompleted)
   end)
 end
 
@@ -1169,14 +1169,14 @@ end
 -- @arg {function|table} onNext|observer - A function called when the Subject produces a value or
 --                                         an existing Observer to attach to the Subject.
 -- @arg {function} onError - Called when the Subject terminates due to an error.
--- @arg {function} onComplete - Called when the Subject completes normally.
-function Subject:subscribe(onNext, onError, onComplete)
+-- @arg {function} onCompleted - Called when the Subject completes normally.
+function Subject:subscribe(onNext, onError, onCompleted)
   local observer
 
   if type(onNext) == 'table' then
     observer = onNext
   else
-    observer = Observer.create(onNext, onError, onComplete)
+    observer = Observer.create(onNext, onError, onCompleted)
   end
 
   table.insert(self.observers, observer)
@@ -1205,10 +1205,10 @@ function Subject:onError(message)
 end
 
 --- Signal to all Observers that the Subject will not produce any more values.
-function Subject:onComplete()
+function Subject:onCompleted()
   if not self.stopped then
     for i = 1, #self.observers do
-      self.observers[i]:onComplete()
+      self.observers[i]:onCompleted()
     end
 
     self.stopped = true
@@ -1244,9 +1244,9 @@ end
 -- value to the Observer.
 -- @arg {function} onNext - Called when the Subject produces a value.
 -- @arg {function} onError - Called when the Subject terminates due to an error.
--- @arg {function} onComplete - Called when the Subject completes normally.
-function BehaviorSubject:subscribe(onNext, onError, onComplete)
-  local observer = Observer.create(onNext, onError, onComplete)
+-- @arg {function} onCompleted - Called when the Subject completes normally.
+function BehaviorSubject:subscribe(onNext, onError, onCompleted)
+  local observer = Observer.create(onNext, onError, onCompleted)
   Subject.subscribe(self, observer)
   if self.value then
     observer:onNext(unpack(self.value))

+ 98 - 98
src/observable.lua

@@ -20,19 +20,19 @@ end
 --- Shorthand for creating an Observer and passing it to this Observable's subscription function.
 -- @arg {function} onNext - Called when the Observable produces a value.
 -- @arg {function} onError - Called when the Observable terminates due to an error.
--- @arg {function} onComplete - Called when the Observable completes normally.
-function Observable:subscribe(onNext, onError, onComplete)
+-- @arg {function} onCompleted - Called when the Observable completes normally.
+function Observable:subscribe(onNext, onError, onCompleted)
   if type(onNext) == 'table' then
     return self._subscribe(onNext)
   else
-    return self._subscribe(Observer.create(onNext, onError, onComplete))
+    return self._subscribe(Observer.create(onNext, onError, onCompleted))
   end
 end
 
 --- Returns an Observable that immediately completes without producing a value.
 function Observable:empty()
   return Observable.create(function(observer)
-    observer:onComplete()
+    observer:onCompleted()
   end)
 end
 
@@ -54,7 +54,7 @@ end
 function Observable.fromValue(value)
   return Observable.create(function(observer)
     observer:onNext(value)
-    observer:onComplete()
+    observer:onCompleted()
   end)
 end
 
@@ -76,7 +76,7 @@ function Observable.fromRange(initial, limit, step)
       observer:onNext(i)
     end
 
-    observer:onComplete()
+    observer:onCompleted()
   end)
 end
 
@@ -92,7 +92,7 @@ function Observable.fromTable(t, iterator, keys)
       observer:onNext(value, keys and key or nil)
     end
 
-    observer:onComplete()
+    observer:onCompleted()
   end)
 end
 
@@ -113,7 +113,7 @@ function Observable.fromCoroutine(thread, scheduler)
         end
 
         if coroutine.status(thread) == 'dead' then
-          return observer:onComplete()
+          return observer:onCompleted()
         end
 
         coroutine.yield()
@@ -131,9 +131,9 @@ function Observable:dump(name, formatter)
 
   local onNext = function(...) print(name .. 'onNext: ' .. formatter(...)) end
   local onError = function(e) print(name .. 'onError: ' .. e) end
-  local onComplete = function() print(name .. 'onComplete') end
+  local onCompleted = function() print(name .. 'onCompleted') end
 
-  return self:subscribe(onNext, onError, onComplete)
+  return self:subscribe(onNext, onError, onCompleted)
 end
 
 --- Determine whether all items emitted by an Observable meet some criteria.
@@ -145,7 +145,7 @@ function Observable:all(predicate)
     local function onNext(...)
       if not predicate(...) then
         observer:onNext(false)
-        observer:onComplete()
+        observer:onCompleted()
       end
     end
 
@@ -153,12 +153,12 @@ function Observable:all(predicate)
       return observer:onError(e)
     end
 
-    local function onComplete()
+    local function onCompleted()
       observer:onNext(true)
-      return observer:onComplete()
+      return observer:onCompleted()
     end
 
-    return self:subscribe(onNext, onError, onComplete)
+    return self:subscribe(onNext, onError, onCompleted)
   end)
 end
 
@@ -198,18 +198,18 @@ function Observable:combineLatest(...)
       return observer:onError(e)
     end
 
-    local function onComplete(i)
+    local function onCompleted(i)
       return function()
         table.insert(completed, i)
 
         if #completed == #sources then
-          observer:onComplete()
+          observer:onCompleted()
         end
       end
     end
 
     for i = 1, #sources do
-      sources[i]:subscribe(onNext(i), onError, onComplete(i))
+      sources[i]:subscribe(onNext(i), onError, onCompleted(i))
     end
   end)
 end
@@ -238,12 +238,12 @@ function Observable:concat(other, ...)
       return observer:onError(message)
     end
 
-    local function onComplete()
-      return observer:onComplete()
+    local function onCompleted()
+      return observer:onCompleted()
     end
 
     local function chain()
-      return other:concat(util.unpack(others)):subscribe(onNext, onError, onComplete)
+      return other:concat(util.unpack(others)):subscribe(onNext, onError, onCompleted)
     end
 
     return self:subscribe(onNext, onError, chain)
@@ -269,12 +269,12 @@ function Observable:count(predicate)
       return observer:onError(e)
     end
 
-    local function onComplete()
+    local function onCompleted()
       observer:onNext(count)
-      observer:onComplete()
+      observer:onCompleted()
     end
 
-    return self:subscribe(onNext, onError, onComplete)
+    return self:subscribe(onNext, onError, onCompleted)
   end)
 end
 
@@ -296,11 +296,11 @@ function Observable:distinct()
       return observer:onError(e)
     end
 
-    local function onComplete()
-      return observer:onComplete()
+    local function onCompleted()
+      return observer:onCompleted()
     end
 
-    return self:subscribe(onNext, onError, onComplete)
+    return self:subscribe(onNext, onError, onCompleted)
   end)
 end
 
@@ -327,11 +327,11 @@ function Observable:distinctUntilChanged(comparator)
       return observer:onError(onError)
     end
 
-    local function onComplete()
-      return observer:onComplete()
+    local function onCompleted()
+      return observer:onCompleted()
     end
 
-    return self:subscribe(onNext, onError, onComplete)
+    return self:subscribe(onNext, onError, onCompleted)
   end)
 end
 
@@ -352,11 +352,11 @@ function Observable:filter(predicate)
       return observer:onError(e)
     end
 
-    local function onComplete()
-      return observer:onComplete(e)
+    local function onCompleted()
+      return observer:onCompleted(e)
     end
 
-    return self:subscribe(onNext, onError, onComplete)
+    return self:subscribe(onNext, onError, onCompleted)
   end)
 end
 
@@ -370,7 +370,7 @@ function Observable:find(predicate)
     local function onNext(...)
       if predicate(...) then
         observer:onNext(...)
-        return observer:onComplete()
+        return observer:onCompleted()
       end
     end
 
@@ -378,11 +378,11 @@ function Observable:find(predicate)
       return observer:onError(e)
     end
 
-    local function onComplete()
-      return observer:onComplete()
+    local function onCompleted()
+      return observer:onCompleted()
     end
 
-    return self:subscribe(onNext, onError, onComplete)
+    return self:subscribe(onNext, onError, onCompleted)
   end)
 end
 
@@ -409,11 +409,11 @@ function Observable:flatten()
       observable:subscribe(innerOnNext, onError, util.noop)
     end
 
-    local function onComplete()
-      return observer:onComplete()
+    local function onCompleted()
+      return observer:onCompleted()
     end
 
-    return self:subscribe(onNext, onError, onComplete)
+    return self:subscribe(onNext, onError, onCompleted)
   end)
 end
 
@@ -433,15 +433,15 @@ function Observable:last()
       return observer:onError(e)
     end
 
-    local function onComplete()
+    local function onCompleted()
       if not empty then
         observer:onNext(util.unpack(value or {}))
       end
 
-      return observer:onComplete()
+      return observer:onCompleted()
     end
 
-    return self:subscribe(onNext, onError, onComplete)
+    return self:subscribe(onNext, onError, onCompleted)
   end)
 end
 
@@ -460,11 +460,11 @@ function Observable:map(callback)
       return observer:onError(e)
     end
 
-    local function onComplete()
-      return observer:onComplete()
+    local function onCompleted()
+      return observer:onCompleted()
     end
 
-    return self:subscribe(onNext, onError, onComplete)
+    return self:subscribe(onNext, onError, onCompleted)
   end)
 end
 
@@ -491,18 +491,18 @@ function Observable:merge(...)
       return observer:onError(message)
     end
 
-    local function onComplete(i)
+    local function onCompleted(i)
       return function()
         sources[i] = nil
 
         if not next(sources) then
-          observer:onComplete()
+          observer:onCompleted()
         end
       end
     end
 
     for i = 1, #sources do
-      sources[i]:subscribe(onNext, onError, onComplete(i))
+      sources[i]:subscribe(onNext, onError, onCompleted(i))
     end
   end)
 end
@@ -545,11 +545,11 @@ function Observable:pluck(key, ...)
       return observer:onError(e)
     end
 
-    local function onComplete()
-      return observer:onComplete()
+    local function onCompleted()
+      return observer:onCompleted()
     end
 
-    return self:subscribe(onNext, onError, onComplete)
+    return self:subscribe(onNext, onError, onCompleted)
   end):pluck(...)
 end
 
@@ -578,12 +578,12 @@ function Observable:reduce(accumulator, seed)
       return observer:onError(e)
     end
 
-    local function onComplete()
+    local function onCompleted()
       observer:onNext(result)
-      return observer:onComplete()
+      return observer:onCompleted()
     end
 
-    return self:subscribe(onNext, onError, onComplete)
+    return self:subscribe(onNext, onError, onCompleted)
   end)
 end
 
@@ -605,11 +605,11 @@ function Observable:reject(predicate)
       return observer:onError(e)
     end
 
-    local function onComplete()
-      return observer:onComplete(e)
+    local function onCompleted()
+      return observer:onCompleted(e)
     end
 
-    return self:subscribe(onNext, onError, onComplete)
+    return self:subscribe(onNext, onError, onCompleted)
   end)
 end
 
@@ -635,11 +635,11 @@ function Observable:skip(n)
       return observer:onError(e)
     end
 
-    local function onComplete()
-      return observer:onComplete()
+    local function onCompleted()
+      return observer:onCompleted()
     end
 
-    return self:subscribe(onNext, onError, onComplete)
+    return self:subscribe(onNext, onError, onCompleted)
   end)
 end
 
@@ -668,13 +668,13 @@ function Observable:skipUntil(other)
       end
     end
 
-    local function onComplete()
+    local function onCompleted()
       if triggered then
-        observer:onComplete()
+        observer:onCompleted()
       end
     end
 
-    return self:subscribe(onNext, onError, onComplete)
+    return self:subscribe(onNext, onError, onCompleted)
   end)
 end
 
@@ -701,11 +701,11 @@ function Observable:skipWhile(predicate)
       return observer:onError(message)
     end
 
-    local function onComplete()
-      return observer:onComplete()
+    local function onCompleted()
+      return observer:onCompleted()
     end
 
-    return self:subscribe(onNext, onError, onComplete)
+    return self:subscribe(onNext, onError, onCompleted)
   end)
 end
 
@@ -717,7 +717,7 @@ function Observable:take(n)
 
   return Observable.create(function(observer)
     if n <= 0 then
-      observer:onComplete()
+      observer:onCompleted()
       return
     end
 
@@ -729,7 +729,7 @@ function Observable:take(n)
       i = i + 1
 
       if i > n then
-        observer:onComplete()
+        observer:onCompleted()
       end
     end
 
@@ -737,11 +737,11 @@ function Observable:take(n)
       return observer:onError(e)
     end
 
-    local function onComplete()
-      return observer:onComplete()
+    local function onCompleted()
+      return observer:onCompleted()
     end
 
-    return self:subscribe(onNext, onError, onComplete)
+    return self:subscribe(onNext, onError, onCompleted)
   end)
 end
 
@@ -758,13 +758,13 @@ function Observable:takeUntil(other)
       return observer:onError(e)
     end
 
-    local function onComplete()
-      return observer:onComplete()
+    local function onCompleted()
+      return observer:onCompleted()
     end
 
-    other:subscribe(onComplete, onComplete, onComplete)
+    other:subscribe(onCompleted, onCompleted, onCompleted)
 
-    return self:subscribe(onNext, onError, onComplete)
+    return self:subscribe(onNext, onError, onCompleted)
   end)
 end
 
@@ -784,7 +784,7 @@ function Observable:takeWhile(predicate)
         if taking then
           return observer:onNext(...)
         else
-          return observer:onComplete()
+          return observer:onCompleted()
         end
       end
     end
@@ -793,11 +793,11 @@ function Observable:takeWhile(predicate)
       return observer:onError(message)
     end
 
-    local function onComplete()
-      return observer:onComplete()
+    local function onCompleted()
+      return observer:onCompleted()
     end
 
-    return self:subscribe(onNext, onError, onComplete)
+    return self:subscribe(onNext, onError, onCompleted)
   end)
 end
 
@@ -805,12 +805,12 @@ end
 -- create a subscription.
 -- @arg {function=} onNext - Run when the Observable produces values.
 -- @arg {function=} onError - Run when the Observable encounters a problem.
--- @arg {function=} onComplete - Run when the Observable completes.
+-- @arg {function=} onCompleted - Run when the Observable completes.
 -- @returns {Observable}
-function Observable:tap(_onNext, _onError, _onComplete)
+function Observable:tap(_onNext, _onError, _onCompleted)
   _onNext = _onNext or util.noop
   _onError = _onError or util.noop
-  _onComplete = _onComplete or util.noop
+  _onCompleted = _onCompleted or util.noop
 
   return Observable.create(function(observer)
     local function onNext(...)
@@ -823,12 +823,12 @@ function Observable:tap(_onNext, _onError, _onComplete)
       return observer:onError(message)
     end
 
-    local function onComplete()
-      _onComplete()
-      return observer:onComplete()
+    local function onCompleted()
+      _onCompleted()
+      return observer:onCompleted()
     end
 
-    return self:subscribe(onNext, onError, onComplete)
+    return self:subscribe(onNext, onError, onCompleted)
   end)
 end
 
@@ -854,11 +854,11 @@ function Observable:unwrap()
       return observer:onError(message)
     end
 
-    local function onComplete()
-      return observer:onComplete()
+    local function onCompleted()
+      return observer:onCompleted()
     end
 
-    return self:subscribe(onNext, onError, onComplete)
+    return self:subscribe(onNext, onError, onCompleted)
   end)
 end
 
@@ -883,11 +883,11 @@ function Observable:window(size)
       return observer:onError(message)
     end
 
-    local function onComplete()
-      return observer:onComplete()
+    local function onCompleted()
+      return observer:onCompleted()
     end
 
-    return self:subscribe(onNext, onError, onComplete)
+    return self:subscribe(onNext, onError, onCompleted)
   end)
 end
 
@@ -916,15 +916,15 @@ function Observable:with(...)
       return observer:onError(e)
     end
 
-    local function onComplete()
-      return observer:onComplete()
+    local function onCompleted()
+      return observer:onCompleted()
     end
 
     for i = 1, #sources do
       sources[i]:subscribe(setLatest(i), util.noop, util.noop)
     end
 
-    return self:subscribe(onNext, onError, onComplete)
+    return self:subscribe(onNext, onError, onCompleted)
   end)
 end
 
@@ -957,12 +957,12 @@ function Observable:wrap(size)
       return observer:onError(message)
     end
 
-    local function onComplete()
+    local function onCompleted()
       emit()
-      return observer:onComplete()
+      return observer:onCompleted()
     end
 
-    return self:subscribe(onNext, onError, onComplete)
+    return self:subscribe(onNext, onError, onCompleted)
   end)
 end
 

+ 5 - 5
src/observer.lua

@@ -9,13 +9,13 @@ Observer.__tostring = util.constant('Observer')
 --- Creates a new Observer.
 -- @arg {function=} onNext - Called when the Observable produces a value.
 -- @arg {function=} onError - Called when the Observable terminates due to an error.
--- @arg {function=} onComplete - Called when the Observable completes normally.
+-- @arg {function=} onCompleted - Called when the Observable completes normally.
 -- @returns {Observer}
-function Observer.create(onNext, onError, onComplete)
+function Observer.create(onNext, onError, onCompleted)
   local self = {
     _onNext = onNext or util.noop,
     _onError = onError or error,
-    _onComplete = onComplete or util.noop,
+    _onCompleted = onCompleted or util.noop,
     stopped = false
   }
 
@@ -40,10 +40,10 @@ function Observer:onError(message)
 end
 
 --- Notify the Observer that the sequence has completed and will produce no more values.
-function Observer:onComplete()
+function Observer:onCompleted()
   if not self.stopped then
     self.stopped = true
-    self._onComplete()
+    self._onCompleted()
   end
 end
 

+ 3 - 3
src/subjects/behaviorsubject.lua

@@ -28,9 +28,9 @@ end
 -- value to the Observer.
 -- @arg {function} onNext - Called when the Subject produces a value.
 -- @arg {function} onError - Called when the Subject terminates due to an error.
--- @arg {function} onComplete - Called when the Subject completes normally.
-function BehaviorSubject:subscribe(onNext, onError, onComplete)
-  local observer = Observer.create(onNext, onError, onComplete)
+-- @arg {function} onCompleted - Called when the Subject completes normally.
+function BehaviorSubject:subscribe(onNext, onError, onCompleted)
+  local observer = Observer.create(onNext, onError, onCompleted)
   Subject.subscribe(self, observer)
   if self.value then
     observer:onNext(unpack(self.value))

+ 5 - 5
src/subjects/subject.lua

@@ -24,14 +24,14 @@ end
 -- @arg {function|table} onNext|observer - A function called when the Subject produces a value or
 --                                         an existing Observer to attach to the Subject.
 -- @arg {function} onError - Called when the Subject terminates due to an error.
--- @arg {function} onComplete - Called when the Subject completes normally.
-function Subject:subscribe(onNext, onError, onComplete)
+-- @arg {function} onCompleted - Called when the Subject completes normally.
+function Subject:subscribe(onNext, onError, onCompleted)
   local observer
 
   if type(onNext) == 'table' then
     observer = onNext
   else
-    observer = Observer.create(onNext, onError, onComplete)
+    observer = Observer.create(onNext, onError, onCompleted)
   end
 
   table.insert(self.observers, observer)
@@ -60,10 +60,10 @@ function Subject:onError(message)
 end
 
 --- Signal to all Observers that the Subject will not produce any more values.
-function Subject:onComplete()
+function Subject:onCompleted()
   if not self.stopped then
     for i = 1, #self.observers do
-      self.observers[i]:onComplete()
+      self.observers[i]:onCompleted()
     end
 
     self.stopped = true

+ 3 - 3
tests/combineLatest.lua

@@ -26,7 +26,7 @@ describe('combineLatest', function()
     expect(onNext).to.equal({{3}, {4}, {7}})
   end)
 
-  it('should call onComplete once all sources complete', function()
+  it('should call onCompleted once all sources complete', function()
     local observableA = Rx.Subject.create()
     local observableB = Rx.Subject.create()
     local complete = spy()
@@ -37,9 +37,9 @@ describe('combineLatest', function()
     expect(#complete).to.equal(0)
     observableB:onNext(2)
     expect(#complete).to.equal(0)
-    observableB:onComplete()
+    observableB:onCompleted()
     expect(#complete).to.equal(0)
-    observableA:onComplete()
+    observableA:onCompleted()
     expect(#complete).to.equal(1)
   end)
 

+ 1 - 1
tests/compact.lua

@@ -12,7 +12,7 @@ describe('compact', function()
       observer:onNext(false)
       observer:onNext('')
       observer:onNext(0)
-      observer:onComplete()
+      observer:onCompleted()
     end)
 
     expect(observable:compact()).to.produce(true, '', 0)

+ 9 - 9
tests/concat.lua

@@ -7,17 +7,17 @@ describe('concat', function()
   it('waits until one observable completes before producing items from the next', function()
     local subjectA = Rx.Subject.create()
     local subjectB = Rx.Subject.create()
-    local onNext, onError, onComplete = observableSpy(Rx.Observable.concat(subjectA, subjectB))
+    local onNext, onError, onCompleted = observableSpy(Rx.Observable.concat(subjectA, subjectB))
     subjectA:onNext(1)
     subjectB:onNext(2)
     subjectA:onNext(3)
-    subjectA:onComplete()
+    subjectA:onCompleted()
     subjectB:onNext(4)
     subjectB:onNext(5)
-    subjectB:onComplete()
+    subjectB:onCompleted()
     expect(onNext).to.equal({{1}, {3}, {4}, {5}})
     expect(#onError).to.equal(0)
-    expect(#onComplete).to.equal(1)
+    expect(#onCompleted).to.equal(1)
   end)
 
   it('should error if any of the sources error', function()
@@ -28,11 +28,11 @@ describe('concat', function()
 
   it('should complete once the rightmost observable completes', function()
     local subject = Rx.Subject.create()
-    local onComplete = spy()
+    local onCompleted = spy()
     local observable = Rx.Observable.concat(Rx.Observable.fromRange(1, 5), Rx.Observable.fromRange(1, 5), subject)
-    observable:subscribe(nil, nil, onComplete)
-    expect(#onComplete).to.equal(0)
-    subject:onComplete()
-    expect(#onComplete).to.equal(1)
+    observable:subscribe(nil, nil, onCompleted)
+    expect(#onCompleted).to.equal(0)
+    subject:onCompleted()
+    expect(#onCompleted).to.equal(1)
   end)
 end)

+ 5 - 5
tests/distinct.lua

@@ -12,10 +12,10 @@ describe('distinct', function()
 
   it('completes when its parent completes', function()
     local subject = Rx.Subject.create()
-    local onComplete = spy()
-    subject:distinct():subscribe(nil, nil, onComplete)
-    expect(#onComplete).to.equal(0)
-    subject:onComplete()
-    expect(#onComplete).to.equal(1)
+    local onCompleted = spy()
+    subject:distinct():subscribe(nil, nil, onCompleted)
+    expect(#onCompleted).to.equal(0)
+    subject:onCompleted()
+    expect(#onCompleted).to.equal(1)
   end)
 end)

+ 1 - 1
tests/find.lua

@@ -16,7 +16,7 @@ describe('find', function()
     local observable = Rx.Observable.create(function(observer)
       observer:onNext(1, 2, 3)
       observer:onNext(4, 5, 6)
-      observer:onComplete()
+      observer:onCompleted()
     end)
 
     observable:find(predicate):subscribe()

+ 1 - 1
tests/first.lua

@@ -6,7 +6,7 @@ describe('first', function()
   end)
 
   it('produces no elements if its parent produces no elements', function()
-    local observable = Rx.Observable.create(function(observer) return observer:onComplete() end):first()
+    local observable = Rx.Observable.create(function(observer) return observer:onCompleted() end):first()
     expect(observable).to.produce({})
   end)
 

+ 1 - 1
tests/last.lua

@@ -6,7 +6,7 @@ describe('last', function()
   end)
 
   it('produces no elements if its parent produces no elements', function()
-    local observable = Rx.Observable.create(function(observer) return observer:onComplete() end):last()
+    local observable = Rx.Observable.create(function(observer) return observer:onCompleted() end):last()
     expect(observable).to.produce({})
   end)
 

+ 5 - 5
tests/merge.lua

@@ -8,13 +8,13 @@ describe('merge', function()
     local observableA = Rx.Subject.create()
     local observableB = Rx.Subject.create()
     local merged = observableA:merge(observableB)
-    local onNext, onError, onComplete = observableSpy(merged)
+    local onNext, onError, onCompleted = observableSpy(merged)
     observableA:onNext('a')
     observableB:onNext('b')
     observableB:onNext('b')
     observableA:onNext('a')
-    observableA:onComplete()
-    observableB:onComplete()
+    observableA:onCompleted()
+    observableB:onCompleted()
     expect(onNext).to.equal({{'a'}, {'b'}, {'b'}, {'a'}})
   end)
 
@@ -29,9 +29,9 @@ describe('merge', function()
     expect(#complete).to.equal(0)
     observableB:onNext(2)
     expect(#complete).to.equal(0)
-    observableB:onComplete()
+    observableB:onCompleted()
     expect(#complete).to.equal(0)
-    observableA:onComplete()
+    observableA:onCompleted()
     expect(#complete).to.equal(1)
   end)
 end)

+ 7 - 7
tests/observable.lua

@@ -28,27 +28,27 @@ describe('Observable', function()
       expect(observer).to.be.an(Rx.Observer)
       expect(observer._onNext).to.equal(a)
       expect(observer._onError).to.equal(b)
-      expect(observer._onComplete).to.equal(c)
+      expect(observer._onCompleted).to.equal(c)
     end)
   end)
 
   describe('empty', function()
     it('returns an Observable that does not produce any values', function()
       local observable = Rx.Observable.empty()
-      local onNext, onError, onComplete = observableSpy(observable)
+      local onNext, onError, onCompleted = observableSpy(observable)
       expect(#onNext).to.equal(0)
       expect(#onError).to.equal(0)
-      expect(#onComplete).to.equal(1)
+      expect(#onCompleted).to.equal(1)
     end)
   end)
 
   describe('never', function()
     it('returns an Observable that does not produce values or complete', function()
       local observable = Rx.Observable.never()
-      local onNext, onError, onComplete = observableSpy(observable)
+      local onNext, onError, onCompleted = observableSpy(observable)
       expect(#onNext).to.equal(0)
       expect(#onError).to.equal(0)
-      expect(#onComplete).to.equal(0)
+      expect(#onCompleted).to.equal(0)
     end)
   end)
 
@@ -152,7 +152,7 @@ describe('Observable', function()
 
       Rx.scheduler = Rx.CooperativeScheduler.create()
       local observable = Rx.Observable.fromCoroutine(coroutine, Rx.scheduler)
-      local onNext, onError, onComplete = observableSpy(observable)
+      local onNext, onError, onCompleted = observableSpy(observable)
       repeat Rx.scheduler:update()
       until Rx.scheduler:isEmpty()
       expect(onNext).to.equal({{1}, {2}, {3}})
@@ -167,7 +167,7 @@ describe('Observable', function()
 
       Rx.scheduler = Rx.CooperativeScheduler.create()
       local observable = Rx.Observable.fromCoroutine(coroutine, Rx.scheduler)
-      local onNext, onError, onComplete = observableSpy(observable)
+      local onNext, onError, onCompleted = observableSpy(observable)
       repeat Rx.scheduler:update()
       until Rx.scheduler:isEmpty()
       expect(onNext).to.equal({{1}, {2}, {3}})

+ 12 - 12
tests/observer.lua

@@ -4,16 +4,16 @@ describe('Observer', function()
       expect(Rx.Observer.create()).to.be.an(Rx.Observer)
     end)
 
-    it('assigns onNext, onError, and onComplete', function()
+    it('assigns onNext, onError, and onCompleted', function()
       local function onNext() end
       local function onError() end
-      local function onComplete() end
+      local function onCompleted() end
 
-      local observer = Rx.Observer.create(onNext, onError, onComplete)
+      local observer = Rx.Observer.create(onNext, onError, onCompleted)
 
       expect(observer._onNext).to.equal(onNext)
       expect(observer._onError).to.equal(onError)
-      expect(observer._onComplete).to.equal(onComplete)
+      expect(observer._onCompleted).to.equal(onCompleted)
     end)
 
     it('initializes stopped to false', function()
@@ -68,24 +68,24 @@ describe('Observer', function()
     end)
   end)
 
-  describe('onComplete', function()
-    it('calls _onComplete with no arguments', function()
+  describe('onCompleted', function()
+    it('calls _onCompleted with no arguments', function()
       local observer = Rx.Observer.create()
-      local function run() observer:onComplete(1, 2, 3) end
-      expect(spy(observer, '_onComplete', run)).to.equal({{}})
+      local function run() observer:onCompleted(1, 2, 3) end
+      expect(spy(observer, '_onCompleted', run)).to.equal({{}})
     end)
 
     it('sets stopped to true', function()
       local observer = Rx.Observer.create()
-      observer:onComplete()
+      observer:onCompleted()
       expect(observer.stopped).to.equal(true)
     end)
 
-    it('does not call _onComplete if stopped is already true', function()
+    it('does not call _onCompleted if stopped is already true', function()
       local observer = Rx.Observer.create()
       observer.stopped = true
-      local function run() observer:onComplete() end
-      expect(#spy(observer, '_onComplete', run)).to.equal(0)
+      local function run() observer:onCompleted() end
+      expect(#spy(observer, '_onCompleted', run)).to.equal(0)
     end)
   end)
 end)

+ 6 - 6
tests/runner.lua

@@ -9,9 +9,9 @@ observableSpy = function(observable)
   local observer = Rx.Observer.create(_, function() end, _)
   local onNext = spy(observer, '_onNext')
   local onError = spy(observer, '_onError')
-  local onComplete = spy(observer, '_onComplete')
+  local onCompleted = spy(observer, '_onCompleted')
   observable:subscribe(observer)
-  return onNext, onError, onComplete
+  return onNext, onError, onCompleted
 end
 
 lust.paths['produce'] = {
@@ -28,22 +28,22 @@ lust.paths['produce'] = {
       values = args[1]
     end
 
-    local onNext, onError, onComplete = observableSpy(observable)
+    local onNext, onError, onCompleted = observableSpy(observable)
     expect(observable).to.be.an(Rx.Observable)
     expect(onNext).to.equal(values)
     expect(#onError).to.equal(0)
-    expect(#onComplete).to.equal(1)
+    expect(#onCompleted).to.equal(1)
     return true
   end
 }
 
 lust.paths['nothing'] = {
   f = function(observable)
-    local onNext, onError, onComplete = observableSpy(observable)
+    local onNext, onError, onCompleted = observableSpy(observable)
     expect(observable).to.be.an(Rx.Observable)
     expect(#onNext).to.equal(0)
     expect(#onError).to.equal(0)
-    expect(#onComplete).to.equal(1)
+    expect(#onCompleted).to.equal(1)
     return true
   end
 }

+ 2 - 2
tests/skip.lua

@@ -27,10 +27,10 @@ describe('skip', function()
 
   it('completes and does not fail if it skips over more values than were produced', function()
     local observable = Rx.Observable.fromValue(3):skip(5)
-    local onNext, onError, onComplete = observableSpy(observable)
+    local onNext, onError, onCompleted = observableSpy(observable)
     expect(#onNext).to.equal(0)
     expect(#onError).to.equal(0)
-    expect(#onComplete).to.equal(1)
+    expect(#onCompleted).to.equal(1)
   end)
 
   it('produces the elements it did not skip over', function()

+ 4 - 4
tests/skipUntil.lua

@@ -15,10 +15,10 @@ describe('skipUntil', function()
   it('produces no values if the specified observable does not produce any values', function()
     local trigger = Rx.Observable.create(function() end)
     local observable = Rx.Observable.fromTable({2, 3, 4}):skipUntil(trigger)
-    local onNext, onError, onComplete = observableSpy(observable)
+    local onNext, onError, onCompleted = observableSpy(observable)
     expect(#onNext).to.equal(0)
     expect(#onError).to.equal(0)
-    expect(#onComplete).to.equal(0)
+    expect(#onCompleted).to.equal(0)
   end)
 
   it('produces values after the specified observable produces a value', function()
@@ -31,7 +31,7 @@ describe('skipUntil', function()
     trigger:onNext('a')
     subject:onNext('c')
     subject:onNext('d')
-    subject:onComplete()
+    subject:onCompleted()
     expect(onNext).to.equal({{'c'}, {'d'}})
   end)
 
@@ -42,7 +42,7 @@ describe('skipUntil', function()
     subject:onNext(1)
     subject:onNext(2)
     subject:onNext(3)
-    subject:onComplete()
+    subject:onCompleted()
     expect(onNext).to.equal({{1}, {2}, {3}})
   end)
 end)

+ 2 - 2
tests/take.lua

@@ -27,9 +27,9 @@ describe('take', function()
 
   it('completes and does not fail if it takes more values than were produced', function()
     local observable = Rx.Observable.fromValue(3):take(5)
-    local onNext, onError, onComplete = observableSpy(observable)
+    local onNext, onError, onCompleted = observableSpy(observable)
     expect(onNext).to.equal({{3}})
     expect(#onError).to.equal(0)
-    expect(#onComplete).to.equal(1)
+    expect(#onCompleted).to.equal(1)
   end)
 end)

+ 2 - 2
tests/takeUntil.lua

@@ -28,7 +28,7 @@ describe('takeUntil', function()
     trigger:onNext('a')
     subject:onNext('c')
     subject:onNext('d')
-    subject:onComplete()
+    subject:onCompleted()
     expect(onNext).to.equal({{'a'}, {'b'}})
   end)
 
@@ -39,7 +39,7 @@ describe('takeUntil', function()
     subject:onNext(1)
     subject:onNext(2)
     subject:onNext(3)
-    subject:onComplete()
+    subject:onCompleted()
     expect(onNext).to.equal({})
   end)
 end)

+ 6 - 6
tests/tap.lua

@@ -8,7 +8,7 @@ describe('tap', function()
     local onNext = spy()
     local observable = Rx.Observable.create(function(observer)
       observer:onNext(1)
-      observer:onComplete()
+      observer:onCompleted()
     end):tap(onNext):subscribe()
     expect(onNext).to.equal({{1}})
   end)
@@ -21,11 +21,11 @@ describe('tap', function()
     expect(onError).to.equal({{'message'}})
   end)
 
-  it('runs the specified onComplete function', function()
-    local onComplete = spy()
+  it('runs the specified onCompleted function', function()
+    local onCompleted = spy()
     local observable = Rx.Observable.create(function(observer)
-      observer:onComplete()
-    end):tap(_, _, onComplete):subscribe()
-    expect(#onComplete).to.equal(1)
+      observer:onCompleted()
+    end):tap(_, _, onCompleted):subscribe()
+    expect(#onCompleted).to.equal(1)
   end)
 end)

+ 1 - 1
tests/unwrap.lua

@@ -10,7 +10,7 @@ describe('unwrap', function()
       observer:onNext(1)
       observer:onNext(2, 3)
       observer:onNext(4, 5, 6)
-      observer:onComplete()
+      observer:onCompleted()
     end)
     expect(observable).to.produce({{1}, {2, 3}, {4, 5, 6}})
     expect(observable:unwrap()).to.produce(1, 2, 3, 4, 5, 6)

+ 6 - 6
tests/with.lua

@@ -21,15 +21,15 @@ describe('with', function()
   it('should complete only when the first observable completes', function()
     local subjectA = Rx.Subject.create()
     local subjectB = Rx.Subject.create()
-    local onComplete = spy()
-    subjectA:with(subjectB):subscribe(Rx.Observer.create(_, _, onComplete))
+    local onCompleted = spy()
+    subjectA:with(subjectB):subscribe(Rx.Observer.create(_, _, onCompleted))
     subjectA:onNext('a')
     subjectB:onNext('b')
-    subjectB:onComplete()
-    expect(#onComplete).to.equal(0)
+    subjectB:onCompleted()
+    expect(#onCompleted).to.equal(0)
     subjectA:onNext('c')
     subjectA:onNext('d')
-    subjectA:onComplete()
-    expect(#onComplete).to.equal(1)
+    subjectA:onCompleted()
+    expect(#onCompleted).to.equal(1)
   end)
 end)

+ 1 - 1
tests/wrap.lua

@@ -14,7 +14,7 @@ describe('wrap', function()
       observer:onNext(1)
       observer:onNext(2, 3)
       observer:onNext(4, 5, 6)
-      observer:onComplete()
+      observer:onCompleted()
     end)
     expect(observable).to.produce({{1}, {2, 3}, {4, 5, 6}})
     expect(observable:wrap(2)).to.produce({{1, 2}, {3, 4}, {5, 6}})