private void CheckVariableAvailable(string name, string nameOf, bool prefix) { if (Units.ContainsKey(name)) { throw new ArgumentException(prefix ? $"The name with prefix `{name}` is already used by another unit." : $"The name `{name}` is already used by another unit.", nameOf); } if (Builtins.ContainsKey(name)) { throw new ArgumentException(prefix ? $"The name with prefix `{name}` is already used a builtin variable or function." : $"The name `{name}` is already used a builtin variable or function.", nameOf); } }