Rebol Programming/reflect

From Wikibooks, open books for an open world
Jump to navigation Jump to search

USAGE:

[edit | edit source]
REFLECT value field 

DESCRIPTION:

[edit | edit source]

Returns definition-related details about a value.

REFLECT is a function value.

ARGUMENTS

[edit | edit source]
  • value -- (Type: any-type)
  • field -- Such as: spec body words values title etc. (Type: word)

(SPECIAL ATTRIBUTES)

[edit | edit source]
  • catch

SOURCE CODE

[edit | edit source]
reflect: func [
    "Returns definition-related details about a value." 
    [catch] 
    value [any-type!] 
    field [word!] "Such as: spec body words values title etc."
][throw-on-error [
        switch/default field [
            spec [spec-of :value] 
            body [body-of :value] 
            words [words-of :value] 
            values [values-of :value] 
            types [types-of :value] 
            title [title-of :value]
        ] [
            cause-error 'script 'invalid-arg field
        ]
    ]]