info
Команда сообщает сведения о состоянии интерпретатора Tcl.
СИНТАКСИС
info option ?arg arg...?
ОПИСАНИЕ
Эта команда обеспечивает доступ к внутренней информации
Tcl-интерпретатора. Ниже перечислены поддерживаемые опции (имена
которых могут быть сокращены).
- info args procname
- Возвращает список имен аргументов процедуры procname в
том порядке, в котором они определены при описании
процедуры. Аргумент procname должен содержать имя
Tcl-процедуры.
- info body procname
- Возвращает тело процедуры procname. Аргумент
procname должен содержать имя Tcl-процедуры.
- info cmdcount
- Возвращает полное число команд, введенных в данный
интерпретатор.
- info commands ?pattern?
- Если аргумент pattern не задан, возвращает полный
список команд в текущем пространстве имен, включая как
встроенные команды, написанные на C, так и процедуры, заданные
с помощью команды proc. Если аргумент
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 - процедура, из которой вызвана
исполняемая, и так далее). Более подробно уровни стека
описаны в uplevel.
- info library
- Возвращает имя каталога, в котором хранятся стандартные
Tcl-скрипты. Обычно совпадает со значением переменной
tcl_library и может быть изменено с помощью
переопределения этой переменной. Дополнительная информация
приведена вtclvars
- info loaded ?interp?
- Возвращает список библиотек (package), загруженных в
интерпретатор с помощью команды
load. Каждый элемент списка представляет собой
подсписок из двух элементов: имени файла и имени
библиотеки. Для статически загруженных библиотек имя файла
отсутствует. Если имя интерпретатора interp
отсутствует, возвращается список всех библиотек, загруженных
во все интерпретаторы. Чтобы получить список библиотек,
загруженных в текущий интерпретатор, используйте пустую строку
в качестве аргумента interp.
- info locals ?pattern?
- Если образец не задан, возвращает имена всех определенных в
текущий момент локальных переменных, включая аргументы
процедуры, если они есть. Переменные, заданные с помощью
команд global и upvar, не возвращаются. Если
шаблон задан, возвращаются только имена, удовлетворяющие
шаблону. Правила использования шаблонов такие же, как в
команде string match.
- info nameofexecutable
- Возвращает полное имя бинарного файла, с помощью которого
приложение было запущено. Если Tcl не может определить файл,
возвращается пустая строка.
- info patchlevel
- Возвращает значение глобальной переменной
tcl_patchLevel. См. также раздел tclvars.
- info procs ?pattern?
- Если аргумент pattern не задан, возвращает полный
список Tcl-процедур в текущем пространстве имен. Если аргумент
pattern задан, возвращается список только тех имен,
которые удовлетворяют шаблону pattern. Правила
использования шаблонов такие же, как в команде string
match.
- info script
- Если в данный момент обрабатывается Tcl-скрипт (например,
вызванный с помощью команды
source), то команда возвращает имя файла,
содержащего самый внутренний обрабатываемый скрипт. В
противном случае возвращает пустую строку.
- info sharedlibextension
- Возвращает расширение, используемое на текущей платформе
для файлов разделяемых библиотек (например,.so
для Solaris). Если разделяемые библиотеки на текущей платформе
не поддерживаются, возвращает пустую строку.
- info tclversion
- Возвращает значение глобальной переменной
tcl_version. Дополнительная информация приведена в
tclvars.
- info vars ?pattern?
- Если аргумент pattern не задан, возвращает список
имен всех видимых в текущий момент переменных, включая
локальные и видимые глобальные. Если аргумент pattern
задан, возвращается список только тех имен, которые
удовлетворяют шаблону pattern. Правила использования
шаблонов такие же, как в команде string match. Шаблон
может быть полным именем, например Foo::option*. То
есть он может задавать определенное пространство имен и шаблон
в нем. В этом случае каждая команда в возвращаемом списке
будет представлена полным именем с указанием пространства
имен.