1MakeMethods::Docs::CataUlsoegr(3C)ontributed Perl DocumeMnatkaetMieotnhods::Docs::Catalog(3)
2
3
4
6 Class::MakeMethods::Docs::Catalog - List of Makable Method Types
7
9 This document lists the various subclasses of Class::MakeMethods
10 included in this distribution, and the method types each one provides.
11
12 See the documentation for each implementation for more details about
13 the features it provides.
14
15 For each class, a parenthetical comment indicates whether the methods
16 it generates are applicable to individual blessed objects (Instances),
17 to class data (Global), or both (Any) =head2 Scoping
18
19 The final part of the name of a method-generating subclass typically
20 indicates the scope or applicability of the methods it generates
21
22 Hash
23 For object instances based on blessed hashes with named values.
24
25 Array
26 For object instances based on blessed arrays with positional val‐
27 ues.
28
29 Scalar
30 For object instances based on blessed scalars with a single value.
31
32 InsideOut
33 For any object instance regardless of underlying data type.
34
35 Ref For any object instance regardless of underlying data type.
36
37 Inheritable
38 For data which can be set at the class, subclass, or instance
39 level.
40
41 Class
42 For class data shared by all instances but different for each sub‐
43 class
44
45 ClassVar
46 For class data shared by all instances but different for each sub‐
47 class
48
49 ClassInherit
50 For class data shared by all instances but different for each sub‐
51 class
52
53 Global
54 For global data shared by a class and all its instances and sub‐
55 classes
56
57 PackageVar
58 For global data shared by a class and all its instances and sub‐
59 classes
60
61 Universal
62 # General method types that are widely applicable
63
64 Summary Charts
65
66 This table shows which scopes are available in each generator family:
67
68 SCOPING Basic Standard Evaled Composite Template
69 Hash + + + + +
70 Array + + + +
71 Scalar +
72 InsideOut +
73 Ref +
74 Inheritable + + +
75 Class +
76 ClassVar +
77 ClassInherit +
78 Global + + + +
79 PackageVar +
80 Universal + +
81
82 This table shows which types of methods are typically available in each
83 generator family:
84
85 METHOD Basic Standard Evaled Composite Template
86 new + + + +
87
88 scalar + + + +
89 string +
90 string_index +
91 number +
92 boolean +
93 boolean_index +
94 bits +
95
96 array + + + +
97 struct +
98
99 hash + + + +
100 hash_of_arrays +
101 tiedhash +
102
103 object + + +
104 instance +
105 array_of_objects +
106
107 code +
108 code_or_scalar +
109
111 Basic::Hash (Instances)
112
113 Methods for objects based on blessed hashes. See Class::MakeMeth‐
114 ods::Basic::Hash for details.
115
116 · new: create and copy instances
117
118 · scalar: get and set scalar values in each instance
119
120 · array: get and set values stored in an array refered to in each
121 instance
122
123 · hash: get and set values in a hash refered to in each instance
124
125 Basic::Array (Instances)
126
127 Methods for manipulating positional values in arrays. See
128 Class::MakeMethods::Basic::Array for details.
129
130 · new: create and copy instances
131
132 · scalar: get and set scalar values in each instance
133
134 · array: get and set values stored in an array refered to in each
135 instance
136
137 · hash: get and set values in a hash refered to in each instance
138
139 Basic::Global (Global)
140
141 Global methods are not instance-dependent; calling them by class name
142 or from any instance or subclass will consistently access the same
143 value. See Class::MakeMethods::Basic::Global for details.
144
145 · scalar: get and set a global scalar value
146
147 · array: get and set values in a global array
148
149 · hash: get and set values in a global hash
150
152 Standard::Hash (Instances)
153
154 Methods for objects based on blessed hashes. See Class::MakeMeth‐
155 ods::Standard::Hash for details.
156
157 · new: create and copy instances
158
159 · scalar: get and set scalar values in each instance
160
161 · array: get and set values stored in an array refered to in each
162 instance
163
164 · hash: get and set values in a hash refered to in each instance
165
166 · object: access an object refered to by each instance
167
168 Standard::Array (Instances)
169
170 Methods for manipulating positional values in arrays. See
171 Class::MakeMethods::Standard::Array for details.
172
173 · new: create and copy instances
174
175 · scalar: get and set scalar values in each instance
176
177 · array: get and set values stored in an array refered to in each
178 instance
179
180 · hash: get and set values in a hash refered to in each instance
181
182 · object: access an object refered to by each instance
183
184 Standard::Global (Global)
185
186 Methods for manipulating global data. See Class::MakeMethods::Stan‐
187 dard::Global for details.
188
189 · scalar: get and set global scalar
190
191 · array: get and set values stored in a global array
192
193 · hash: get and set values in a global hash
194
195 · object: global access to an object ref
196
197 Standard::Inheritable (Any)
198
199 Methods for manipulating data which may be overridden per class or
200 instance. Uses external data storage, so it works with objects of any
201 underlying data type. See Class::MakeMethods::Standard::Inheritable
202 for details.
203
204 · scalar: get and set scalar values for each instance or class
205
207 Composite::Hash (Instances)
208
209 Methods for objects based on blessed hashes. See Class::MakeMeth‐
210 ods::Composite::Hash for details.
211
212 · new: create and copy instances
213
214 · scalar: get and set scalar values in each instance
215
216 · array: get and set values stored in an array refered to in each
217 instance
218
219 · hash: get and set values in a hash refered to in each instance
220
221 · object: access an object refered to by each instance
222
223 Composite::Array (Instances)
224
225 Methods for manipulating positional values in arrays. See
226 Class::MakeMethods::Composite::Array for details.
227
228 · new: create and copy instances
229
230 · scalar: get and set scalar values in each instance
231
232 · array: get and set values stored in an array refered to in each
233 instance
234
235 · hash: get and set values in a hash refered to in each instance
236
237 · object: access an object refered to by each instance
238
239 Composite::Global (Global)
240
241 Methods for manipulating global data. See Class::MakeMethods::Compos‐
242 ite::Global for details.
243
244 · scalar: get and set global scalar
245
246 · array: get and set values stored in a global array
247
248 · hash: get and set values in a global hash
249
250 · object: global access to an object ref
251
252 Composite::Inheritable (Any)
253
254 Methods for manipulating data which may be overridden per class or
255 instance. Uses external data storage, so it works with objects of any
256 underlying data type. See Class::MakeMethods::Composite::Inheritable
257 for details.
258
259 · scalar: get and set scalar values for each instance or class
260
261 · hook: create a subroutine intended to have operations added to it
262
263 Composite::Universal (Any)
264
265 Methods for padding pre- and post-conditions to any class. See
266 Class::MakeMethods::Composite::Universal for details.
267
268 · patch: add pre and post operations to an existing subroutine
269
271 Template::Universal (Any)
272
273 Meta-methods for any type of object. See Class::MakeMethods::Tem‐
274 plate::Universal.
275
276 · no_op - a method with an empty body
277
278 · croak - a method which will croak if called
279
280 · method_init - calls other methods from a list of method name =>
281 argument pairs
282
283 · forward_methods - delegates to an object provided by another method
284
285 Template::Ref (Any Instance)
286
287 Methods for deep copies and comparisons. See Class::MakeMethods::Tem‐
288 plate::Ref.
289
290 · clone: make a deep copy of an object instance
291
292 · prototype: make new objects by cloning a typical instance
293
294 · compare: compare one object to another
295
296 Template::Generic (Abstract)
297
298 The remaining subclasses inherit a similar collection of templates from
299 Template::Generic, and provide a different type of scoping or binding
300 for the functionality defined by the Generic template. See
301 Class::MakeMethods::Template::Generic for details.
302
303 Template::Hash (Instances)
304
305 The most commonly used implementation, for objects based on blessed
306 hashes. See Class::MakeMethods::Template::Hash.
307
308 · new: create and copy instances
309
310 · scalar: get and set scalar values in each instance
311
312 · string: get and set string values in each instance
313
314 · number: get and set numeric values in each instance
315
316 · boolean: get and set boolean values in each instance
317
318 · bits: get and set boolean values stored in a single value in each
319 instance
320
321 · array: get and set values stored in an array refered to in each
322 instance
323
324 · struct - methods for acccessing values which are stored by position
325 in an array
326
327 · hash: get and set values in a hash refered to in each instance
328
329 · tiedhash: get and set values in a tied hash refered to in each
330 instance
331
332 · hash_of_arrays: for references to hashes of arrays contained in
333 each instance
334
335 · object: set or access a reference to an object contained in each
336 instance
337
338 · array_of_objects: manipulate an array of object references within
339 in each instance
340
341 · code: set or call a function reference contained in each instance
342
343 Template::Array (Instances)
344
345 Methods for manipulating positional values in arrays. See
346 Class::MakeMethods::Template::Array.
347
348 · new: create and copy array instances
349
350 · scalar: get and set scalar values in a given array position
351
352 · string: get and set string values in a given array position
353
354 · number: get and set numeric values in a given array position
355
356 · boolean: get and set boolean values in a given array position
357
358 · builtin_isa: generates a wrapper around some builtin function,
359 cacheing the results in the object and providing a by-name inter‐
360 face
361
362 Template::Scalar (Instances)
363
364 For objects based on blessed scalars. See Class::MakeMethods::Tem‐
365 plate::Scalar.
366
367 Note that these objects can generally only have one value accessor
368 method, as all such accessors will refer to the same value.
369
370 · new: create and copy instances
371
372 · scalar: get and set scalar values in each instance
373
374 · string: get and set a string value in each instance
375
376 · number: get and set a numeric value in each instance
377
378 · boolean: get and set a boolean value in each instance
379
380 · bits: get and set boolean values stored in a single value in each
381 instance
382
383 · code: set or call a function reference contained in each instance
384
385 Template::InsideOut (Instances)
386
387 Stores values for objects in an external location hashed by identity.
388 See Class::MakeMethods::Template::InsideOut.
389
390 Note that while the below constructor creates and returns scalar refer‐
391 ences, accessor methods can be created with this implementation for use
392 with any type of object.
393
394 · new: create and copy instances
395
396 · scalar: get and set scalar values associated with each instance
397
398 · string: get and set string values associated with each instance
399
400 · string_index: get and set string values associated with each
401 instance, and maintain an index of instances by value
402
403 · number: get and set numeric values associated with each instance
404
405 · boolean: get and set boolean values associated with each instance
406
407 · boolean_index: get and set boolean values associated with each
408 instance, and maintain a list of items which have the flag set
409
410 · bits: get and set boolean values stored in a single value associ‐
411 ated with each instance
412
413 · array: get and set values stored in an array associated with each
414 instance
415
416 · hash: get and set values in a hash associated with each instance
417
418 · code: set or call a function reference associated with each
419 instance
420
421 Template::Global (Global)
422
423 Global methods are not instance-dependent; calling them by class name
424 or from any instance will consistently access the same value. See
425 Class::MakeMethods::Template::Static.
426
427 · scalar: get and set a global scalar value
428
429 · string: get and set a global string value
430
431 · number: get and set a global number value
432
433 · boolean: get and set a global boolean value
434
435 · array: get and set values in a global array
436
437 · hash: get and set values in a global hash
438
439 · tiedhash: get and set values in a global tied hash
440
441 · hash_of_arrays: get and set values in a global hash of arrays
442
443 · object: set and access a global reference to an object
444
445 · instance: set and access a global reference to an object of the
446 declaring class
447
448 · code: set and access a global reference to a subroutine.
449
450 Template::PackageVar (Global)
451
452 PackageVar methods access a variable in the declaring package. Thus,
453 they have the same effect as Static methods, while keeping their value
454 accessible via the symbol table. See Class::MakeMethods::Tem‐
455 plate::PackageVar.
456
457 · scalar: get and set a global scalar value
458
459 · string: get and set a global string value
460
461 · number: get and set a global number value
462
463 · boolean: get and set a global boolean value
464
465 · array: get and set values in a global array
466
467 · hash: get and set values in a global hash
468
469 Template::Class (Global)
470
471 Class methods are similar to Static methods, except that each subclass
472 and its instances will access a distinct value. See Class::MakeMeth‐
473 ods::Template::Class.
474
475 · scalar: get and set a class-specific scalar value
476
477 · string: get and set a class-specific string value
478
479 · number: get and set a class-specific number value
480
481 · boolean: get and set a class-specific boolean value
482
483 · array: get and set values in a class-specific array
484
485 · hash: get and set values in a class-specific hash
486
487 Template::ClassVar (Global)
488
489 ClassVar methods access a variable in the package on which they are
490 called. Thus, they have the same effect as Class methods, while keep‐
491 ing their value accessible via the symbol table, like PackageVar. See
492 Class::MakeMethods::Template::ClassVar.
493
494 · scalar: get and set a class-specific scalar value
495
496 · string: get and set a class-specific string value
497
498 · number: get and set a class-specific number value
499
500 · boolean: get and set a class-specific boolean value
501
502 · array: get and set values in a class-specific array
503
504 · hash: get and set values in a class-specific hash
505
506 Template::ClassInherit (Global)
507
508 ClassInherit methods are an intermediate point between Static and Class
509 methods; subclasses inherit their superclass's value until they set
510 their own value, after which they become distinct. See Class::MakeMeth‐
511 ods::Template::ClassInherit.
512
513 · scalar: get and set an inheritable class-specific scalar value
514
515 · string: get and set an inheritable class-specific string value
516
517 · number: get and set an inheritable class-specific number value
518
519 · boolean: get and set an inheritable class-specific boolean value
520
521 · array: get and set values in an inheritable class-specific array
522
523 · hash: get and set values in an inheritable class-specific hash
524
525 Template::Inheritable (Any)
526
527 Methods for manipulating data which may be overridden per class or
528 instance. Uses external data storage, so it works with objects of any
529 underlying data type. See Class::MakeMethods::Template::Inheritable
530 for details.
531
532 · scalar: get and set scalar values for each instance or class
533
534 · string: get and set string values for each instance or class
535
536 · number: get and set numeric values for each instance or class
537
538 · boolean: get and set boolean values for each instance or class
539
540 · hash: get and set values in a hash refered to in each instance
541
543 See Class::MakeMethods for general information about this distribution.
544
545
546
547perl v5.8.8 2004-09-06 MakeMethods::Docs::Catalog(3)