> On 16 Jul 2026, at 21:33, Jean Louis Faucher <[email protected]> wrote:
>
>
> Bonus
>
> I made a list of protected methods, and compared it with rexxref.
> Only 4 methods are documented as "protected" in rexxref (see the idented
> methods).
> Not sure we need to update rexxref for each method.
> It would be more easy to list all the protected methods in the chapter "The
> Security Manager".
>
> It's not clear to me why METACLASS, SUBCLASSES, and SUPERCLASS are protected.
> That was already like that in ooRexx 4.2.
>
> rexxref says these method are protected, but they are not:
> - class~inherit .class~method("inherit")~isprotected= -- 0
> - object~run .object~method("run")~isprotected= -- 0
>
>
> ooRexx 5.3
> ooRexx[sh]> ?m == /^......P
> P. PCGP. 'BASECLASS' : 'Class' (REXX)
> P. P.GP. 'BASECLASS' : 'Class' (REXX)
> P. PCGP. 'DEFAULTOPTIONS' : 'Package' (REXX)
> P. P.GP. 'DEFINE' : 'Class' (REXX)
> P. PCGP. 'DEFINE' : 'Class' (REXX)
> P. P.GP. 'DEFINEMETHODS' : 'Class' (REXX)
> P. PCGP. 'DEFINEMETHODS' : 'Class' (REXX)
> P. PCGP. 'DELETE' : 'Class' (REXX)
> P. P.GP. 'DELETE' : 'Class' (REXX)
> P. PCGP. 'METACLASS' : 'Class' (REXX)
> P. P.GP. 'METACLASS' : 'Class' (REXX)
> P. P.GP. 'OPTIONS' : 'Package' (REXX)
> P. P.GP. 'PROCESS' : 'system' (pipe.cls)
> P. P.GP. 'SETMETHOD' : 'Directory' (REXX)
> P. P.GP. 'SETPROTECTED' : 'Method' (REXX)
> P. P.GP. 'SETSECURITYMANAGER' : 'Method' (REXX)
> P. P.GP. 'SETSECURITYMANAGER' : 'Package' (REXX)
> P. P.GP. 'SETSECURITYMANAGER' : 'Routine' (REXX)
> P. P.GP. 'SUBCLASSES' : 'Class' (REXX)
> P. PCGP. 'SUBCLASSES' : 'Class' (REXX)
> P. PCGP. 'SUPERCLASS' : 'Class' (REXX)
> P. P.GP. 'SUPERCLASS' : 'Class' (REXX)
> P. PCGP. 'SUPERCLASSES' : 'Class' (REXX)
> P. P.GP. 'SUPERCLASSES' : 'Class' (REXX)
> P. PCGP. 'UNINHERIT' : 'Class' (REXX)
> P. P.GP. 'UNINHERIT' : 'Class' (REXX)
> P. P.GP. 'UNSETMETHOD' : 'Directory' (REXX)
I made an error in the review above:
Directory~setMethod and Directory~unsetMethod are not documented as protected
in rexxref.
rexxref documents object~setMethod and object~unsetMethod as protected.
But they are not ('P' in col 7 is missing):
ooRexx[sh]> ?m setMethod
P. P.GP. 'SETMETHOD' : 'Directory' (REXX)
P. ..G.. 'SETMETHOD' : 'Object' (REXX)
P. .CG.. 'SETMETHOD' : 'Object' (REXX)
ooRexx[sh]> ?m unsetMethod
P. ..G.. 'UNSETMETHOD' : 'Object' (REXX)
P. P.GP. 'UNSETMETHOD' : 'Directory' (REXX)
P. .CG.. 'UNSETMETHOD' : 'Object' (REXX)
Confirmation in Setup.cpp
AddPrivateMethod("SetMethod", RexxObject::setMethod, 3);
AddPrivateMethod("UnsetMethod", RexxObject::unsetMethod, 1);
AddProtectedMethod("SetMethod", DirectoryClass::setMethodRexx, 2);
AddProtectedMethod("UnsetMethod", DirectoryClass::unsetMethodRexx, 1);
_______________________________________________
Oorexx-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/oorexx-devel