Guest User

Untitled

a guest
Nov 20th, 2018
87
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.35 KB | None | 0 0
  1. interface LinkedListNode<T> {
  2. val T.next: T?
  3. val T.seq: Sequence<T>
  4. get() = sequence {
  5. yield(this@seq)
  6. next?.run { yieldAll(seq) }
  7. }
  8. }
  9.  
  10. object ViewParentListNode : LinkedListNode<View> {
  11. override val View.next: View?
  12. get() = parent as? View
  13. }
  14.  
  15. val View.parents get() = ViewParentListNode.run { seq }
Add Comment
Please, Sign In to add comment