Ада-95. Компилятор GNAT
66ac8edd

Выражения


Какое-либо выражение является или строковым выражением, или выражением списка строк.

Какое-либо строковое выражение является или простым строковым выражением, или составным строковым выражением.

Какое-либо простое строковое выражение является:

  • Строковым литералом (например, "comm/my_proj.gpr")
  • Обращеие к переменной обладающей строковым значением (см. "Переменные")
  • Обращение к атрибуту обладающему строковым значением (см. "Атрибуты")
  • Внешняя ссылка (см. "Внешние ссылки в Файлах Проектов")

    Какое-либо составное строковое выражение является конкатенацией строковых выражений с помощью символа '&'. Например:

    Path & "/" & File_Name & ".ads"

    Какое-либо выражение списка строк является простым выражением списка строк или составным выражением списка строк.

    Каким-либо простым выражением списка строк является:

  • Заключенный в скобки список, состоящий из нуль или более строковых выражений, разделенных запятыми:

    File_Names := (File_Name, "gnat.adc", File_Name & ".orig"); Empty_List := ();

  • Обращение к переменной обладающей значением списка строк
  • Обращение к атрибуту обладающему значением списка строк

    Каким-либо составным выражением списка строк является конкатенация простого выражения списка строк и какого-либо выражения с помощью символа '&'.

    Примечательно, что каждая лексема составного выражения списка строк, за исключением первой, может быть как строковым выражением, так и выражением списка строк. Например:

    File_Name_List := () & File_Name; -- в этом списке одна строка

    Extended_File_Name_List := File_Name_List & (File_Name & ".orig"); -- две строки

    Big_List := File_Name_List & Extended_File_Name_List; -- Конкатенация двух списков строк: три строки

    Illegal_List := "gnat.adc" & Extended_File_Name_List; -- не допустимо: конкатенация должна начинаться со списка строк



    Содержание раздела