I can see Barney's point that the documentation was not in accordance
with the return statements of several of the subroutines. So I have
changed that accordingly.
It seems from the discussion that most of us can live with an explicit
statement of a true return value (as distinct from an explicit bare
return or an implicit true value), so I have made that change. No
changes in the test suite are then needed.
These are the return statements:
$ grep -n return lib/Parrot/Ops2pm/Utils.pm
131: return bless $argsref, $class;
275: return 1;
359: return 1;
414: return 1;
465: return 1;
552: return 1;
637: return 1;
Attached is the diff for what I have committed in r29553.
For future reference, please note that the POD for
lib/Parrot/Ops2c/Utils.pm has all along included a NOTE ON TESTING
section that describes the accompanying test suite and how to use it in
refactoring the module.
Thank you very much.
kid51
Index: lib/Parrot/Ops2pm/Utils.pm
===================================================================
--- lib/Parrot/Ops2pm/Utils.pm (revision 29552)
+++ lib/Parrot/Ops2pm/Utils.pm (working copy)
@@ -375,8 +375,8 @@
=item * Return Value
-None. Internally, sets the C<ops> key of the object's data
-structure.
+Returns true value upon successful completion. Internally, sets the C<ops>
+key of the object's data structure.
=item * Comment
@@ -411,7 +411,7 @@
@{ $self->{ops}->{OPS} } =
sort { $a->{CODE} <=> $b->{CODE} } ( @{ $self->{ops}->{OPS} } );
- return;
+ return 1;
}
=head2 C<prepare_real_ops()>
@@ -429,8 +429,8 @@
=item * Return Value
-None. Internally, sets the C<real_ops> key of the object's
-data structure.
+Returns true value upon successful completion. Internally, sets the
+C<real_ops> key of the object's data structure.
=item * Comment
@@ -462,7 +462,7 @@
}
$self->{real_ops} = $real_ops;
- return;
+ return 1;
}
=head2 C<print_module()>
@@ -476,12 +476,12 @@
=item * Arguments
-None. (Implicitly requires that the constructor have the
-following keys defined: C<argv>, C<script>, C<moddir> and C<module>.)
+None. (Implicitly requires that the constructor have the following keys
+defined: C<argv>, C<script>, C<moddir> and C<module>.)
=item * Return Value
-Returns true value upon success.
+Returns true value upon successful completion.
=item * Comment