
- •6.1.2.2. Присваивание ссылок на объект
- •7. Дистанционное обращение
- •7.1. Дистанционные идентификаторы
- •7.2. Присоединения
- •9.2. Квазипараллельное исполнение
- •Integer procedure pos;
- •Inspect sysout do inspect sys in do
- •11.4.2. Семантика
- •1 12.1. Последовательности псевдослучайных чисел
- •14.2.3.2. Семантика
- •14.2.4. Управляющие процедуры
11.4.2. Семантика
О
Переменная LOC обычно содержит порядковый номер некоторого внешнего образа. Процедура location дает доступ к текущему значению переменной LOC. Процедура locate может быть использована для присваивания этой переменной данного значения. Присваивание может сопровождаться определенными в реализации проверками и командами обращения к устройству внешней памяти, соответствующему данному файлу.
Процедура open разыскивает первый образ файла. В остальном она следует схеме, приведенной в разд. 11.1.2.
Процедура endfile вырабатывает значение true тогда и только тогда, когда текущее значение переменной LOC не указывает ни на какой образ внешнего файла. Процедура определяется конкретной реализацией.
Процедура inimage передает в текст image копию внешнего образа, на который в данный момент указывает переменная LOC (если таковой образ имеется). Затем значение переменной LOC увеличивается на единицу процедурой locate. Если файл не содержит образа с порядковым номером, равным значению LOC, то действие процедуры inimage определяется реализацией языка. В остальном эта процедура аналогична процедуре из разд. 11.2.
Процедура outimage передает копию текстового значения -переменной image на внешний файл, добавляя тем самым к файлу еще один внешний образ, порядковый номер которого равен текущему значению переменной LOC. Если файл не вмещает передаваемого текстового значения в качестве внешнего образа, то выдается сообщение об ошибке. Если файл уже содержал некоторый образ с тем же самым порядковым номером, то такой образ уничтожается. Значение переменной LOC увеличивается на единицу процедурой locate. В остальном процедура outimage аналогична процедуре из разд. 11.3.
Другие процедуры класса directfile аналогичны соответствующим процедурам из разд. 11.2. и 11.3,
11.5. класс prlntfile
'
11.5.2. Семантика
Объект класса printfile служит для представления выходного файла, реализуемого печатающим устройством. Класс printfi e является подклассом класса outfile. Переменная image в объекте класса printfile представляет строчку (является образом строчки) на печатной странице.
.Переменная LINES PER PAGE указывает максимальное число физических строчек, которые могут быть напечатаны на каждой странице, включая пробельные строчки. В момент порождения объекта этой переменной присваивается определяемое реализацией значение. Для изменения этого зна-' чения можно воспользоваться процедурой lines per page.
Переменная SPACING указывает количество строк, про пускаемых между двумя последовательными операциями вы дачи на печать. Переменная получает значение 1 в момент порождения объекта. Ее значение можно изменить посред ством процедуры spacing. (В некоторой реализации эта про цедура может иметь побочный эффект, состоящий в измене нии значения переменной LINE.) Если переменная SPACING равна 0, то последовательные образы печатаются на одном и том же физическом месте (без протяжки бумаги)., "
П
цедурой line,
Процедура eject служит для установки печатающего устройства на строчку, указываемую параметром п. Предусматриваются следующие.два случая:
l<n<LINE:
очередной образ будет на печатан на строчке номер ri ;' • " ■ . следующей страницы;
LINE < п < LINES PER PAGE:
очередной образ будет на-
- . печатан на строчке номер п
текущей страницы.
Процедура outimage работает по правилам разд. 11.3. Кроме того, она обновляет переменную LINE и заставляет ее указывать на первую строчку следующей страницы, когда-текущая страница оказывается заполненной.
Процедуры open и close следуют правилам разд. 11.1. Кроме того, процедура open устанавливает печатающее устройство на начало страницы, a close выдает текущее значение текста image, если pos отлична от единицы.
\2. СЛУЧАЙНЫЙ ВЫБОР
*