logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

tcl::transform::core - Basic reflected/virtual channel transform support

Bugs, Ideas, Feedback

       This document, and the package it describes, will undoubtedly contain bugs and  other  problems.   Please
       report  such  in  the category virtchannel of the TcllibTrackers [http://core.tcl.tk/tcllib/reportlist].
       Please also report any ideas for enhancements you may have for either package and/or documentation.

       When proposing code changes, please provide unifieddiffs, i.e the output of diff-u.

       Note further that attachments are strongly preferred over inlined patches. Attachments  can  be  made  by
       going  to the Edit form of the ticket immediately after its creation, and then using the left-most button
       in the secondary navigation bar.

Category

       Channels

Class Api

::tcl::transform::coreobjectName
              This command creates a new transform core object with an associated global Tcl command whose  name
              is  objectName.  This command may be used to invoke various operations on the object, as described
              in the section for the InstanceAPI.

Description

       The tcl::transform::core package provides a TclOO class implementing common behaviour needed by virtually
       every reflected or virtual channel transformation (initialization, finalization).

       This  class expects to be used as either superclass of a concrete channel class, or to be mixed into such
       a class.

Instance Api

       The API of transform core instances provides only two methods, both corresponding  to  transform  handler
       commands  (For  reference  see  TIP230 [http:/tip.tcl.tk/230]). They expect to be called from whichever
       object instance the transform core was made a part of.

       objectNameinitializethechannelmode
              This method implements standard behaviour for the initialize method of transform  handlers.  Using
              introspection it finds the handler methods supported by the instance and returns a list containing
              their names, as expected by the support for reflected transformation in the Tcl core.

              It further remembers the channel handle in an instance variable for access by sub-classes.

       objectNamefinalizethechannel
              This  method  implements standard behaviour for the finalize method of channel handlers. It simply
              destroys itself.

       objectNamedestroy
              Destroying the transform core instance closes the channel and transform it  was  initialized  for,
              see  the  method  initialize.  When destroyed from within a call of finalize this does not happen,
              under the assumption that the channel and transform are being destroyed by Tcl.

Keywords

       reflected channel, tip 219, virtual channel

Name

       tcl::transform::core - Basic reflected/virtual channel transform support

Synopsis

       package require Tcl8.59

       package require TclOO

       package require tcl::transform::core?1.1?::tcl::transform::coreobjectNameobjectNameinitializethechannelmodeobjectNamefinalizethechannelobjectNamedestroy

________________________________________________________________________________________________________________

See Also