Встроенные команды ТCL


info

        Команда сообщает сведения о состоянии интерпретатора Tcl.

         Синтаксис
        info option?arg arg...?

        Описание

        Эта команда обеспечивает доступ к внутренней информации Tcl-интерпретатора. Ниже перечислены поддерживаемые опции (имена которых могут быть сокращены).

info argsprocname
        Возвращает список имен аргументов процедуры procname в том порядке, в котором они определены при описании процедуры. Аргумент procname должен содержать имя Тсl-процедуры.

info body procname
        Возвращает тело процедуры procname. Аргумент procname должен содержать имя Тсl-процедуры.

info cmdcount
        Возвращает полное число команд, введенных в данный интерпретатор.

info commands?pattern?
        Если аргумент pattern не задан, возвращает полный список команд в текущем пространстве имен, включая как встроенные команды, написанные на С, так и процедуры, заданные с помощью команды рrос. Если аргумент pattern задан, возвращается список только тех имен, которые удовлетворяют шаблону pattern. Правила использования шаблонов такие же, как в команде string match. Шаблон может быть полным именем, например, Foo::print*. То есть он может задавать определенное пространство имен и шаблон в нем. В этом случае каждая команда в возвращаемом списке будет представлена полным именем с указанием пространства имен.

info complete command
        Возвращает 1, если команда command есть завершенная Tcl-команда, то есть не содержит «незакрытых» кавычек, квадратных или фигурных скобок и имен массивов. В противном случае возвращается 0. Эта команда обычно используется при построчном вводе команд пользователем для того, чтобы позволить ему вводить команды из нескольких строк. Для этого, если введенный скрипт не представляет собой законченную команду, его исполнение откладывается до завершения следующей строки.

info default procname arg varname
        Аргумент procname должен быть именем Tcl-процедуры, а аргумент arg — именем одного из аргументов этой процедуры. Если указанный аргумент не имеет значения по умолчанию, команда возвращает 0. В противном случае команда возвращает 1 и помещает значение по умолчанию в переменную varname.

info exists varName
        Возвращает 1, если переменная varName существует в текущем контексте как локальная или как глобальная переменная. В противном случае возвращает 0.

info globals?pattern?
        Если аргумент pattern не задан, возвращает список имен определенных в данный момент глобальных переменных (переменных, определенных в глобальном пространстве имен). Если шаблон задан, возвращаются только имена, удовлетворяющие шаблону. Правила использования шаблонов такие же, как в команде string match.

info hostname
        Возвращает имя компьютера, на котором выполняется этот вызов.

info level ?number?
        Если аргумент number не задан, возвращает уровень стека выполняемой процедуры, или 0, если команда выполняется на верхнем уровне. Если аргумент number указан, команда возвращает список, состоящий из имени и аргументов процедуры, находящейся в стеке вызовов на соответствующем месте. Если number положительное число, оно указывает номер уровня в стеке (1 — самая верхняя вызванная процедура, 2 — процедура, вызванная из процедуры 1, и так далее), если же number отрицательное, оно указывает уровень относительно уровня выполняемой процедуры (0 — выполняемая процедура, -1 — процедура, из которой вызвана исполняемая, и так далее).

info library
        Возвращает имя каталога, в котором хранятся стандартные Tcl-скрипты. Обычно совпадает со значением переменной tcl_library и может быть изменено с помощью переопределения этой переменной.

info loaded?interp?
        Возвращает список библиотек (package), загруженных в интерпретатор с помощью команды load. Каждый элемент списка представляет собой подсписок из двух элементов: имени файла и имени библиотеки. Для статически загруженных библиотек имя файла отсутствует. Если имя интерпретатора interp отсутствует, возвращается список всех библиотек, загруженных во все интерпретаторы. Чтобы получить список библиотек, загруженных в текущий интерпретатор, используйте пустую строку в качестве аргумента interp.

info locals?pattern?
        Если образец не задан, возвращает имена всех определенных в текущий момент локальных переменных, включая аргументы процедуры, если они есть. Переменные, заданные с помощью команд global и upvar, не возвращаются. Если шаблон задан, возвращаются только имена, удовлетворяющие шаблону. Правила использования шаблонов такие же, как в команде string match.

info nameofexecutable
        Возвращает полное имя бинарного файла, с помощью которого приложение было запущено. Если Tcl не может определить файл, возвращается пустая строка. info patchlevel
        Возвращает значение глобальной переменной tcl_patchLevel.

info procs?pattern?
        Если аргумент pattern не задан, возвращает полный список Tcl-процедур в текущем пространстве имен. Если аргумент pattern задан, возвращается список только тех имен, которые удовлетворяют шаблону pattern. Правила использования шаблонов такие же, как в команде string match.

info script
        Если в данный момент обрабатывается Tcl-скрипт (например, вызванный с помощью команды source), то команда возвращает имя файла, содержащего самый внутренний обрабатываемый скрипт. В противном случае возвращает пустую строку.

info sharedlibextension
        Возвращает расширение, используемое на текущей платформе для файлов разделяемых библиотек (например, .so для Solaris). Если разделяемые библиотеки на текущей платформе не поддерживаются, возвращает пустую строку.

info tclversion
        Возвращает значение глобальной переменной tcl_version.

info vars?pattern?
        Если аргумент pattern не задан, возвращает список имен всех видимых в текущий момент переменных, включая локальные и видимые глобальные. Если аргумент pattern задан, возвращается список только тех имен, которые удовлетворяют шаблону pattern. Правила использования шаблонов такие же, как в команде string match. Шаблон может быть полным именем, например Foo::option*. То есть он может задавать определенное пространство имен и шаблон в нем. В этом случае каждая команда в возвращаемом списке будет представлена полным именем с указанием пространства имен.
Hosted by uCoz