Record Class ChainStep
java.lang.Object
java.lang.Record
org.ek9lang.compiler.phase5.lockanalysis.ChainStep
- Record Components:
kind- step classification — seeStepKind.stepLocation- source token where this step occurs — navigation target for "jump to this step in source."contextFunction- the function executing at this step (the "from" for CALL).stepTarget- the thing being acted on — called function for CALL, lock origin for ENTER, handler function for CROSS_THREAD_BOUNDARY. May benullfor steps that don't have a separable target.contextDescription- pre-rendered prose for one-line display, e.g."calls AddressSet.includeAddress via SAME_THREAD edge".
public record ChainStep(StepKind kind, IToken stepLocation, ISymbol contextFunction, ISymbol stepTarget, String contextDescription)
extends Record
Single step in a
DeadlockChain's rationale trace.
Each step carries two navigable references: contextFunction is "where you are"
at this step, and stepTarget is "where you're going" or "what you're touching"
— the called function for a StepKind.CALL step, the lock origin for an
StepKind.ENTER step, etc.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionReturns the value of thecontextDescriptionrecord component.Returns the value of thecontextFunctionrecord component.final booleanIndicates whether some other object is "equal to" this one.final inthashCode()Returns a hash code value for this object.kind()Returns the value of thekindrecord component.Returns the value of thestepLocationrecord component.Returns the value of thestepTargetrecord component.final StringtoString()Returns a string representation of this record class.
-
Constructor Details
-
ChainStep
public ChainStep(StepKind kind, IToken stepLocation, ISymbol contextFunction, ISymbol stepTarget, String contextDescription) Creates an instance of aChainSteprecord class.- Parameters:
kind- the value for thekindrecord componentstepLocation- the value for thestepLocationrecord componentcontextFunction- the value for thecontextFunctionrecord componentstepTarget- the value for thestepTargetrecord componentcontextDescription- the value for thecontextDescriptionrecord component
-
-
Method Details
-
toString
-
hashCode
-
equals
Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. All components in this record class are compared withObjects::equals(Object,Object). -
kind
-
stepLocation
Returns the value of thestepLocationrecord component.- Returns:
- the value of the
stepLocationrecord component
-
contextFunction
Returns the value of thecontextFunctionrecord component.- Returns:
- the value of the
contextFunctionrecord component
-
stepTarget
Returns the value of thestepTargetrecord component.- Returns:
- the value of the
stepTargetrecord component
-
contextDescription
Returns the value of thecontextDescriptionrecord component.- Returns:
- the value of the
contextDescriptionrecord component
-