public static bool TryParseRuntimeId()

in JetBrains.HabitatDetector/src/HabitatInfo.Parse.cs [53:84]


    public static bool TryParseRuntimeId(string str, out JetPlatform platform, out JetArchitecture architecture, out JetLinuxLibC? linuxLibC)
    {
      var parts = str.Split('-');
      switch (parts.Length)
      {
      case 2:
        if (TryParsePlatform(parts[0], out platform) &&
            TryParseArchitecture(parts[1], out architecture))
        {
          linuxLibC = platform == JetPlatform.Linux ? JetLinuxLibC.Glibc : null;
          return true;
        }

        break;
      case 3:
        if (TryParsePlatform(parts[0], out platform) &&
            platform == JetPlatform.Linux &&
            TryParseLinuxLibC(parts[1], out var linuxLibC1, false) &&
            TryParseArchitecture(parts[2], out architecture))
        {
          linuxLibC = linuxLibC1;
          return true;
        }

        break;
      }

      platform = default;
      architecture = default;
      linuxLibC = null;
      return false;
    }