public string SafeMethodName(string name)
 {
     if (name is null)
     {
         throw new ArgumentNullException(nameof(name));
     }
     if (name.StartsWith("op_"))
     {
         if (SpecialMethodNames.ContainsKey(name))
         {
             SpecialMethodNames[name]++;
         }
         else
         {
             SpecialMethodNames.Add(name, 1);
         }
     }
     if (!string.IsNullOrEmpty(name))
     {
         while (IllegalNames?.Contains(name) is true || IllegalMethodNames?.Contains(name) is true)
         {
             name += "_";
         }
     }
     return(name);
 }
 public string?SafeName(string?name)
 {
     if (name is null)
     {
         return(null);
     }
     while (IllegalNames?.Contains(name) is true)
     {
         name = "_" + name;
     }
     return(name);
 }