Interface IBslStackFrame

  • All Superinterfaces:
    org.eclipse.core.runtime.IAdaptable, org.eclipse.debug.core.model.IDebugElement, IRuntimeDebugElement, org.eclipse.debug.core.model.IStackFrame, org.eclipse.debug.core.model.IStep, org.eclipse.debug.core.model.ISuspendResume, org.eclipse.debug.core.model.ITerminate

    public interface IBslStackFrame
    extends org.eclipse.debug.core.model.IStackFrame, IRuntimeDebugElement
    Represents BSL module stack frame in a 1C:Enterprise Runtime debug process.
    Restriction:
    This interface is not intended to be extended by clients.
    Restriction:
    This interface is not intended to be implemented by clients.
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      int getLevel()
      Returns stack frame level.
      Module getModule()
      Returns the BSL module of stack frame source.
      IBslVariable[] getModuleProperties()
      Returns the visible BSL module properties for this stack frame.
      IBslVariable[] getModuleVariables()
      Returns the visible BSL module variables for this stack frame.
      BslModuleReference getReference()
      Returns associated BSL module reference.
      String getSignature()
      Returns the 1C:Enterprise Runtime debug signature for the method this BSL stack frame is associated with.
      org.eclipse.emf.common.util.URI getSource()
      Returns URI of stack frame source (BSL module URI).
      IRuntimeDebugTargetThread getThread()
      Returns 1C:Enterprise Runtime debug target thread, that contains this stack frame.
      IBslVariable[] getVariables()
      Returns the visible BSL variables in this stack frame.
      boolean hasModuleProperties()
      Returns whether BSL module, associated with this stack frame has module properties.
      boolean hasModuleVariables()
      Returns whether BSL module, associated with this stack frame has module variables.
      boolean isEnabled()
      Returns whether evaluations for this stack frame is enabled.
      boolean isFantom()
      Returns whether evaluations for this stack frame is fantom - corresponding to the async method was execute above this stack frame.
      IEvaluationChain reevaluateVariables()
      Computes and returns the evaluation chain to evaluate for this stack frame update.
      • Methods inherited from interface org.eclipse.core.runtime.IAdaptable

        getAdapter
      • Methods inherited from interface org.eclipse.debug.core.model.IDebugElement

        getLaunch, getModelIdentifier
      • Methods inherited from interface org.eclipse.debug.core.model.IStackFrame

        getCharEnd, getCharStart, getLineNumber, getName, getRegisterGroups, hasRegisterGroups, hasVariables
      • Methods inherited from interface org.eclipse.debug.core.model.IStep

        canStepInto, canStepOver, canStepReturn, isStepping, stepInto, stepOver, stepReturn
      • Methods inherited from interface org.eclipse.debug.core.model.ISuspendResume

        canResume, canSuspend, isSuspended, resume, suspend
      • Methods inherited from interface org.eclipse.debug.core.model.ITerminate

        canTerminate, isTerminated, terminate
    • Method Detail

      • getSignature

        String getSignature()
        Returns the 1C:Enterprise Runtime debug signature for the method this BSL stack frame is associated with.
        Returns:
        the 1C:Enterprise Runtime debug signature for the method this BSL stack frame is associated with, never null
      • getThread

        IRuntimeDebugTargetThread getThread()
        Returns 1C:Enterprise Runtime debug target thread, that contains this stack frame.
        Specified by:
        getThread in interface org.eclipse.debug.core.model.IStackFrame
        Returns:
        1C:Enterprise Runtime debug target thread, that contains this stack, never null
      • getVariables

        IBslVariable[] getVariables()
                             throws org.eclipse.debug.core.DebugException
        Returns the visible BSL variables in this stack frame. An empty collection is returned if there are no visible variables.
        Specified by:
        getVariables in interface org.eclipse.debug.core.model.IStackFrame
        Returns:
        a collection of visible variables, never null, can be empty
        Throws:
        org.eclipse.debug.core.DebugException - if request fails
      • hasModuleVariables

        boolean hasModuleVariables()
                            throws org.eclipse.debug.core.DebugException
        Returns whether BSL module, associated with this stack frame has module variables.
        Returns:
        whether BSL module, associated with this stack frame has module variables
        Throws:
        org.eclipse.debug.core.DebugException - if request fails
      • getModuleVariables

        IBslVariable[] getModuleVariables()
                                   throws org.eclipse.debug.core.DebugException
        Returns the visible BSL module variables for this stack frame. An empty collection is returned if there are no visible module variables.
        Returns:
        a collection of visible module variables, never null
        Throws:
        org.eclipse.debug.core.DebugException - if request fails
      • hasModuleProperties

        boolean hasModuleProperties()
                             throws org.eclipse.debug.core.DebugException
        Returns whether BSL module, associated with this stack frame has module properties.
        Returns:
        whether BSL module, associated with this stack frame has module properties
        Throws:
        org.eclipse.debug.core.DebugException - if request fails
      • getModuleProperties

        IBslVariable[] getModuleProperties()
                                    throws org.eclipse.debug.core.DebugException
        Returns the visible BSL module properties for this stack frame. An empty collection is returned if there are no visible module properties.
        Returns:
        collection of visible module properties, never null
        Throws:
        org.eclipse.debug.core.DebugException - if request fails
      • isEnabled

        boolean isEnabled()
        Returns whether evaluations for this stack frame is enabled.

        1C:Enterprise Runtime supports 2 types of stack frame:

        • enabled - when client can evaluate expressions and variables
        • disabled - when client cannot evaluate; this happens on client stack frames when client have client-to-server call or if stack frame is fantom
        Returns:
        returns true if this stack frame is enabled, false otherwise
      • getLevel

        int getLevel()
        Returns stack frame level. Levels are 0-based and represents position of stack frame in entire stack.
        Returns:
        level of this stack frame, is non-negative
      • getSource

        org.eclipse.emf.common.util.URI getSource()
        Returns URI of stack frame source (BSL module URI). Can return null, if debug process have no access to source.
        Returns:
        URI of stack frame source, can be null if debug process have no access to source
      • getModule

        Module getModule()
        Returns the BSL module of stack frame source. Can return null, if debug process have no access to source.
        Returns:
        the BSL module associated with this BSL stack frame, can be null if debug process have no access to source
      • getReference

        BslModuleReference getReference()
        Returns associated BSL module reference. Can return null, if debug process have no access to BSL module, associated with this stack frame.
        Returns:
        BSL module reference, associated with this stack frame, or null if debug process have no access to BSL module, associated with this stack frame
        See Also:
        BslModuleReference
      • reevaluateVariables

        IEvaluationChain reevaluateVariables()
        Computes and returns the evaluation chain to evaluate for this stack frame update. Evaluation chain includes already evaluated children evaluation requests: all evaluated module variables, properties and local variables.

        Note, that an evaluation chain is a description of evaluation requests, and it needs to be exetuted by the IEvaluationEngine for actual value update.

        Returns:
        the evaluation chain to evaluate for this stack frame update, never null
        See Also:
        IEvaluationChain
      • isFantom

        boolean isFantom()
        Returns whether evaluations for this stack frame is fantom - corresponding to the async method was execute above this stack frame.
        Returns:
        returns true if this stack frame is fantom, false otherwise