uk.co.badgersinfoil.jactionscript.analysis
Interface StackListener

All Known Implementing Classes:
FilterStackListener, NullStackListener

public interface StackListener

A StackListener is informed when SimpleStackSimulator updates its simulated stack.


Nested Class Summary
static class StackListener.DragBox
           
 
Method Summary
 void visitADD(Action action, Operand left, Operand right, Operand result)
           
 void visitAND(Action action, Operand left, Operand right, Operand result)
           
 void visitASCII_TO_CHAR_MB(Action action, Operand val, Operand result)
           
 void visitASCII_TO_CHAR(Action action, Operand val, Operand result)
           
 void visitBIT_AND(Action action, Operand left, Operand right, Operand result)
           
 void visitBIT_OR(Action action, Operand left, Operand right, Operand result)
           
 void visitBIT_XOR(Action action, Operand left, Operand right, Operand result)
           
 void visitCALL_FUNCTION(Action action, Operand name, java.util.List args, Operand result)
           
 void visitCALL_METHOD(Action action, Operand name, java.util.List args, Operand result)
           
 void visitCHAR_MB_TO_ASCII(Action action, Operand val, Operand result)
           
 void visitCHAR_TO_ASCII(Action action, Operand val, Operand result)
           
 void visitCONCAT(Action action, Operand left, Operand right, Operand result)
           
 void visitCONVERT_TO_NUMBER(Action action, Operand val, Operand result)
           
 void visitCONVERT_TO_STRING(Action action, Operand val, Operand result)
           
 void visitDECREMENT(Action action, Operand val, Operand result)
           
 void visitDEFINE_LOCAL_VALUE(Action action, Operand name, Operand value)
           
 void visitDEFINE_LOCAL(Action action, Operand name)
           
 void visitDELETE_PROPERTY(Action action, Operand name, Operand obj, Operand result)
           
 void visitDELETE_THREAD_VARS(Action action, Operand name)
           
 void visitDIVIDE(Action action, Operand left, Operand right, Operand result)
           
 void visitDUPLICATE(Action action, Operand val, Operand result1, Operand result2)
           
 void visitEND_DRAG(Action action)
           
 void visitEnd(ActionList list)
           
 void visitENUMERATE_OBJECT(Action action, Operand obj, java.util.List slots)
           
 void visitENUMERATE(Action action, Operand name, java.util.List slots)
           
 void visitEQUALS(Action action, Operand left, Operand right, Operand result)
           
 void visitGET_MEMBER(Action action, Operand name, Operand obj, Operand result)
           
 void visitGET_PROPERTY(Action action, Operand index, Operand target, Operand result)
           
 void visitGET_TIME(Action action, Operand time)
           
 void visitGET_URL(GetURLAction action)
           
 void visitGET_URL2(GetURL2Action action, Operand target, Operand url)
           
 void visitGET_VARIABLE(Action action, Operand name, Operand result)
           
 void visitGOTO_FRAME(GotoFrameAction action)
           
 void visitGOTO_FRAME2(GotoFrame2Action action, Operand frame)
           
 void visitGREATER_THAN(Action action, Operand right, Operand left, Operand result)
           
 void visitHandle(ActionHandle handle)
           
 void visitIF_JUMP(IfJumpAction action, Operand condition)
           
 void visitINCREMENT(Action action, Operand val, Operand result)
           
 void visitINSTANCE_OF(Action action, Operand ctor, Operand obj, Operand result)
           
 void visitJUMP(JumpAction action)
           
 void visitLESS_THAN(Action action, Operand left, Operand right, Operand result)
           
 void visitLOOKUP_TABLE(LookupTableAction action)
           
 void visitLOOKUP(LookupAction action, Operand result)
           
 void visitMODULO(Action action, Operand left, Operand right, Operand result)
           
 void visitMULTIPLY(Action action, Operand left, Operand right, Operand result)
           
 void visitNEW_OBJECT(Action action, Operand name, java.util.List args, Operand result)
           
 void visitNEXT_FRAME(Action action)
           
 void visitNOT(Action action, Operand val, Operand result)
           
 void visitOR(Action action, Operand left, Operand right, Operand result)
           
 void visitPLAY(Action action)
           
 void visitPOP(Action action)
           
 void visitPREV_FRAME(Action action)
           
 void visitPUSH(PushAction action, java.util.List list)
           
 void visitRANDOM_NUMBER(Action action, Operand max, Operand result)
           
 void visitREMOVE_SPRITE(Action action, Operand target)
           
 void visitRETURN_VALUE(Action action, Operand returnVal)
           
 void visitSET_MEMBER(Action action, Operand value, Operand name, Operand object)
           
 void visitSET_PROPERTY(Action action, Operand value, Operand index, Operand target)
           
 void visitSET_TARGET_2(Action action, Operand target)
           
 void visitSET_TARGET(SetTargetAction action)
           
 void visitSET_VARIABLE(Action action, Operand name, Operand value)
           
 void visitSHIFT_LEFT(Action action, Operand count, Operand value, Operand result)
           
 void visitSHIFT_RIGHT_UNSIGNED(Action action, Operand count, Operand value, Operand result)
           
 void visitSHIFT_RIGHT(Action action, Operand count, Operand value, Operand result)
           
 void visitSTART_DRAG(Action action, Operand target, Operand lookCentre, StackListener.DragBox constraintBox)
           
 void visitSTART_FUNCTION(StartFunctionAction action, Operand fn)
           
 void visitSTOP_SOUNDS(Action action)
           
 void visitSTOP(Action action)
           
 void visitSTORE_IN_REGISTER(StoreInRegisterAction action, Operand val)
           
 void visitSTRICT_EQUALS(Action action, Operand left, Operand right, Operand result)
           
 void visitSTRING_EQUALS(Action action, Operand left, Operand right, Operand result)
           
 void visitSTRING_GREATER_THAN(Action action, Operand left, Operand right, Operand result)
           
 void visitSTRING_LENGTH_MB(Action action, Operand val, Operand result)
           
 void visitSTRING_LENGTH(Action action, Operand val, Operand result)
           
 void visitSTRING_LESS_THAN(Action action, Operand left, Operand right, Operand result)
           
 void visitSUBSTRING(Action action, Operand count, Operand index, Operand val, Operand result)
           
 void visitSUBTRACT(Action action, Operand left, Operand right, Operand result)
           
 void visitSWAP(Action action, Operand first, Operand second)
           
 void visitTO_INTEGER(Action action, Operand val, Operand result)
           
 void visitTOGGLE_QUALITY(Action action)
           
 void visitTRACE(Action action, Operand val)
           
 void visitTYPE_OF(Action action, Operand val, Operand result)
           
 void visitTYPED_ADD(Action action, Operand left, Operand right, Operand result)
           
 void visitTYPED_EQUALS(Action action, Operand left, Operand right, Operand result)
           
 void visitTYPED_LESS_THAN(Action action, Operand left, Operand right, Operand result)
           
 

Method Detail

visitHandle

public void visitHandle(ActionHandle handle)
                 throws JASVisitorException
JASVisitorException

visitEnd

public void visitEnd(ActionList list)
              throws JASVisitorException
JASVisitorException

visitADD

public void visitADD(Action action,
                     Operand left,
                     Operand right,
                     Operand result)
              throws JASVisitorException
JASVisitorException

visitAND

public void visitAND(Action action,
                     Operand left,
                     Operand right,
                     Operand result)
              throws JASVisitorException
JASVisitorException

visitASCII_TO_CHAR

public void visitASCII_TO_CHAR(Action action,
                               Operand val,
                               Operand result)
                        throws JASVisitorException
JASVisitorException

visitASCII_TO_CHAR_MB

public void visitASCII_TO_CHAR_MB(Action action,
                                  Operand val,
                                  Operand result)
                           throws JASVisitorException
JASVisitorException

visitBIT_AND

public void visitBIT_AND(Action action,
                         Operand left,
                         Operand right,
                         Operand result)
                  throws JASVisitorException
JASVisitorException

visitBIT_OR

public void visitBIT_OR(Action action,
                        Operand left,
                        Operand right,
                        Operand result)
                 throws JASVisitorException
JASVisitorException

visitBIT_XOR

public void visitBIT_XOR(Action action,
                         Operand left,
                         Operand right,
                         Operand result)
                  throws JASVisitorException
JASVisitorException

visitCALL_FUNCTION

public void visitCALL_FUNCTION(Action action,
                               Operand name,
                               java.util.List args,
                               Operand result)
                        throws JASVisitorException
JASVisitorException

visitCALL_METHOD

public void visitCALL_METHOD(Action action,
                             Operand name,
                             java.util.List args,
                             Operand result)
                      throws JASVisitorException
JASVisitorException

visitCHAR_MB_TO_ASCII

public void visitCHAR_MB_TO_ASCII(Action action,
                                  Operand val,
                                  Operand result)
                           throws JASVisitorException
JASVisitorException

visitCHAR_TO_ASCII

public void visitCHAR_TO_ASCII(Action action,
                               Operand val,
                               Operand result)
                        throws JASVisitorException
JASVisitorException

visitCONCAT

public void visitCONCAT(Action action,
                        Operand left,
                        Operand right,
                        Operand result)
                 throws JASVisitorException
JASVisitorException

visitCONVERT_TO_NUMBER

public void visitCONVERT_TO_NUMBER(Action action,
                                   Operand val,
                                   Operand result)
                            throws JASVisitorException
JASVisitorException

visitCONVERT_TO_STRING

public void visitCONVERT_TO_STRING(Action action,
                                   Operand val,
                                   Operand result)
                            throws JASVisitorException
JASVisitorException

visitDECREMENT

public void visitDECREMENT(Action action,
                           Operand val,
                           Operand result)
                    throws JASVisitorException
JASVisitorException

visitDEFINE_LOCAL

public void visitDEFINE_LOCAL(Action action,
                              Operand name)
                       throws JASVisitorException
JASVisitorException

visitDEFINE_LOCAL_VALUE

public void visitDEFINE_LOCAL_VALUE(Action action,
                                    Operand name,
                                    Operand value)
                             throws JASVisitorException
JASVisitorException

visitDELETE_PROPERTY

public void visitDELETE_PROPERTY(Action action,
                                 Operand name,
                                 Operand obj,
                                 Operand result)
                          throws JASVisitorException
JASVisitorException

visitDELETE_THREAD_VARS

public void visitDELETE_THREAD_VARS(Action action,
                                    Operand name)
                             throws JASVisitorException
JASVisitorException

visitDIVIDE

public void visitDIVIDE(Action action,
                        Operand left,
                        Operand right,
                        Operand result)
                 throws JASVisitorException
JASVisitorException

visitDUPLICATE

public void visitDUPLICATE(Action action,
                           Operand val,
                           Operand result1,
                           Operand result2)
                    throws JASVisitorException
JASVisitorException

visitEND_DRAG

public void visitEND_DRAG(Action action)
                   throws JASVisitorException
JASVisitorException

visitENUMERATE

public void visitENUMERATE(Action action,
                           Operand name,
                           java.util.List slots)
                    throws JASVisitorException
JASVisitorException

visitENUMERATE_OBJECT

public void visitENUMERATE_OBJECT(Action action,
                                  Operand obj,
                                  java.util.List slots)
                           throws JASVisitorException
JASVisitorException

visitEQUALS

public void visitEQUALS(Action action,
                        Operand left,
                        Operand right,
                        Operand result)
                 throws JASVisitorException
JASVisitorException

visitGET_MEMBER

public void visitGET_MEMBER(Action action,
                            Operand name,
                            Operand obj,
                            Operand result)
                     throws JASVisitorException
JASVisitorException

visitGET_PROPERTY

public void visitGET_PROPERTY(Action action,
                              Operand index,
                              Operand target,
                              Operand result)
                       throws JASVisitorException
JASVisitorException

visitGET_TIME

public void visitGET_TIME(Action action,
                          Operand time)
                   throws JASVisitorException
JASVisitorException

visitGET_URL2

public void visitGET_URL2(GetURL2Action action,
                          Operand target,
                          Operand url)
                   throws JASVisitorException
JASVisitorException

visitGET_URL

public void visitGET_URL(GetURLAction action)
                  throws JASVisitorException
JASVisitorException

visitGET_VARIABLE

public void visitGET_VARIABLE(Action action,
                              Operand name,
                              Operand result)
                       throws JASVisitorException
JASVisitorException

visitGOTO_FRAME2

public void visitGOTO_FRAME2(GotoFrame2Action action,
                             Operand frame)
                      throws JASVisitorException
JASVisitorException

visitGOTO_FRAME

public void visitGOTO_FRAME(GotoFrameAction action)
                     throws JASVisitorException
JASVisitorException

visitGREATER_THAN

public void visitGREATER_THAN(Action action,
                              Operand right,
                              Operand left,
                              Operand result)
                       throws JASVisitorException
JASVisitorException

visitIF_JUMP

public void visitIF_JUMP(IfJumpAction action,
                         Operand condition)
                  throws JASVisitorException
JASVisitorException

visitINCREMENT

public void visitINCREMENT(Action action,
                           Operand val,
                           Operand result)
                    throws JASVisitorException
JASVisitorException

visitINSTANCE_OF

public void visitINSTANCE_OF(Action action,
                             Operand ctor,
                             Operand obj,
                             Operand result)
                      throws JASVisitorException
JASVisitorException

visitJUMP

public void visitJUMP(JumpAction action)
               throws JASVisitorException
JASVisitorException

visitLESS_THAN

public void visitLESS_THAN(Action action,
                           Operand left,
                           Operand right,
                           Operand result)
                    throws JASVisitorException
JASVisitorException

visitLOOKUP

public void visitLOOKUP(LookupAction action,
                        Operand result)
                 throws JASVisitorException
JASVisitorException

visitLOOKUP_TABLE

public void visitLOOKUP_TABLE(LookupTableAction action)
                       throws JASVisitorException
JASVisitorException

visitMODULO

public void visitMODULO(Action action,
                        Operand left,
                        Operand right,
                        Operand result)
                 throws JASVisitorException
JASVisitorException

visitMULTIPLY

public void visitMULTIPLY(Action action,
                          Operand left,
                          Operand right,
                          Operand result)
                   throws JASVisitorException
JASVisitorException

visitNEW_OBJECT

public void visitNEW_OBJECT(Action action,
                            Operand name,
                            java.util.List args,
                            Operand result)
                     throws JASVisitorException
JASVisitorException

visitNEXT_FRAME

public void visitNEXT_FRAME(Action action)
                     throws JASVisitorException
JASVisitorException

visitNOT

public void visitNOT(Action action,
                     Operand val,
                     Operand result)
              throws JASVisitorException
JASVisitorException

visitOR

public void visitOR(Action action,
                    Operand left,
                    Operand right,
                    Operand result)
             throws JASVisitorException
JASVisitorException

visitPLAY

public void visitPLAY(Action action)
               throws JASVisitorException
JASVisitorException

visitPOP

public void visitPOP(Action action)
              throws JASVisitorException
JASVisitorException

visitPREV_FRAME

public void visitPREV_FRAME(Action action)
                     throws JASVisitorException
JASVisitorException

visitPUSH

public void visitPUSH(PushAction action,
                      java.util.List list)
               throws JASVisitorException
JASVisitorException

visitRANDOM_NUMBER

public void visitRANDOM_NUMBER(Action action,
                               Operand max,
                               Operand result)
                        throws JASVisitorException
JASVisitorException

visitREMOVE_SPRITE

public void visitREMOVE_SPRITE(Action action,
                               Operand target)
                        throws JASVisitorException
JASVisitorException

visitRETURN_VALUE

public void visitRETURN_VALUE(Action action,
                              Operand returnVal)
                       throws JASVisitorException
JASVisitorException

visitSET_MEMBER

public void visitSET_MEMBER(Action action,
                            Operand value,
                            Operand name,
                            Operand object)
                     throws JASVisitorException
JASVisitorException

visitSET_PROPERTY

public void visitSET_PROPERTY(Action action,
                              Operand value,
                              Operand index,
                              Operand target)
                       throws JASVisitorException
JASVisitorException

visitSET_TARGET_2

public void visitSET_TARGET_2(Action action,
                              Operand target)
                       throws JASVisitorException
JASVisitorException

visitSET_TARGET

public void visitSET_TARGET(SetTargetAction action)
                     throws JASVisitorException
JASVisitorException

visitSET_VARIABLE

public void visitSET_VARIABLE(Action action,
                              Operand name,
                              Operand value)
                       throws JASVisitorException
JASVisitorException

visitSHIFT_LEFT

public void visitSHIFT_LEFT(Action action,
                            Operand count,
                            Operand value,
                            Operand result)
                     throws JASVisitorException
JASVisitorException

visitSHIFT_RIGHT

public void visitSHIFT_RIGHT(Action action,
                             Operand count,
                             Operand value,
                             Operand result)
                      throws JASVisitorException
JASVisitorException

visitSHIFT_RIGHT_UNSIGNED

public void visitSHIFT_RIGHT_UNSIGNED(Action action,
                                      Operand count,
                                      Operand value,
                                      Operand result)
                               throws JASVisitorException
JASVisitorException

visitSTART_DRAG

public void visitSTART_DRAG(Action action,
                            Operand target,
                            Operand lookCentre,
                            StackListener.DragBox constraintBox)
                     throws JASVisitorException
Parameters:
constraintBox - null, if unconstrained
JASVisitorException

visitSTART_FUNCTION

public void visitSTART_FUNCTION(StartFunctionAction action,
                                Operand fn)
                         throws JASVisitorException
Parameters:
fn - will only be non-null for anonymous functions
JASVisitorException

visitSTOP

public void visitSTOP(Action action)
               throws JASVisitorException
JASVisitorException

visitSTOP_SOUNDS

public void visitSTOP_SOUNDS(Action action)
                      throws JASVisitorException
JASVisitorException

visitSTORE_IN_REGISTER

public void visitSTORE_IN_REGISTER(StoreInRegisterAction action,
                                   Operand val)
                            throws JASVisitorException
JASVisitorException

visitSTRICT_EQUALS

public void visitSTRICT_EQUALS(Action action,
                               Operand left,
                               Operand right,
                               Operand result)
                        throws JASVisitorException
JASVisitorException

visitSTRING_EQUALS

public void visitSTRING_EQUALS(Action action,
                               Operand left,
                               Operand right,
                               Operand result)
                        throws JASVisitorException
JASVisitorException

visitSTRING_GREATER_THAN

public void visitSTRING_GREATER_THAN(Action action,
                                     Operand left,
                                     Operand right,
                                     Operand result)
                              throws JASVisitorException
JASVisitorException

visitSTRING_LENGTH

public void visitSTRING_LENGTH(Action action,
                               Operand val,
                               Operand result)
                        throws JASVisitorException
JASVisitorException

visitSTRING_LENGTH_MB

public void visitSTRING_LENGTH_MB(Action action,
                                  Operand val,
                                  Operand result)
                           throws JASVisitorException
JASVisitorException

visitSTRING_LESS_THAN

public void visitSTRING_LESS_THAN(Action action,
                                  Operand left,
                                  Operand right,
                                  Operand result)
                           throws JASVisitorException
JASVisitorException

visitSUBSTRING

public void visitSUBSTRING(Action action,
                           Operand count,
                           Operand index,
                           Operand val,
                           Operand result)
                    throws JASVisitorException
JASVisitorException

visitSUBTRACT

public void visitSUBTRACT(Action action,
                          Operand left,
                          Operand right,
                          Operand result)
                   throws JASVisitorException
JASVisitorException

visitSWAP

public void visitSWAP(Action action,
                      Operand first,
                      Operand second)
               throws JASVisitorException
JASVisitorException

visitTOGGLE_QUALITY

public void visitTOGGLE_QUALITY(Action action)
                         throws JASVisitorException
JASVisitorException

visitTO_INTEGER

public void visitTO_INTEGER(Action action,
                            Operand val,
                            Operand result)
                     throws JASVisitorException
JASVisitorException

visitTRACE

public void visitTRACE(Action action,
                       Operand val)
                throws JASVisitorException
JASVisitorException

visitTYPED_ADD

public void visitTYPED_ADD(Action action,
                           Operand left,
                           Operand right,
                           Operand result)
                    throws JASVisitorException
JASVisitorException

visitTYPED_EQUALS

public void visitTYPED_EQUALS(Action action,
                              Operand left,
                              Operand right,
                              Operand result)
                       throws JASVisitorException
JASVisitorException

visitTYPED_LESS_THAN

public void visitTYPED_LESS_THAN(Action action,
                                 Operand left,
                                 Operand right,
                                 Operand result)
                          throws JASVisitorException
JASVisitorException

visitTYPE_OF

public void visitTYPE_OF(Action action,
                         Operand val,
                         Operand result)
                  throws JASVisitorException
JASVisitorException