Interface IBslValue
-
- All Superinterfaces:
org.eclipse.core.runtime.IAdaptable
,org.eclipse.debug.core.model.IDebugElement
,IRuntimeDebugElement
,org.eclipse.debug.core.model.IValue
- All Known Subinterfaces:
IBslArrayValue
,IBslEnumValue
,IBslIndexedValue
,IBslPrimitiveValue
public interface IBslValue extends org.eclipse.debug.core.model.IValue, IRuntimeDebugElement
Represents BSL module variable or expression value in a 1C:Enterprise Runtime debug process.IBslValue
is root of BSL debug values hierarchy and has more specific sublcasses.BSL values are evaluating asynchronously and in lazy mode. Clients may force evaluating by calling
evaluate()
, or actual value will be automatically evaluated, when debug platform will fetch value children (for example, when user will expand value owner node inVariables
view).Clients may use
IBslValueFactory
to create instances ofIBslValue
.- See Also:
IValue
,IBslValueFactory
,IBslValueStateChangeListener
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description void
evaluate()
Evaluates this BSL value through connected 1C:Enterprise Runtime debug server.String
getDetailString()
Returns a details string presentation of this BSL value.UUID
getParentUuid()
Returns the value parent variable or expression evaluation UUID.BslValuePath
getPath()
Returns the BSL value path.IBslStackFrame
getStackFrame()
Returns the associated stack frame, that actually holds this value parent variable or expression.BslValueType
getType()
Returns the value BSL value type.IBslVariable[]
getVariables()
boolean
hasVariables()
boolean
isEvaluated()
Returns whether the actual value of this BSL value is already fully evaluated.default boolean
isIndexedElementValue()
Returns whether the value is indexed element value.boolean
isPending()
Returns whether the result of this watch expression is pending.boolean
isUnreadable()
Returns whether this BSL value is unreadable.IEvaluationChain
reevaluate()
Computes and returns the evaluation chain to evaluate for this value update.-
Methods inherited from interface org.eclipse.debug.core.model.IDebugElement
getLaunch, getModelIdentifier
-
Methods inherited from interface com._1c.g5.v8.dt.debug.core.model.IRuntimeDebugElement
getDebugTarget
-
-
-
-
Method Detail
-
getVariables
IBslVariable[] getVariables() throws org.eclipse.debug.core.DebugException
- Specified by:
getVariables
in interfaceorg.eclipse.debug.core.model.IValue
- Throws:
org.eclipse.debug.core.DebugException
-
hasVariables
boolean hasVariables()
- Specified by:
hasVariables
in interfaceorg.eclipse.debug.core.model.IValue
-
getDetailString
String getDetailString() throws org.eclipse.debug.core.DebugException
Returns a details string presentation of this BSL value. Will be used in UI representation.- Returns:
- string presentation of value detail, never
null
- Throws:
org.eclipse.debug.core.DebugException
- if request fails
-
getParentUuid
UUID getParentUuid()
Returns the value parent variable or expression evaluation UUID.1C:Enterprise Runtime stores entire expression evaluation and client can access to child value nodes by the same UUID.
- Returns:
- the parent variable or expression UUID, never
null
-
getType
BslValueType getType()
Returns the value BSL value type.- Returns:
- the value BSL value type, never
null
- See Also:
BslValueType
-
getPath
BslValuePath getPath()
Returns the BSL value path. Can be used to create path to child nodes.- Returns:
- the value path, never
null
- See Also:
BslValuePath
-
getStackFrame
IBslStackFrame getStackFrame()
Returns the associated stack frame, that actually holds this value parent variable or expression.- Returns:
- the associated stack frame, never
null
-
isUnreadable
boolean isUnreadable()
Returns whether this BSL value is unreadable.1C:Enterprise Runtime debug model sometimes have Unreadable values, it means that there is no information in debug server about this value.
- Returns:
- whether this BSL value is unreadable
-
isPending
boolean isPending()
Returns whether the result of this watch expression is pending. An expression is pending if an evaluation has been requested, but the value has not yet been returned.- Returns:
- whether the result of this watch expression is pending
-
isEvaluated
boolean isEvaluated()
Returns whether the actual value of this BSL value is already fully evaluated.- Returns:
- whether the actual value of this BSL value is already fully evaluated
-
isIndexedElementValue
default boolean isIndexedElementValue()
Returns whether the value is indexed element value.- Returns:
- whether the value is indexed element value
-
evaluate
void evaluate() throws org.eclipse.debug.core.DebugException
Evaluates this BSL value through connected 1C:Enterprise Runtime debug server. TheIBslValue
fires a debug change event when the evaluation is complete.Note that implementation is intended to be asynchronous to avoid blocking the calling thread.
- Throws:
org.eclipse.debug.core.DebugException
- if request fails
-
reevaluate
IEvaluationChain reevaluate()
Computes and returns the evaluation chain to evaluate for this value update. Evaluation chain includes already evaluated children evaluation requests.Note, that an evaluation chain is a description of evaluation requests, and it needs to be executed by the
IEvaluationEngine
for actual value update.- Returns:
- the evaluation chain to evaluate for this value update, never
null
- See Also:
IEvaluationChain
-
-