Scope man page on SmartOS

Man page or keyword search:  
man Server   16655 pages
apropos Keyword Search (all sections)
Output format
SmartOS logo
[printable version]

scope(n)			  [incr Tcl]			      scope(n)

______________________________________________________________________________

NAME
       itcl::scope - capture the namespace context for a variable

SYNOPSIS
       itcl::scope name
_________________________________________________________________

DESCRIPTION
       Creates a scoped value for the specified name, which must be a variable
       name.  If the name is an instance  variable,  then  the	scope  command
       returns a string of the following form:
	      @itcl object varName
       This  is recognized in any context as an instance variable belonging to
       object.	So with itcl3.0 and beyond, it is  possible  to	 use  instance
       variables  in  conjunction  with	 widgets.  For example, if you have an
       object with a private variable x, and you can use x in conjunction with
       the -textvariable option of an entry widget.  Before itcl3.0, only com‐
       mon variables could be used in this manner.

       If the name is not an instance variable, then it must be a common vari‐
       able or a global variable.  In that case, the scope command returns the
       fully qualified name of the variable, e.g., ::foo::bar::x.

       If the name is not recognized as a variable, the scope command  returns
       an error.

       Ordinary	 variable names refer to variables in the global namespace.  A
       scoped value captures a variable name together with its namespace  con‐
       text  in	 a  way that allows it to be referenced properly later.	 It is
       needed, for example, to wrap up variable names when a Tk widget is used
       within a namespace:
	      namespace foo {
		  private variable mode 1

		  radiobutton .rb1 -text "Mode #1"	   -variable [scope mode] -value 1
		  pack .rb1

		  radiobutton .rb2 -text "Mode #2"	   -variable [scope mode] -value 2
		  pack .rb2
	      }
       Radiobuttons  .rb1  and .rb2 interact via the variable "mode" contained
       in the namespace "foo".	The scope command guarantees this by returning
       the fully qualified variable name ::foo::mode.

       You  should  never use the @itcl syntax directly.  For example, it is a
       bad idea to write code like this:
	      set {@itcl ::fred x} 3
	      puts "value = ${@itcl ::fred x}"
       Instead, you should always use the scope command to generate the	 vari‐
       able  name dynamically.	Then, you can pass that name to a widget or to
       any other bit of code in your program.

KEYWORDS
       code, namespace, variable

itcl								      scope(n)
[top]

List of man pages available for SmartOS

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net