in tools/nuget2bazel/rules/StdlibCoreGenerator.cs [30:77]
private async Task GenerateBazelFile(string outpath, List<RefInfo> libs)
{
await using var f = new StreamWriter(outpath);
await f.WriteLineAsync("\"\"");
await f.WriteLineAsync();
await f.WriteLineAsync("load(\"@io_bazel_rules_dotnet//dotnet/private:rules/stdlib.bzl\", \"core_stdlib_internal\")");
await f.WriteLineAsync("load(\"@io_bazel_rules_dotnet//dotnet/private:rules/libraryset.bzl\", \"core_libraryset\")");
await f.WriteLineAsync();
await f.WriteLineAsync("# buildifier: disable=unnamed-macro");
await f.WriteLineAsync("def define_stdlib():");
await f.WriteLineAsync(" \"Declares stdlib\"");
await f.WriteLineAsync(" core_libraryset(");
await f.WriteLineAsync(" name = \"NETStandard.Library\",");
await f.WriteLineAsync(" deps = [");
await f.WriteLineAsync(" ],");
await f.WriteLineAsync(" )");
await f.WriteLineAsync(" core_libraryset(");
await f.WriteLineAsync(" name = \"Microsoft.AspNetCore.App\",");
await f.WriteLineAsync(" deps = [");
await f.WriteLineAsync(" ],");
await f.WriteLineAsync(" )");
await f.WriteLineAsync(" core_libraryset(");
await f.WriteLineAsync(" name = \"libraryset\",");
await f.WriteLineAsync(" deps = [");
foreach (var d in libs)
{
await f.WriteLineAsync($" \":{d.Name}\",");
}
await f.WriteLineAsync(" ],");
await f.WriteLineAsync(" )");
foreach (var d in libs)
{
await f.WriteLineAsync($" core_stdlib_internal(");
await f.WriteLineAsync($" name = \"{d.Name}\",");
await f.WriteLineAsync($" version = \"{d.Version}\",");
if (d.Ref != null)
await f.WriteLineAsync($" ref = \"{d.Ref}\",");
if (d.StdlibPath != null)
await f.WriteLineAsync($" stdlib_path = \"{d.StdlibPath}\",");
await f.WriteLineAsync($" deps = [");
foreach (var dep in d.Deps)
await f.WriteLineAsync($" {dep},");
await f.WriteLineAsync($" ],");
await f.WriteLineAsync($" )");
}
}