commit a copy of snit
[scpubgit/TenDotTcl.git] / snit / dictionary.txt
1 Last updated: Snit V1.0
2
3 TYPE VARIABLES
4
5 Snit_info               Introspection Array.  Keys and values are as
6                         follows:
7     
8     hasinstances        Boolean. Normally T, but F if pragma -hasinstances no
9     simpledispatch      Uses a very simple method dispatcher.
10     canreplace          Boolean. Normally F, but T if pragma -canreplace yes
11     counter             Integer counter.  Used to generate unique names.
12     widgetclass         Tk widget class name for snit::widgets
13     hulltype            Hull widget type (frame or toplevel) for
14                         snit::widgets.
15     ns                  The type namespace, "$type::". UNUSED.
16     exceptmethods       Method names excluded from delegate method *.
17     excepttypemethods   Typemethod names excluded from delegate typemethod *.
18     tvardecs            Type variable declarations--for dynamic
19                         methods.
20     ivardecs            Instance variable declarations--for dynamic
21                         methods.
22     isWidget            Boolean; true if object is a widget or
23                         widgetadaptor.
24     isWidgetAdaptor     Boolean; true if object is a widgetadaptor
25
26 Snit_methods            List of method names; defined only when
27                         -simpledispatch yes.
28
29 Snit_typemethodInfo     Array(method name) = {<flag> ?<pattern> <compName>?}
30                         where <flag> is 1 if the method has submethods
31                         (in which case the other fields
32                         are missing) and 0 if it doesn't.
33                         <compName> is "" for normal typemethods
34                         and "method name" can be "*".  Used in
35                         typemethod cache lookup to create the command
36                         for the named typemethod.
37
38 Snit_typecomponents     Array(typecomponent name) = command_name
39                         Used whenever we need to retrieve the 
40                         typecomponent's command.
41
42 Snit_methodInfo         Array(method name) = {<flag> ?<pattern> <compName>?}
43                         where <flag> is 1 if the method has submethods
44                         (in which case the other fields
45                         are missing) and 0 if it doesn't.
46                         <compName> is "" for normal methods and
47                         "method name" can be "*".  Used in 
48                         method cache lookup to create the command for
49                         the named method.
50
51 Snit_optionInfo         An array of option data.  The keys are as follows:
52
53   General fields:
54
55     local               List of local option names.
56
57     delegated           List of explicitly delegated option names.
58
59     starcomp            Name of component for "delegate option *" or ""
60
61     except              List of option names explicitly NOT delegated 
62                         by "delegate option *".
63
64   Fields defined for all locally defined and explicitly delegated options:
65
66     islocal-$opt         1 if local, 0 otherwise.  Currently undefined
67                          for "delegate option *" options.
68
69     resource-$opt        The option's resource name.
70                 
71     class-$opt           The option's class name.
72
73   Fields defined only for locally defined options
74
75     default-$localOpt    Default value.
76
77     validate-$localOpt   The name of the validate method, or "".
78
79     configure-$localOpt  The name of the configure method, or "".
80
81     cget-$localOpt       The name of the cget method, or "".
82
83     readonly-$localOpt   true or false.  (false is the default).
84
85     typespec-$localOpt   Validation type specification (object name or
86                          construction list)
87
88     typeobj-$localOpt    Validation type object
89
90   Fields defined only for delegated options
91
92     delegated-$comp      List of option names delegated to this component.
93
94     target-$opt         [list component targetOptionName].
95
96
97 INSTANCE VARIABLES
98
99 Snit_iinfo              Array, instance info.  At some point,
100                         Snit_instance and Snit_components should
101                         probably be consolidated into it.  The fields
102                         are:
103
104     constructed         0 during instance construction, and 1 after.
105
106 Snit_instance           Current name of the instance command.
107
108 Snit_components         Array(component name) = command_name
109                         Used whenever we need to retrieve the
110                         component's command.
111
112 Consider consolidating the following arrays into a single array, since
113 they are all cleared at the same time.
114
115 Snit_cgetCache          Array(option name) = cached command.
116                         Used by $self cget.
117
118 Snit_configureCache     Array(option name) = cached command.
119                         Used by $self configurelist.
120
121 Snit_validateCache      Array(option name) = cached command.
122                         Used by $self configurelist.  The entry is ""
123                         if there is no validate command.
124
125