Tcl Source Code

Check-in [f031beec9a]
Login
Bounty program for improvements to Tcl and certain Tcl packages.
Tcl 2019 Conference, Houston/TX, US, Nov 4-8
Send your abstracts to [email protected]
or submit via the online form by Sep 9.

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:[3611643fff]: Support TclOO in autoload mechanism.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: f031beec9a8d39926039f7a37edf289315a8b414
User & Date: dkf 2013-08-03 15:27:40
Context
2013-08-05
22:00
Mark unixforkevent-1.1 nonPortable, until proven on more platforms. Make sure that when testing for... check-in: 4e3f024bd7 user: jan.nijtmans tags: trunk
16:37
merge trunk check-in: dd155eb7e2 user: dgp tags: dgp-refactor
14:47
merge trunk check-in: cb1d262fa1 user: dgp tags: dkf-command-type
2013-08-03
15:27
[3611643fff]: Support TclOO in autoload mechanism. check-in: f031beec9a user: dkf tags: trunk
2013-08-02
20:19
Deal with the elaborate rip-apart-a-metaclass case as well. check-in: 04e4971bde user: dkf tags: trunk
Changes
Hide Diffs Side-by-Side Diffs Ignore Whitespace Patch

Changes to ChangeLog.

            1  +2013-08-03  Donal Fellows  <[email protected]>
            2  +
            3  +	* library/auto.tcl: [Patch 3611643]: Allow TclOO classes to be found
            4  +	by the autoloading mechanism.
            5  +
     1      6   2013-08-02  Donal Fellows  <[email protected]>
     2      7   
     3      8   	* generic/tclOODefineCmds.c (ClassSuperSet): Bug [9d61624b3d]: Stop
     4      9   	crashes when emptying the superclass slot, even when doing elaborate
     5     10   	things with metaclasses.
     6     11   
     7     12   2013-08-01  Harald Oehlmann  <[email protected]>

Changes to library/auto.tcl.

   612    612   		set name ::[join [lreverse $contextStack] ::]
   613    613   		# create artifical proc to force an entry in the tclIndex
   614    614   		$parser eval [list ::proc $name {} {}]
   615    615   	    }
   616    616   	}
   617    617       }
   618    618   }
          619  +
          620  +# AUTO MKINDEX:  oo::class create name ?definition?
          621  +# Adds an entry to the auto index list for the given class name.
          622  +foreach cmd {oo::class class} {
          623  +    auto_mkindex_parser::command $cmd {ecmd name {body ""}} {
          624  +	if {$cmd eq "create"} {
          625  +	    variable index
          626  +	    variable scriptFile
          627  +	    append index [format "set %s \[list source \[%s]]\n" \
          628  +			      [list auto_index([fullname $name])] \
          629  +			      [list file join $dir {*}[file split $scriptFile]]]
          630  +	}
          631  +    }
          632  +}
   619    633   
   620    634   return