On 16.10.2025 14:01, Rony G. Flatscher wrote:

As I could run the full test suite on Windows successfully, I will commit the code and related unit tests in a short while.

Here a synopsis:

    The .Package class gets two new protected methods:

      * the protected class method "globalOptions" which allows to query and 
set override package
        options and an override count which controls whether the override 
package options get
        applied whenever a program/package gets newly called or required:
        globalOptions(option[,newValue])

          o option "OverridePackageOptions" (only first capital letter needed): 
returns a string
            formatted as an "::OPTIONS" directive showing all options and their 
values; if one
            supplies "newValue" it needs to be a string formatted as an 
"::OPTIONS" directive,
            which will be used from then on to override the internal package 
options on newly
            called or required programs.

          o option "CountOverride" (only first capital letter needed): returns 
the current
            countOverride value; if one supplies "newValue" it needs to be a 
whole number. If
            countOverride is 0, then no overrides take place. If count Override 
is a positive
            number n, the overrides take place n times. If count is a negative 
number like -1,
            then the overrides take place forever ("globally").

      * the protected instance method "options" which allows to query and set 
(individual) package
        options for the package: options ([option[,newValue]])

          o (no arguments): returns a string formatted as an "::OPTIONS" 
directive showing all
            options and their values

          o "All" (only first capital letter needed): this option mandates 
"newValue" which can be
            one of "Condition" or "Syntax"; it sets all conditions (Error, 
FAilure, Lostdigits,
            NOString, NOTready, NOValue) to "newValue"; it is an error to omit 
"newValue"

          o "Digits" (only first capital letter needed): returns the current 
digits() setting; if
            "newValue" is given it must be a positive whole number that is 
larger than fuzz()

          o "Error"  (only first capital letter needed): returns current 
condition's setting
            ("CONDITION"=default, "SYNTAX"); if "newValue" is given it must be either 
"Condition"
            or "Syntax"

          o "FAilure" (only first two capital letters needed): returns current 
condition's setting
            ("CONDITION"=default, "SYNTAX"); if "newValue" is given it must be either 
"Condition"
            or "Syntax"

          o "FOrm" (only first two capital letters needed): returns the current 
form() setting
            (either "SCIENTIFIC" or "ENGINEERING"); if "newValue" is given it 
must be either
            "Scientific" or "Engineering"

          o "FUzz" (only first two capital letters needed): returns the current 
 fuzz() setting;
            if "newValue" is given it must be a zero or a positive whole number 
that is smaller
            than digits()

          o "InitialPackageSettings"  (only first capital letter needed): 
returns a string
            formatted as an "::OPTIONS" directive showing all options and their 
values; one must
            not supply a "newValue" which would be regarded as an error

          o "Lostdigits" (only first capital letter needed): returns current 
condition's setting
            ("CONDITION"=default, "SYNTAX"); if "newValue" is given it must be either 
"Condition"
            or "Syntax"

          o "NOString" (only first three capital letters needed): returns 
current condition's
            setting ("CONDITION"=default, "SYNTAX"); if "newValue" is given it 
must be either
            "Condition" or "Syntax"

          o "NOTready" (only first three capital letters needed): returns 
current condition's
            setting ("CONDITION"=default, "SYNTAX"); if "newValue" is given it 
must be either
            "Condition" or "Syntax"

          o "NOValue" (only first three capital letters needed): returns 
current condition's
            setting ("CONDITION"=default, "SYNTAX"); if "newValue" is given it 
must be either
            "Condition" or "Syntax"

          o "Prolog"  (only first capital letter needed): returns current 
prolog s setting
            ("PROLOG"=default, "NOPROLOG"); if "newValue" is given it must be either 
"Prolog" or
            "Noprolog"

          o "Reset"  (only first capital letter needed): returns a string 
formatted as an
            "::OPTIONS" directive showing all options and their values; one 
must not supply a
            "newValue" which would be regarded as an error

          o "SetPackageOptions"  (only first capital letter needed): returns a 
string formatted as
            an "::OPTIONS" directive showing all options and their values and 
sets the package
            options to "InitialPackageSettings";  one must not supply a 
"newValue" which would be
            regarded as an error

Sorry, "SetPackageOptions" must have a "newValue" string argument formatted as an "::OPTIONS" directive. Also fixed the code to check for this, which will get committed the moment SourceForge is available again for commits.

         o


          o "Trace"  (only first capital letter needed): returns a single 
letter indicating the
            trace option in effect ("A", "C", "E", "F", "I", "L", "N", "O", "R");  if 
"newValue"
            is given it needs to be one of "All", "Commands", "Error", "Failure", 
"Intermediates",
            "Labels", "Normal", or "Off"

To get at this version, check back with <https://sourceforge.net/projects/oorexx/files/oorexx/5.2.0beta/> in a little while, as Jenkins will create and test ooRexx on many operating systems each time commits occur to ooRexx' trunk.

---rony


_______________________________________________
Oorexx-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/oorexx-devel

Reply via email to