Michael Stephens wrote:
I guess I can rebind locals and functions into my own dictionary.. I was just hoping to avoid that with some snazzy python.

I think exec'ing in a custom context is *more* snazzy Python. :-p

Michael

Michael Stephens

Electrical Engineering Graduate Student
University of Wyoming
[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]> or [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>

On Fri, Jun 27, 2008 at 10:58 AM, Michael Foord <[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>> wrote:

    Michael Stephens wrote:

        Closer.. but self.__dict__ is empty and cannot find test.  We
        are trying to wire up property expressions in our system.   So
        control.Enable="GetEnabled()" rather than what we have now
        which is control.Enable="currentform.GetEnabled()"

        I thought I could eval the RHS inside the class to get what i
        wanted but alas no dice.


    Well, you could do it in RT.__dict__ - but you would have to make
    test a staticmethod.

    Why not maintain an explicit dictionary as a context?

    Michael

        Michael Stephens

        Electrical Engineering Graduate Student
        University of Wyoming
        [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>
        <mailto:[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>> or
        [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>
        <mailto:[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>>

        On Fri, Jun 27, 2008 at 10:46 AM, Michael Foord
        <[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>
        <mailto:[EMAIL PROTECTED]
        <mailto:[EMAIL PROTECTED]>>> wrote:

           Michael Stephens wrote:

               I want to be able to execute arbitrary expressions but have
               their context be within my class.  The end result is
        that RT
               test should be printed and not global test

               def test():
                print "global test"

               class RT:
                def test(_self_):
                print 'RT test'
                def Evaluate(_self_,code):
                eval(code)


           exec code in self.__dict__

           Might work.

           Michael


               test()
               a.test()
               a=RT()
               a.Evaluate('test()')

               Michael Stephens

               Electrical Engineering Graduate Student
               University of Wyoming
               [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>
        <mailto:[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>>
               <mailto:[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>
        <mailto:[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>>> or

               [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>
        <mailto:[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>>
               <mailto:[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>
        <mailto:[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>>>
------------------------------------------------------------------------

               _______________________________________________
               Users mailing list
               [email protected]
        <mailto:[email protected]>
        <mailto:[email protected]
        <mailto:[email protected]>>

http://lists.ironpython.com/listinfo.cgi/users-ironpython.com

           --    http://www.ironpythoninaction.com/
           http://www.voidspace.org.uk/
           http://www.trypython.org/
           http://www.ironpython.info/
           http://www.theotherdelia.co.uk/
           http://www.resolverhacks.net/

           _______________________________________________
           Users mailing list
           [email protected]
        <mailto:[email protected]>
        <mailto:[email protected]
        <mailto:[email protected]>>

           http://lists.ironpython.com/listinfo.cgi/users-ironpython.com


        ------------------------------------------------------------------------

        _______________________________________________
        Users mailing list
        [email protected] <mailto:[email protected]>
        http://lists.ironpython.com/listinfo.cgi/users-ironpython.com


-- http://www.ironpythoninaction.com/
    http://www.voidspace.org.uk/
    http://www.trypython.org/
    http://www.ironpython.info/
    http://www.theotherdelia.co.uk/
    http://www.resolverhacks.net/

    _______________________________________________
    Users mailing list
    [email protected] <mailto:[email protected]>
    http://lists.ironpython.com/listinfo.cgi/users-ironpython.com


------------------------------------------------------------------------

_______________________________________________
Users mailing list
[email protected]
http://lists.ironpython.com/listinfo.cgi/users-ironpython.com


--
http://www.ironpythoninaction.com/
http://www.voidspace.org.uk/
http://www.trypython.org/
http://www.ironpython.info/
http://www.theotherdelia.co.uk/
http://www.resolverhacks.net/

_______________________________________________
Users mailing list
[email protected]
http://lists.ironpython.com/listinfo.cgi/users-ironpython.com

Reply via email to