nsf

Clone Tools
  • last updated 15 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
- removed "-protected" and "-public" from method defining methods ("alias", "method")

- Definition of method modifiers "public", "protected" and "object" - all method-creating methods ("method", "alias", "forward", "setter") return now the fully qualified method names - extending 50 regression tests fpr method modifiers - Make "unknown" for ::xotcl2::Class" to raise an error instead of warning. Otherwise, protected class-level methods would create objects with the name of protected methods. Other option: make calls to protected methods raise an error, instead of calling "unknown"

    • -0
    • +159
    /tests/method-modifiers.xotcl
- return fully qualified name from method defining commands (part 1, "method")

- changed in xotcl-core "method" into "object-method" and "class-method", provided scripted definition for method in xotcl2 - removed "setter" from methods in xotcl1 - defined xotcl1 methods in terms of "proc" and "instproc"

- dropped method "instvar" from the xotcl2 interface

- Methods defined via "method" are now per default "protected" - new switch "-public" for "method" to define public methods - new flag for "info callable": -callprotection", values "all|protected|public" - new flag for "info methods": -callprotection", values "all|protected|public" - converted part of regression test

- minor refactoring to reflect changes in "info methods"

- changed "info methods" (without defined, as defined in xotcl1) into "info callable" - changed "info methods -defined" into "info methods" - replaced "procsearch <name>" by "info callable -which <name>" - added emulation for procsearch for xotcl1

- removed "obj|class info alias"; obsoleted by "info method definition"

- renamed "info method pre" to "info method precondition" - renamed "info method post" to "info method postcondition"

- removed "-per-object" slot from infoslot->get and infoslot->add

- reduce verbosity

- added changes for new behavior

- keep last setting of per-object and per-class mixins, when list of new mixins contains invalid ones (prev. versions: registered mixins were reset)

- reseting interceptor list in interceptorslot->mixin via relation - adding rests for behavior, when setting invalid mixins

- remove experimental code

- info "pre" is gone, now subcommand "<obj> info method pre <name>", added emulation in xotcl1 - info "inst pre" is gone, now subcommand "<cls> info method pre <name>", added emulation in xotcl1 - info "post" is gone, now subcommand "<obj> info method post <name>", added emulation in xotcl1 - info "instpost" is gone, now subcommand "<cls> info method post <name>", added emulation in xotcl1 - "info instinvar" gone, added emulation in xotcl1

- minor cleanup of obsolete code

- removed deprecated calls from predefined and regression test

* info params removed * info instparams removed * added subcommand to "info method args <somename>": similar to "info method parameter ...", but returns only names of parameters instead of full parameter definitions

- method "instfilterguard" is gone (for xotcl2) we have now "<Object> filterguard <name> ... " "<Class> filterguard ?-per-object? <class> " - added emulation for old "filterguard" and "instfilterguard" in xotcl1

- "info instforward" gone, added emulation in xotcl1

- "info instfilterguard" gone, added emulation in xotcl1

- "info instfilter" gone, added emulation in xotcl1

- "info instmixinguard" gone, added emulation in xotcl1

- "info instmixin" gone, added emulation in xotcl1

- provide method get for Interceptor slots - added tests/info-method.xotcl - added tests/interceptor-slot.xotcl

    • -0
    • +63
    /tests/info-method.xotcl
    • -0
    • +96
    /tests/interceptor-slot.xotcl
- handling forward case with nonpos-arg and zero positional arguments (many thanks to Stefan) - treating "-per-object" in infoslot get method (many thanks to Stefan) - removing obsolete function from xotcl.c

- method "instmixinguard" is gone (for xotcl2) we have now "<Object> mixinguard <name> ... " "<Class> mixinguard ?-per-object? <class> " - added emulation for old "mixinguard" and "instmixinguard" in xotcl1

- xotcl1: defined "parametercmd" and "instparametercmd" in terms of

alias instead of forward

- forward: new option for handling flags syntax "%-SOMEFLAG ?insert?%" The option checks the actual arguments, if they start with "-", it compares it with the provided name. If it matches, the flag is consumed and added at the provided position in the output list. If the flag does not match, but "insert" is given with the value of 1, then the flag is output as well. Note that the last feature is added for omitting double inserts.

- due to the new forward option, the following important

cases work now:

- adding/deleting/... per-object mixins for classes via

slot methods

C mixin -per-object add M

- adding per-object mixins for classes in short form

C mixin -per-object M

- added "what" argument to deprecated command to let the

user be more exact, what is actually deprecated