Rebol Programming/do-boot
USAGE:
DO-BOOT target args dependent
DESCRIPTION:
Does a value only if it and its file (URL) and it's dependent exists.
DO-BOOT is a function value.
ARGUMENTS
- target -- (Type: any)
- args -- (Type: any)
- dependent -- (Type: any)
SOURCE CODE
do-boot: func [
{Does a value only if it and its file (URL) and it's dependent exists.}
target
args
dependent
/local check dir
][
check: func [target /local tmp] [
if exists? target [return make file! 1]
if exists? system/options/home/:target [return system/options/home]
none
]
if target [
if dependent [dir: check dependent]
if none? dir [dir: check target]
if dir [
dir: append copy dir target
if exists? dir [do/args dir args return true]
]
]
false
]