April 05, 2007
Step1: enhance the Signal & Slot func, make it support observer of a delegate of a nested func
Step2: provide low-level func, SaveStackFrame, RestoreStackFrame(these two func manipulate the SP)
actually they are quite simple, a rough implementation of them would be(i haven't tried to compile
it actually , but they should do the trick) :
struct Frame
{
    static int _esp;
    SaveStackFrame()
    {
        asm
        {
            mov _esp,ESP;
        }
    }

    RestoreStackFrame()
    {
        asm
        {
            mov ESP,_esp;
        }
    }
}

Step3:
make all throw exception in library all proceeded by signal & slot. This would reduce the runtime
expense, and i think would provide user a lot possibilities with proceeding the exception generated
 by the standard library. like continue the standard library process? or break the process?
April 05, 2007
err, i don't know if it requires RetPoint(return to specific IP address)?
cause the idea of using SaveStackFrame & RestoreStackFrame is trying to
get the signal break the whole process like a real exception does.

so possible use of it would be

void func()
{
    Frame f = new f;
    f.SaveStackFrame;
    void handler(char[] msg, int i)
    {

        f.RestoreStackFrame(&Label);
    }
    //Set the handler to our nested func

    //call some std funcs

    Label:
    // continue normal process
}

and a typo in Frame :p static int _esp; should be int _esp;

and another feature request is user can use & operator to get
forward label address to void*


>
> Step1: enhance the Signal & Slot func, make it support observer of a delegate of a nested func
> Step2: provide low-level func, SaveStackFrame, RestoreStackFrame(these two func manipulate the SP)
> actually they are quite simple, a rough implementation of them would be(i haven't tried to compile
> it actually , but they should do the trick) :
> struct Frame
> {
>      static int _esp;
>      SaveStackFrame()
>      {
>          asm
>          {
>              mov _esp,ESP;
>          }
>      }
>
>      RestoreStackFrame()
>      {
>          asm
>          {
>              mov ESP,_esp;
>          }
>      }
> }
>
> Step3:
> make all throw exception in library all proceeded by signal & slot. This would reduce the runtime
> expense, and i think would provide user a lot possibilities with proceeding the exception generated
>   by the standard library. like continue the standard library process? or break the process?