private static AttributeSymbol Create(string name, string documentation, Func<AttributeSymbol, ParameterSymbol[]> createParameters = null) { var result = new AttributeSymbol(name, documentation); if (createParameters != null) foreach (var parameter in createParameters(result)) result.AddParameter(parameter); return result; } }