Forge
csharpdeeb25a2
1namespace CascadeIDE.Models;
2
3/// <summary>
4/// Зерно subgraph control-flow в PFD/SM (<c>[code_navigation_map].control_flow_grain</c>).
5/// <see cref="Intent"/> соответствует ADR 0053 (смысл метода без микро-CFG).
6/// </summary>
7public static class CodeNavigationMapControlFlowGrainKind
8{
9 public const string Intent = "intent";
10
11 /// <summary>Пошаговый CFG по выражениям (старое поведение).</summary>
12 public const string Detailed = "detailed";
13
14 /// <summary>Нормализует TOML/override; неизвестные значения → <see cref="Intent"/>.</summary>
15 public static string Normalize(string? value)
16 {
17 var v = (value ?? "").Trim();
18 if (string.Equals(v, Detailed, StringComparison.OrdinalIgnoreCase))
19 return Detailed;
20 return Intent;
21 }
22
23 /// <summary>Удобство для роутинга билдера subgraph.</summary>
24 public static bool IsDetailed(string? normalized) =>
25 string.Equals(normalized, Detailed, StringComparison.Ordinal);
26
27 public static bool IsIntent(string? normalized) =>
28 string.Equals(normalized, Intent, StringComparison.Ordinal);
29}
30
View only · write via MCP/CIDE