1MakeMethods::Docs::ReadUMsee(r3)Contributed Perl DocumenMtaakteiMoenthods::Docs::ReadMe(3)
2
3
4
6 Class::MakeMethods::Docs::ReadMe - About Class::MakeMethods
7
9 This is an updated release of Class::MakeMethods, for distribution
10 through CPAN.
11
12 This distribution includes the Class::MakeMethods::Template and
13 Class::MakeMethods::Emulator modules which were packaged sepearately in
14 some previous releases.
15
17 By passing arguments to "use Class::MakeMethods ..." statements, you
18 can select from a library of hundreds of common types of methods, which
19 are dynamically installed as subroutines in your module, simplifying
20 the code for your class.
21
23 Version
24 This is Class::MakeMethods v1.010, intended for general use.
25
26 This module's CPAN registration should read:
27
28 Name DSLIP Description
29 -------------- ----- ---------------------------------------------
30 Class::
31 ::MakeMethods RdpOp Generate common types of methods
32
33 Prerequisites
34 In general, this module should work with Perl 5.003 or later, without
35 requring any modules beyond the core Perl distribution.
36
37 The following optional feature may not be available on some platforms:
38
39 • Class::MakeMethods::Attribute: The ":MakeMethod" subroutine
40 attribute requires Perl version 5.6 and the Attribute::Handlers
41 module (from CPAN).
42
43 • Class::MakeMethods::Template "--lvalue": The lvalue modifier
44 provided by the Template generator subclasses will only work on
45 Perl version 5.6 or later.
46
47 • Some third-party tests used to check the compliance of Emulator
48 modules require Test::More and will be automatically skipped on
49 machines which do not have this installed.
50
51 Installation
52 You should be able to install this module using the CPAN shell
53 interface:
54
55 perl -MCPAN -e 'install Class::MakeMethods'
56
57 Alternately, you may retrieve this package from CPAN or from the
58 author's site:
59
60 • http://search.cpan.org/~evo/
61
62 • http://www.cpan.org/modules/by-authors/id/E/EV/EVO
63
64 • http://www.evoscript.org/Class-MakeMethods/dist/
65
66 After downloading the distribution, follow the normal procedure to
67 unpack and install it, using the commands shown below or their local
68 equivalents on your system:
69
70 tar xzf Class-MakeMethods-*.tar.gz
71 cd Class-MakeMethods-*
72 perl Makefile.PL
73 make test && sudo make install
74
75 Thanks to the kind generosity of other members of the Perl community,
76 this distribution is also available repackaged in the FreeBSD "ports"
77 and Linux RPM formats. This may simplify installation for some users,
78 but be aware that these alternate distributions may lag a few versions
79 behind the latest release on CPAN.
80
81 • http://www.freebsd.org/cgi/ports.cgi?query=Class-MakeMethods
82
83 • http://www.rpmfind.net/linux/rpm2html/search.php?query=perl-Class-MakeMethods
84
85 Tested Platforms
86 This release has been tested succesfully on the following platforms:
87
88 5.6.1 on darwin
89
90 Earlier releases have also tested OK on the following platforms:
91
92 IP30-R12000-irix
93 OpenBSD.i386-openbsd
94 i386-freebsd / i386-freebsd-thread-multi
95 i386-linux
96 i386-netbsd / i386-netbsd-thread-multi
97 i586-linux / i586-linux-thread-multi-ld
98 i686-linux / i686-pld-linux-thread-multi
99 ia64-linux
100 ppc-linux
101 sparc-linux
102 sparc-netbsd
103 sun4-solaris
104
105 Some earlier versions failed to "make test" on MSWin32, although a
106 forced installation would still work; that problem should be fixed in
107 the most recent releases.
108
109 You may also review the current test results from CPAN-Testers:
110
111 • http://testers.cpan.org/show/Class-MakeMethods.html
112
114 Release Status
115 This module has been used in a variety of production systems and has
116 been available on CPAN for over two years, with several other
117 distributions dependant on it, so it would be fair to say that it is
118 fully released.
119
120 However, while the commonly-used portions are well tested, some of the
121 more obscure combinations of options are less so, and new bug reports
122 do trickle in occasionally. If you do encounter any problems, please
123 inform the author and I'll endeavor to patch them promptly.
124
125 Additional features have been outlined for future development, but the
126 intent is support these by adding more options to the declaration
127 interface, while maintaining backward compatibility.
128
129 See Class::MakeMethods::Docs::ToDo for other outstanding issues and
130 development plans.
131
132 Support
133 If you have questions or feedback about this module, please feel free
134 to contact the author at the below address. Although there is no formal
135 support program, I do attempt to answer email promptly.
136
137 I would be particularly interested in any suggestions towards improving
138 the documentation and correcting any Perl-version or platform
139 dependencies, as well as general feedback and suggested additions.
140
141 Bug reports that contain a failing test case are greatly appreciated,
142 and suggested patches will be promptly considered for inclusion in
143 future releases.
144
145 To report bugs via the CPAN web tracking system, go to
146 "http://rt.cpan.org/NoAuth/Bugs.html?Dist=Class-MakeMethods" or send
147 mail to "Dist=Class-MakeMethods#rt.cpan.org", replacing "#" with "@".
148
149 Community
150 If you've found this module useful or have feedback about your
151 experience with it, consider sharing your opinion with other Perl users
152 by posting your comment to CPAN's ratings system:
153
154 • http://cpanratings.perl.org/rate/?distribution=Class-MakeMethods
155
156 For more general discussion, you may wish to post a message on
157 PerlMonks or the comp.lang.perl.misc newsgroup:
158
159 • http://www.perlmonks.org/index.pl?node=Seekers%20of%20Perl%20Wisdom
160
161 • http://groups.google.com/groups?group=comp.lang.perl.misc
162
164 Author
165 Developed by Matthew Simon Cavalletto at Evolution Softworks. More
166 free Perl software is available at "www.evoscript.org".
167
168 You may contact the author directly at "evo@cpan.org" or
169 "simonm@cavalletto.org".
170
171 Feedback and Suggestions
172 Thanks to the following people for bug reports, suggestions, and other
173 feedback:
174
175 Martyn J. Pearce
176 Scott R. Godin
177 Ron Savage
178 Jay Lawrence
179 Adam Spiers
180 Malcolm Cook
181 Terrence Brannon
182 Jared Rhine
183 Peter Chen
184 Mike Castle
185
186 Source Material
187 This package was inspired by the ground-breaking original closure-
188 generating method maker module:
189
190 Class::MethodMaker, by Peter Seibel.
191
192 Additional inspiration, cool tricks, and blocks of useful code for this
193 module were extracted from the following CPAN modules:
194
195 Class::Accessor, by Michael G Schwern
196 Class::Contract, by Damian Conway
197 Class::SelfMethods, by Toby Everett
198
199 Copyright
200 Copyright 2002, 2003 Matthew Simon Cavalletto.
201
202 Portions copyright 1998, 1999, 2000, 2001 Evolution Online Systems,
203 Inc.
204
205 Based on Class::MethodMaker, originally developed by Peter Seibel.
206 Portions Copyright 1996 Organic Online. Portions Copyright 2000 Martyn
207 J. Pearce.
208
209 Class::MakeMethods::Emulator::accessors is based on accessors. Portions
210 by Steve Purkis.
211
212 Class::MakeMethods::Emulator::AccessorFast is based on
213 Class::Accessor::Fast. Portions Copyright 2000 Michael G Schwern.
214
215 Class::MakeMethods::Emulator::Inheritable is based on
216 Class::Data::Inheritable. Portions Copyright 2000 Damian Conway and
217 Michael G Schwern.
218
219 Class::MakeMethods::Emulator::mcoder is based on mcoder. Portions
220 Copyright 2003 by Salvador Fandiño.
221
222 Class::MakeMethods::Emulator::Singleton is based on Class::Singleton,
223 by Andy Wardley. Portions Copyright 1998 Canon Research Centre Europe
224 Ltd.
225
226 Class::MakeMethods::Utility::Ref is based on Ref.pm. Portions Copyright
227 1994 David Muir Sharnoff.
228
229 License
230 You may use, modify, and distribute this software under the same terms
231 as Perl.
232
234 Hey! The above document had some coding errors, which are explained
235 below:
236
237 Around line 269:
238 Non-ASCII character seen before =encoding in 'Fandiño.'. Assuming
239 CP1252
240
241
242
243perl v5.38.0 2023-07-20 MakeMethods::Docs::ReadMe(3)