Class TransitionManager

    • Method Detail

      • getTransferInfo

        public ITransitionManager.ITTransitionInfo getTransferInfo​(org.intocps.maestro.ast.node.ATransferStm node,
                                                                   org.intocps.maestro.interpreter.Context ctxt,
                                                                   String transferToName)
                                                            throws org.intocps.maestro.ast.analysis.AnalysisException
        Description copied from interface: ITransitionManager
        Check if the manager has a new spec available that is type compatible for transfer
        Specified by:
        getTransferInfo in interface ITransitionManager
        Parameters:
        node - the transfer node used for location
        ctxt - the current context which should be used to check if available identifiers
        transferToName - name of the spec to transfer to
        Returns:
        a transfer object or null if no transfer object is found or matches the desired name
        Throws:
        org.intocps.maestro.ast.analysis.AnalysisException
      • transfer

        public void transfer​(Interpreter interpreter,
                             ITransitionManager.ITTransitionInfo info)
                      throws org.intocps.maestro.ast.analysis.AnalysisException
        Description copied from interface: ITransitionManager
        Perform the transfer - pausing the current interpretation flow and restarting a new interpreter reusing the context
        Specified by:
        transfer in interface ITransitionManager
        Parameters:
        interpreter - to use for the transfer
        info - into to transfer to
        Throws:
        org.intocps.maestro.ast.analysis.AnalysisException