internal IEnumerable <StatementSyntax> Instrument(StatementSyntax syntaxNode, INodeModel nodeModel, CompilationOptions options) { // TODO: RecordValue codegen counter instead of counting them after the fact if ((options & CompilationOptions.Tracing) != 0) { int recordedValuesCount = syntaxNode.GetAnnotatedNodes(Annotations.RecordValueKind).Count(); yield return(InstrumentForInEditorDebugging.BuildLastCallFrameExpression(recordedValuesCount, nodeModel.Guid, GetRecorderName(), nodeModel is INodeModelProgress && nodeModel is CoroutineNodeModel coroutineNodeModel ? MemberAccessExpression( SyntaxKind.SimpleMemberAccessExpression, IdentifierName(CoroutineParameterName), IdentifierName(coroutineNodeModel.VariableName)) : null)); } yield return(syntaxNode); }