Posted to tcl by pooryorick at Wed May 04 04:56:36 GMT 2016view raw

  1. proc find _ {
  2. set root [$_ eav set [$_ $ entity] root]
  3. relay accept sender [info coroutine]
  4. set res [$_ eav find * descend {parent entity == $root} eval record {
  5. relay deliver 0 $sender [array get record]
  6. relay accept sender
  7. }]
  8. relay deliver 0 $sender {}
  9. }
  10. [namespace current] method find
  11.  
  12. test fileset_find {} -setup $setup1 -body {
  13. set res {}
  14. set path [file join $tempdir a]
  15. [dir fileset spawn myfileset] init path $path
  16. myfileset scan
  17. relay iter item [coroutine b myfileset find] {
  18. lappend res $item
  19. }
  20. set res
  21. } -cleanup $cleanup1 -result {/a/four /a/three /a/two}
  22.