Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Initial cut of documentation. |
---|---|
Downloads: | Tarball | ZIP archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA3-256: |
86310cbcdcfa171cc28f1881145566bc |
User & Date: | gwlester 2018-02-06 02:47:20.944 |
Context
2018-02-07
| ||
01:53 | Added #! magic check-in: 584df99cfa user: gwlester tags: trunk | |
2018-02-06
| ||
02:47 | Initial cut of documentation. check-in: 86310cbcdc user: gwlester tags: trunk | |
2018-02-05
| ||
21:09 | Working example and correction to _setAttribute logic (fix for [ff08074318]). check-in: 36b5f24ce8 user: gwlester tags: trunk, Release_0.5.3 | |
Changes
Added doc/pyman.html.
> > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 | <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Python Module Manager for Tcl: Usage</title> </head> <body> <title>Python Module Manager for Tcl</title> <h1>Usage</h1> <h2>package require pyman</h2> <br> <h2>pyman addPath <i>pathName</i></h2> <ol> <p>This will add <i><b>pathName</b></i> to the list of directories that Python searches for where to find Python module files to be imported. This is roughly akin to <b>lappend</b> of a directory to Tcl's <b>auto_path</b> variable or doing a ::tcl::tm::path add to add a directory to the directories searched for module files. </p> </ol> <br> <h2>pyman import <i>?-namespace nsName?</i> <i>pythonModuleFileName</i></h2> <p> This will import the Python module and analize the module using the Python introspection tools. The following will be done: <ol> <li>A namespace to contail the Tcl functions and class wrapers for the functions and class will be created. If the <b>-namesapce</b> option was present than its value, <i>nsName</i>, will be used. Otherwise the namespace will be named <b>::pyman::</b><i style="font-weight: bold;">pythonModuleName</i> where <i>pythonModuleName</i> is the name of the Python module that was imported.</li> <li>For each function found in the module, a Tcl wrapper function will be generated that take the same arguments and will call the Python function and return its results.</li> <li>For each class found in the module, a TclOO wrapper class will be generated. This class will have the same methods with the same arguments as the public methods in the Python class. </li> <li>Creation of a new TclOO object of this class will result in a Python object of the same class being created. </li> <ul> <li><u><font color="#ff0000">(Not yet implemented) Calls to class methods of the class will call static methods of the Python class.</font></u></li> <li>Calls to instance methods of the class will call instance methods of the corresponding Python object instances.</li> <li>Instance attributes can be accessed via the following special methods:</li> <ul> <li><b>_attributes <i>?pattern?</i></b> -- Get a list of attributes that match the glob style <i style=""><b>pattern</b> </i>and their allowed values. The default for <i style="font-weight: bold;">pattern</i> is "<b>*</b>".</li> <li><b>_getAttribute</b> <b><i>attributeName</i></b> -- Return the value of the named attribute.</li> <li><b>_setAttribute</b> <b><i>attributeName value</i></b> -- Set the named attribute to the specified value. (Note: not all attributes can be modified).</li> </ul> <li>The Tcl programmer is allowed to add additional methods and/ <span style="font-size: 13.3333px;">or variables </span>to the <span style="font-size: 13.3333px;">TclOO</span> class and/or instances of the class, these will only be visble from Tcl.<br> </li> </ul> </ol> </p> </body> </html> |