/// <summary> /// Adds a <see cref="LineSeparator"/> /// </summary> /// <param name="output">Output</param> /// <param name="position">Position of the line that gets a line separator</param> public static void AddLineSeparator(this IDecompilerOutput output, int position) => output.AddCustomData(PredefinedCustomDataIds.LineSeparator, new LineSeparator(position));
/// <summary> /// Adds a <see cref="CodeBracesRange"/> /// </summary> /// <param name="output">Output</param> /// <param name="start">Start span</param> /// <param name="end">End span</param> /// <param name="flags">Flags</param> public static void AddBracePair(this IDecompilerOutput output, TextSpan start, TextSpan end, CodeBracesRangeFlags flags) => output.AddCustomData(PredefinedCustomDataIds.CodeBracesRange, new CodeBracesRange(start, end, flags));
/// <summary> /// Adds a <see cref="CodeBracesRange"/> /// </summary> /// <param name="output">Output</param> /// <param name="range">Range</param> public static void AddCodeBracesRange(this IDecompilerOutput output, CodeBracesRange range) => output.AddCustomData(PredefinedCustomDataIds.CodeBracesRange, range);
/// <summary> /// Adds a <see cref="SpanReference"/> /// </summary> /// <param name="output">Output</param> /// <param name="reference">Reference</param> /// <param name="start">Start position</param> /// <param name="end">End position</param> /// <param name="id">Reference id or null, eg. <see cref="PredefinedSpanReferenceIds.HighlightRelatedKeywords"/></param> public static void AddSpanReference(this IDecompilerOutput output, object reference, int start, int end, string id) => output.AddCustomData(PredefinedCustomDataIds.SpanReference, new SpanReference(reference, TextSpan.FromBounds(start, end), id));
/// <summary> /// Adds a <see cref="SpanReference"/> /// </summary> /// <param name="output">Output</param> /// <param name="spanReference">Data</param> public static void AddSpanReference(this IDecompilerOutput output, SpanReference spanReference) => output.AddCustomData(PredefinedCustomDataIds.SpanReference, spanReference);
/// <summary> /// Adds debug info to the custom data collection, see also <see cref="IDecompilerOutput.UsesCustomData"/> /// </summary> /// <param name="output">Output</param> /// <param name="methodDebugInfo">Debug info</param> public static void AddDebugInfo(this IDecompilerOutput output, MethodDebugInfo methodDebugInfo) { if (methodDebugInfo == null) throw new ArgumentNullException(nameof(methodDebugInfo)); output.AddCustomData(PredefinedCustomDataIds.DebugInfo, methodDebugInfo); }