REBOL Programming/in-dir

From Wikibooks, open books for an open world
< REBOL Programming
Jump to: navigation, search

USAGE:[edit]

IN-DIR dir block 

DESCRIPTION:[edit]

Evaluate a block while in a directory.

IN-DIR is a function value.

ARGUMENTS:[edit]

  • dir -- Directory to change to (changed back after) (Type: file)
  • block -- Block to evaluate (Type: block)

(SPECIAL ATTRIBUTES)[edit]

  • throw

SOURCE CODE[edit]

in-dir: func [
    "Evaluate a block while in a directory." 
    [throw] 
    dir [file!] "Directory to change to (changed back after)" 
    block [block!] "Block to evaluate" 
    /local old-dir
][
    old-dir: what-dir 
    change-dir dir 
    also do block change-dir old-dir
]