is
Имя
itcl::is — проверка аргумента на то, является ли он классом или объектомСинтаксис
itcl::is опция ?арг arg ...?Описание
Команда is используется для проверки, является ли предоставленный аргумент классом или объектом; в зависимости от заданной опции. Если аргумент является классом или объектом, возвращается 1. В противном случае возвращается 0. Команда is также распознает команды, заключённые в команду itcl code.Аргумент опция определяет действие, выполняемое командой. Допустимые опции (которые могут быть сокращены) следующие:
- is class команда
- Возвращает 1, если команда является классом, и 0 в противном случае.
Полное имя класса должно быть указано в качестве аргумента команда. Таким образом, если класс находится в пространстве имён, необходимо указать это пространство имён. Итак, если класс C находится в пространстве имён N, то команда должна вызываться следующим образом:
is N::C or is ::N::C - is object ?-class имя_класса? команда
- Возвращает 1, если команда является объектом, и 0 в противном случае.
Если указан необязательный параметр «-class», то команда будет проверяться в контексте указанного класса. Обратите внимание, что имя_класса должен существовать. В противном случае будет выдано сообщение об ошибке. Таким образом, если имя_класса не является классом, программисту необходимо проверить его существование заранее или заключить проверку в блок обработки исключений.
Итак, если c является объектом в классе C в пространстве имён N, то возможны следующие варианты (все возвращают 1):
set obj [N::C c] itcl::is object N::c itcl::is object c itcl::is object $obj itcl::is object [itcl::code c]
Licensed under Tcl/Tk terms
https://www.tcl.tk/man/tcl/ItclCmd/is.htm
Licensed under Tcl/Tk terms
https://www.tcl.tk/man/tcl/ItclCmd/is.htm