public void AddVariableInterruptedByLifetime(VariableReference variableReference, Lifetime lifetime) { GetLifetimeVariableInfo(lifetime).InterruptedVariables.Add(variableReference); }
public void MarkVariableConsumed(VariableReference variableReference) { _variableStatuses[variableReference] = VariableStatus.Consumed; }
public bool IsLive(VariableReference variableReference) { VariableStatus existingStatus; return(_variableStatuses.TryGetValue(variableReference, out existingStatus) && existingStatus.Kind == VariableStatusKind.Live); }
public LiveVariable(VariableReference variable, Terminal terminal) { Variable = variable; Terminal = terminal; }
internal void UnifyTypeVariableInto(VariableReference intoVariable, ITypeUnificationResult unificationResult) { _variableSet.TypeVariableSet.Unify(TypeVariableReference, intoVariable.TypeVariableReference, unificationResult); }
public bool IsVariableInterrupted(VariableReference variableReference) { VariableStatus existingStatus; return(_variableStatuses.TryGetValue(variableReference, out existingStatus) && existingStatus.Kind == VariableStatusKind.Interrupted); }
internal bool ReferenceSameVariable(VariableReference x, VariableReference y) => GetVariableForVariableReference(x) == GetVariableForVariableReference(y);
internal int GetDiagramId(VariableReference variableReference) => GetVariableForVariableReference(variableReference).DiagramId;
internal void SetName(VariableReference variableReference, string name) => GetVariableForVariableReference(variableReference).Name = name;
internal string GetDebuggerDisplay(VariableReference variableReference) { Variable variable = GetVariableForVariableReference(variableReference); return(variable.ToString()); }
internal string GetName(VariableReference variableReference) => GetVariableForVariableReference(variableReference).Name;
internal int GetId(VariableReference variableReference) => GetVariableForVariableReference(variableReference).Id;
internal bool GetMutable(VariableReference variableReference) => GetVariableForVariableReference(variableReference).Mutable;
public void MarkVariableInterrupted(VariableReference variableReference) { _variableStatuses[variableReference] = VariableStatus.Interrupted; }
internal int GetReferenceHashCode(VariableReference x) => GetVariableForVariableReference(x).GetHashCode();
public bool ReferencesSame(VariableReference other) { return(_variableSet.ReferenceSameVariable(this, other)); }
private Variable GetVariableForVariableReference(VariableReference variableReference) { return(_variableReferences[variableReference.ReferenceIndex]); }