Commit | Line | Data |
d4567ecb |
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 | |