      
      - returns: The number of registrations removed
      */
-    public static func clear() -> Int {
+    @discardableResult public static func clear() -> Int {
         return lock.write {
             let count = registrations.count
             registrations = [:]

     an optional `name` or `container` implicitly references the default name or container,
     but in this case, it means _any_ name or container.
     */
    public static func unregister(name: AnyHashable? = nil, container: AnyHashable? = nil) -> Int {
        if name == nil && container == nil {
            return clear()
        } else {

     - parameter keys: The keys to remove
     - returns: The number of registrations removed
     */
    @discardableResult  public static func unregister<K: Keyed>(keys: Set<K>) -> Int {
        let keys = keys.map{ AnyKey($0)! }
        return lock.write {
            let count = registrations.count
