protocolsince v0.0-927 clojure.lang/SeqableEdit
implemented for ArrayNodeSeq BlackNode ChunkedCons ChunkedSeq Cons Cycle ES6IteratorSeq Eduction EmptyList IndexedSeq IntegerRange Iterate KeySeq LazySeq List MapEntry NodeSeq ObjMap PersistentArrayMap PersistentArrayMapSeq PersistentHashMap PersistentHashSet PersistentQueue PersistentQueueSeq PersistentTreeMap PersistentTreeMapSeq PersistentTreeSet PersistentVector RSeq Range RedNode Repeat Subvec ValSeq

Source docstring:
Protocol for adding the ability to a type to be transformed into a sequence.
Source code @ clojurescript:src/main/cljs/cljs/core.cljs
(defprotocol ISeqable
  (^clj-or-nil -seq [o]
    "Returns a seq of o, or nil if o is empty."))