• oo::singleton introspection

    From Julian H J Loaring@21:1/5 to All on Thu Mar 17 11:18:01 2022
    Is there a way to discover through introspection that a class/object is a singleton i.e. using Tcl's info command?

    kind regards
    Julian H J Loaring

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Julian H J Loaring@21:1/5 to Julian H J Loaring on Sat Mar 19 12:27:59 2022
    On Thursday, 17 March 2022 at 18:18:04 UTC, Julian H J Loaring wrote:
    Is there a way to discover through introspection that a class/object is a singleton i.e. using Tcl's info command?

    kind regards
    Julian H J Loaring

    Answering my own question... Yes, there is! :)

    For Tcl8.7
    ========

    proc isSingleton {class} {
    expr { [lsearch [info class instances oo::singleton] [info object class $class]] != -1}
    }

    Similarly for abstract classes

    proc isAbstract {class} {
    expr { [lsearch [info class instances oo::abstract] $class] != -1}
    }

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)