ФЭНДОМ


Файл скрипта может быть загружен как данные без выполнения. Это делается функцией load, которая читает текст файла и транслирует переменные в значения, слова и блоки. Ее результатом будет блок, в котором просто значения и они возвращаются. Аргументы функции это имя файла, URL или строка.

load %script.r
load %datafile.txt
load http://www.rebol.org/script.r
load "print now"

Итак load функция:

  • читает текст из файла, URL или строки
  • ищет заголовок, если есть
  • транслирует данные
  • возвращает блок, содержащий значения

Например, если файл скрипта buy.r содержит текст:

Buy 100 shares at $20.00 per share

То он может быть загружен из командной строки:

data: load %buy.r

Результат загрузки в боке:

probe data
[Buy 100 shares at $20.00 per share]

Это пример диалекта REBOL, не прямо осуществляющего кода. Файлу не требуется заголовок при загрузке, который необходим при выполнении. Функция load имеет параметры:

  • /header - включает заголовок, если он представлен
  • /next - загружает только следующее значение (одно за раз)
  • /marup - обрабатывает файл как текст разметки (XML, HTML), заключая теги в блоки

То есть можно возвратить и заголовок скрипта, который будет возвращен как первый аргумент и при использовании параметра next возвратит два значения. Наконец, пример с использованием load/markup:

<title>Example</title>
probe data
[<title>Example</title>]