   }
 
   // Computed properties
-
-  /**
-    Determine whether the channel is empty (and therefore can't be read from)
-  */
-
-  private override var isEmpty: Bool { return false }
-
-  /**
-    Determine whether the channel is full (and can't be written to)
-  */
-
-  private override var isFull: Bool { return false }
-
-  /**
-    Report the channel capacity
-  */
-
-  private override var capacity: Int { return 0 }
 
   /**
     Determine whether the channel has been closed

    :return: a newly-wrapped Chan<T> object
  */

  internal class func Wrap<C: ReadableChannel where C.ReadElement == T>(c: C) -> Chan<T>
  {
    return EnclosedDirectionalChan(c)
  }

    :return: a newly-wrapped Chan<T> object
  */

  class func Wrap<C: WritableChannel where C.WrittenElement == T>(c: C) -> Chan<T>
  {
    return EnclosedDirectionalChan(c)
  }
