1. ToolSearch
Input
{
"query": "select:mcp__sourcegraph__sg_keyword_search,mcp__sourcegraph__sg_read_file,mcp__sourcegraph__sg_list_files,mcp__sourcegraph__sg_nls_search",
"max_results": 4
}Output
{'matches': ['mcp__sourcegraph__sg_keyword_search', 'mcp__sourcegraph__sg_read_file', 'mcp__sourcegraph__sg_list_files', 'mcp__sourcegraph__sg_nls_search'], 'query': 'select:mcp__sourcegraph__sg_keyword_search,mcp__sourcegraph__sg_read_file,mcp__sourcegraph__sg_list_files,mcp__sourcegraph__sg_nls_search', 'total_deferred_tools': 33}2. mcp__sourcegraph__sg_keyword_search
Input
{
"query": "repo:^github.com/sg-evals/bazel--8.0.0$ StarlarkThread file:src/main/java"
}Output
{'content': '{"text":"# github.com/sg-evals/bazel--8.0.0 – src/main/java/net/starlark/java/eval/StarlarkThread.java\\n46: */\\n47: public final class StarlarkThread {\\n48: \\n49: \\n431: \\n432: private StarlarkThread(\\n433: Mutability mu,\\n434: \\n28: /**\\n29: * An StarlarkThread represents a Starlark thread.\\n30: *\\n31: \\n\\n# github.com/sg-evals/bazel--8.0.0 – src/main/java/com/google/devtools/build/lib/analysis/RuleContext.java\\n185: */\\n186: private final StarlarkThread starlarkThread;\\n187: \\n188: \\n977: \\n978: private StarlarkThread createStarlarkThread(Mutability mutability) {\\n979: AnalysisEnvironment env = getAnalysisEnvironment();\\n980: StarlarkThread thread =\\n981: StarlarkThread.create(\\n982: mutability, env.getStarlarkSemantics(), getLabel().toString(), getSymbolGenerator());\\n983: \\n987: \\n988: public StarlarkThread getStarlarkThread() {\\n989: return starlarkThread;\\n990: }\\n991: \\n\\n# github.com/sg-evals/bazel--8.0.0 – src/main/java/com/google/devtools/build/lib/profiler/memory/AllocationTracker.java\\n51: \\n52: // A mapping from Java thread to StarlarkThread.\\n53: // Used to effect a hidden StarlarkThread parameter to sampleAllocation.\\n54: // TODO(adonovan): opt: merge the three different ThreadLocals in use here.\\n55: private final ThreadLocal<StarlarkThread> starlarkThread = new ThreadLocal<>();\\n56: \\n57: \\n43: import net.starlark.java.eval.StarlarkCallable;\\n44: import net.starlark.java.eval.StarlarkThread;\\n45: import net.starlark.java.syntax.Location;\\n46: \\n57: @Override\\n58: public void onPushFirst(StarlarkThread thread) {\\n59: starlarkThread.set(thread);\\n60: }\\n61: \\n\\n# github.com/sg-evals/bazel--8.0.0 – src/main/java/com/google/devtools/build/lib/cmdline/StarlarkThreadContext.java\\n34: */\\n35: public abstract class StarlarkThreadContext {\\n36: // TODO: decide the extent to which we should enforce that such a context object is available\\n37: \\n60: */\\n61: protected StarlarkThreadContext(\\n62: @Nullable InterruptibleSupplier<RepositoryMapping> mainRepoMappingSupplier) {\\n63: \\n18: import javax.annotation.Nullable;\\n19: import net.starlark.java.eval.StarlarkThread;\\n20: \\n21: \\n\\n# github.com/sg-evals/bazel--8.0.0 – src/main/java/net/starlark/java/eval/CpuProfiler.java\\n122: @Nullable\\n123: static StarlarkThread setStarlarkThread(StarlarkThread thread) {\\n124: if (thread == null) {\\n125: \\n59: // Reading from the other end of the pipe is a Java thread, the router.\\n60: // Its job is to map each OS tid to a StarlarkThread, if the\\n61: // thread is currently executing Starlark code, and increment\\n62: // a volatile counter in that StarlarkThread. If the thread is\\n63: // not executing Starlark code, the router discards the event.\\n64: \\n64: // When a Starlark thread enters or leaves a function during profiling,\\n65: // it updates the StarlarkThread-to-OS-thread mapping consulted by the\\n66: // router.\\n67: \\n\\n# github.com/sg-evals/bazel--8.0.0 – src/main/java/net/starlark/java/annot/StarlarkMethod.java\\n180: */\\n181: boolean useStarlarkThread() default false;\\n182: \\n183: \\n50: * {@code extraKeywords};\\n51: * <li>a {@code StarlarkThread}, if {@code useStarlarkThread};\\n52: * <li>a {@code StarlarkSemantics}, if {@code useStarlarkSemantics}.\\n53: \\n174: /**\\n175: * If true, the StarlarkThread will be passed as an argument of the annotated function. (Thus, the\\n176: * annotated method signature must contain StarlarkThread as a parameter. See the interface-level\\n177: * javadoc for details.)\\n178: \\n\\n# github.com/sg-evals/bazel--8.0.0 – src/main/java/net/starlark/java/eval/MethodDescriptor.java\\n256: \\n257: /** @see StarlarkMethod#useStarlarkThread() */\\n258: boolean isUseStarlarkThread() {\\n259: return useStarlarkThread;\\n260: }\\n261: \\n48: private final boolea...3. mcp__sourcegraph__sg_keyword_search
Input
{
"query": "repo:^github.com/sg-evals/bazel--8.0.0$ PackageFactory file:src/main/java"
}Output
{'content': '{"text":"# github.com/sg-evals/bazel--8.0.0 – src/main/java/com/google/devtools/build/lib/packages/PackageFactory.java\\n79: */\\n80: public final class PackageFactory {\\n81: private static final GoogleLogger logger = GoogleLogger.forEnclosingClass();\\n82: \\n143: // so WorkspaceFactory can add an extra top-level builtin.\\n144: public PackageFactory(\\n145: RuleClassProvider ruleClassProvider,\\n146: \\n76: *\\n77: * <p>A PackageFactory is a heavy-weight object; create them sparingly. Typically only one is needed\\n78: * per client application.\\n79: \\n\\n# github.com/sg-evals/bazel--8.0.0 – src/main/java/com/google/devtools/build/lib/runtime/BlazeRuntime.java\\n167: \\n168: private final PackageFactory packageFactory;\\n169: private final ConfiguredRuleClassProvider ruleClassProvider;\\n170: \\n546: /** Returns the package factory. */\\n547: public PackageFactory getPackageFactory() {\\n548: return packageFactory;\\n549: }\\n550: \\n58: import com.google.devtools.build.lib.packages.Package.Builder.PackageSettings;\\n59: import com.google.devtools.build.lib.packages.PackageFactory;\\n60: import com.google.devtools.build.lib.packages.PackageLoadingListener;\\n61: \\n\\n# github.com/sg-evals/bazel--8.0.0 – src/main/java/com/google/devtools/build/lib/skyframe/PackageFunction.java\\n105: \\n106: protected final PackageFactory packageFactory;\\n107: protected final CachingPackageLocator packageLocator;\\n108: \\n1304: public static final class Builder {\\n1305: @Nullable private PackageFactory packageFactory;\\n1306: @Nullable private CachingPackageLocator pkgLocator;\\n1307: \\n1319: @CanIgnoreReturnValue\\n1320: public Builder setPackageFactory(PackageFactory packageFactory) {\\n1321: this.packageFactory = packageFactory;\\n1322: return this;\\n1323: \\n\\n# github.com/sg-evals/bazel--8.0.0 – src/main/java/com/google/devtools/build/lib/skyframe/WorkspaceFileFunction.java\\n80: \\n81: private final PackageFactory packageFactory;\\n82: private final BlazeDirectories directories;\\n83: \\n38: import com.google.devtools.build.lib.packages.Package;\\n39: import com.google.devtools.build.lib.packages.PackageFactory;\\n40: import com.google.devtools.build.lib.packages.RuleClassProvider;\\n41: \\n88: RuleClassProvider ruleClassProvider,\\n89: PackageFactory packageFactory,\\n90: BlazeDirectories directories,\\n91: \\n\\n# github.com/sg-evals/bazel--8.0.0 – src/main/java/com/google/devtools/build/lib/skyframe/packages/PackageFactoryBuilderWithSkyframeForTesting.java\\n27: */\\n28: public abstract class PackageFactoryBuilderWithSkyframeForTesting\\n29: extends PackageFactory.BuilderForTesting {\\n30: protected ImmutableMap<SkyFunctionName, SkyFunction> extraSkyFunctions = ImmutableMap.of();\\n31: \\n17: import com.google.common.collect.ImmutableMap;\\n18: import com.google.devtools.build.lib.packages.PackageFactory;\\n19: import com.google.devtools.build.lib.skyframe.PrecomputedValue;\\n20: \\n24: /**\\n25: * A {@link PackageFactory.BuilderForTesting} that also allows specification of some skyframe\\n26: * details.\\n27: \\n\\n# github.com/sg-evals/bazel--8.0.0 – src/main/java/com/google/devtools/build/lib/packages/Type.java\\n133: \\n134: // TODO(bazel-team): Check external calls (e.g. in PackageFactory), verify they always want\\n135: // this over selectableConvert.\\n136: \\n\\n# github.com/sg-evals/bazel--8.0.0 – src/main/java/com/google/devtools/build/lib/packages/Package.java\\n1055: /**\\n1056: * A builder for {@link Package} objects. Only intended to be used by {@link PackageFactory} and\\n1057: * {@link com.google.devtools.build.lib.skyframe.PackageFunction}.\\n1058: \\n\\n# github.com/sg-evals/bazel--8.0.0 – src/main/java/com/google/devtools/build/lib/packages/GlobCache.java\\n252: *\\n253: * <p>Called by PackageFactory via Package.\\n254: */\\n255: \\n\\n# github.com/sg-evals/bazel--8.0.0 – src/mai...4. mcp__sourcegraph__sg_keyword_search
Input
{
"query": "repo:^github.com/sg-evals/bazel--8.0.0$ BzlLoadFunction file:src/main/java"
}Output
{'content': '{"text":"# github.com/sg-evals/bazel--8.0.0 – src/main/java/com/google/devtools/build/lib/skyframe/BzlLoadFunction.java\\n107: */\\n108: public class BzlLoadFunction implements SkyFunction {\\n109: \\n110: \\n128: \\n129: private BzlLoadFunction(\\n130: RuleClassProvider ruleClassProvider,\\n131: \\n1693: \\n1694: private static final class BzlLoadFunctionException extends SkyFunctionException {\\n1695: private BzlLoadFunctionException(BzlLoadFailedException cause) {\\n1696: super(cause, cause.getTransience());\\n1697: \\n\\n# github.com/sg-evals/bazel--8.0.0 – src/main/java/com/google/devtools/build/lib/skyframe/SkyframeExecutor.java\\n885: \\n886: protected SkyFunction newBzlLoadFunction(RuleClassProvider ruleClassProvider) {\\n887: return BzlLoadFunction.create(\\n888: ruleClassProvider, directories, getDigestFunction().getHashFunction(), bzlCompileCache);\\n889: \\n881: @Nullable\\n882: protected BzlLoadFunction getBzlLoadFunctionForInliningPackageAndWorkspaceNodes() {\\n883: return null;\\n884: \\n369: // Cache of parsed bzl files, for use when we\'re inlining BzlCompileFunction in\\n370: // BzlLoadFunction. See the comments in BzlLoadFunction for motivations and details.\\n371: private final Cache<BzlCompileValue.Key, BzlCompileValue> bzlCompileCache =\\n372: \\n\\n# github.com/sg-evals/bazel--8.0.0 – src/main/java/com/google/devtools/build/lib/skyframe/PackageFunction.java\\n112: // Not final only for testing.\\n113: @Nullable private BzlLoadFunction bzlLoadFunctionForInlining;\\n114: \\n115: \\n1308: private AtomicInteger numPackagesSuccessfullyLoaded = new AtomicInteger(0);\\n1309: @Nullable private BzlLoadFunction bzlLoadFunctionForInlining;\\n1310: @Nullable private PackageProgressReceiver packageProgress;\\n1311: \\n196: \\n197: public void setBzlLoadFunctionForInliningForTesting(BzlLoadFunction bzlLoadFunctionForInlining) {\\n198: this.bzlLoadFunctionForInlining = bzlLoadFunctionForInlining;\\n199: }\\n200: \\n\\n# github.com/sg-evals/bazel--8.0.0 – src/main/java/com/google/devtools/build/lib/skyframe/WorkspaceFileFunction.java\\n83: private final RuleClassProvider ruleClassProvider;\\n84: private final BzlLoadFunction bzlLoadFunctionForInlining;\\n85: private static final PackageIdentifier rootPackage = PackageIdentifier.createInMainRepo(\\"\\");\\n86: \\n90: BlazeDirectories directories,\\n91: BzlLoadFunction bzlLoadFunctionForInlining) {\\n92: this.packageFactory = packageFactory;\\n93: \\n94: this.ruleClassProvider = ruleClassProvider;\\n95: this.bzlLoadFunctionForInlining = bzlLoadFunctionForInlining;\\n96: }\\n97: \\n\\n# github.com/sg-evals/bazel--8.0.0 – src/main/java/net/starlark/java/eval/Eval.java\\n86: \\n87: // Hack for BzlLoadFunction\'s \\"export\\" semantics.\\n88: // We enable it only for statements outside any function (isToplevelFunction)\\n89: \\n\\n# github.com/sg-evals/bazel--8.0.0 – src/main/java/net/starlark/java/eval/StarlarkThread.java\\n450: * <p>This is a short-term hack to allow us to consolidate all StarlarkFile execution in one place\\n451: * even while BzlLoadFunction implements the old \\"export\\" behavior, in which rules, aspects and\\n452: * providers are \\"exported\\" as soon as they are assigned, not at the end of file execution.\\n453: \\n\\n# github.com/sg-evals/bazel--8.0.0 – src/main/java/com/google/devtools/build/lib/skyframe/BUILD\\n33: \\"BuildTopLevelAspectsDetailsFunction.java\\",\\n34: \\"BzlLoadFunction.java\\",\\n35: \\"BzlmodRepoRuleFunction.java\\",\\n36: \\n\\n# github.com/sg-evals/bazel--8.0.0 – src/main/java/com/google/devtools/build/lib/skyframe/BzlLoadValue.java\\n139: // The alternative is to use a separate key type just for .scl, but that complicates repo logic;\\n140: // see BzlLoadFunction#getRepositoryMapping.\\n141: final boolean isSclDialect() {\\n142: \\n332: * <p>This kind ...5. mcp__sourcegraph__sg_keyword_search
Input
{
"query": "repo:^github.com/sg-evals/bazel--8.0.0$ \"Package.Builder\" file:src/main/java"
}Output
{'content': '{"text":"# github.com/sg-evals/bazel--8.0.0 – src/main/java/com/google/devtools/build/lib/packages/WorkspaceGlobals.java\\n108: // Add to the package definition for later.\\n109: Package.Builder builder =\\n110: Package.Builder.fromOrFailAllowWorkspaceOnly(thread, \\"register_execution_platforms()\\");\\n111: List<String> patterns = Sequence.cast(platformLabels, String.class, \\"platform_labels\\");\\n112: \\n118: // Add to the package definition for later.\\n119: Package.Builder builder =\\n120: Package.Builder.fromOrFailAllowWorkspaceOnly(thread, \\"register_toolchains()\\");\\n121: List<String> patterns = Sequence.cast(toolchainLabels, String.class, \\"toolchain_labels\\");\\n122: \\n156: try {\\n157: Package.Builder builder = Package.Builder.fromOrFailAllowWorkspaceOnly(thread, \\"bind()\\");\\n158: RuleClass ruleClass = ruleClassMap.get(\\"bind\\");\\n159: \\n\\n# github.com/sg-evals/bazel--8.0.0 – src/main/java/com/google/devtools/build/lib/packages/PackageCallable.java\\n51: throws EvalException {\\n52: Package.Builder pkgBuilder = Package.Builder.fromOrFailAllowBuildOnly(thread, \\"package()\\");\\n53: if (pkgBuilder.isPackageFunctionUsed()) {\\n54: \\n76: protected void processParam(\\n77: String name, Object rawValue, Package.Builder pkgBuilder, PackageArgs.Builder pkgArgsBuilder)\\n78: throws EvalException {\\n79: \\n\\n# github.com/sg-evals/bazel--8.0.0 – src/main/java/com/google/devtools/build/lib/packages/BuildGlobals.java\\n117: throws EvalException {\\n118: Package.Builder pkgBuilder = Package.Builder.fromOrFailAllowBuildOnly(thread, \\"licenses()\\");\\n119: try {\\n120: \\n76: throws EvalException {\\n77: Package.Builder pkgBuilder =\\n78: Package.Builder.fromOrFailAllowBuildOnly(thread, \\"environment_group()\\");\\n79: List<Label> environments =\\n80: \\n\\n# github.com/sg-evals/bazel--8.0.0 – src/main/java/com/google/devtools/build/lib/packages/WorkspaceFactoryHelper.java\\n131: static void addBindRule(\\n132: Package.Builder pkg,\\n133: RuleClass bindRuleClass,\\n134: \\n45: public static Rule createAndAddRepositoryRule(\\n46: Package.Builder pkgBuilder,\\n47: RuleClass ruleClass,\\n48: \\n100: public static void addRepoMappings(\\n101: Package.Builder builder, Map<String, Object> kwargs, String externalRepoName)\\n102: throws EvalException, LabelSyntaxException {\\n103: \\n\\n# github.com/sg-evals/bazel--8.0.0 – src/main/java/com/google/devtools/build/lib/skyframe/PackageFunctionWithoutGlobDeps.java\\n65: private static final class LoadedPackageWithoutDeps extends LoadedPackage {\\n66: LoadedPackageWithoutDeps(Package.Builder builder, long loadTimeNanos) {\\n67: super(builder, loadTimeNanos);\\n68: \\n91: protected LoadedPackage newLoadedPackage(\\n92: Package.Builder packageBuilder, @Nullable Globber globber, long loadTimeNanos) {\\n93: return new LoadedPackageWithoutDeps(packageBuilder, loadTimeNanos);\\n94: \\n\\n# github.com/sg-evals/bazel--8.0.0 – src/main/java/com/google/devtools/build/lib/packages/RuleFactory.java\\n54: public static Rule createRule(\\n55: Package.Builder pkgBuilder,\\n56: RuleClass ruleClass,\\n57: \\n133: public static Rule createAndAddRule(\\n134: Package.Builder pkgBuilder,\\n135: RuleClass ruleClass,\\n136: \\n234: private static String getGeneratorName(\\n235: Package.Builder pkgBuilder,\\n236: BuildLangTypedAttributeValuesMap args,\\n237: \\n\\n# github.com/sg-evals/bazel--8.0.0 – src/main/java/com/google/devtools/build/lib/packages/WorkspaceFactory.java\\n70: public WorkspaceFactory(\\n71: Package.Builder builder,\\n72: RuleClassProvider ruleClassProvider,\\n73: \\n246: try {\\n247: Package.Builder builder =\\n248: Package.Builder.fromOrFailAllowWorkspaceOnly(thread, \\"repository rules\\");...6. mcp__sourcegraph__sg_keyword_search
Input
{
"query": "repo:^github.com/sg-evals/bazel--8.0.0$ \"class StarlarkRuleFunction\" file:src/main/java/com/google/devtools/build/lib/packages"
}Output
{'content': '{"text":"No results.\\n\\nNo results found."}', 'structuredContent': {'text': 'No results.\n\nNo results found.'}}7. mcp__sourcegraph__sg_keyword_search
Input
{
"query": "repo:^github.com/sg-evals/bazel--8.0.0$ \"class MacroFunction\" OR \"def rule\" OR \"macro builtin\" file:src/main/java/com/google/devtools/build/lib/packages"
}Output
{'content': '{"text":"No results.\\n\\nNo results found."}', 'structuredContent': {'text': 'No results.\n\nNo results found.'}}8. mcp__sourcegraph__sg_list_files
Input
{
"repo": "github.com/sg-evals/bazel--8.0.0",
"path": "src/main/java/com/google/devtools/build/lib/packages"
}Output
{'content': '{"text":"src/main/java/com/google/devtools/build/lib/packages/metrics/\\nsrc/main/java/com/google/devtools/build/lib/packages/producers/\\nsrc/main/java/com/google/devtools/build/lib/packages/semantics/\\nsrc/main/java/com/google/devtools/build/lib/packages/AbstractAttributeMapper.java\\nsrc/main/java/com/google/devtools/build/lib/packages/AdvertisedProviderSet.java\\nsrc/main/java/com/google/devtools/build/lib/packages/AggregatingAttributeMapper.java\\nsrc/main/java/com/google/devtools/build/lib/packages/AllowlistChecker.java\\nsrc/main/java/com/google/devtools/build/lib/packages/Aspect.java\\nsrc/main/java/com/google/devtools/build/lib/packages/AspectClass.java\\nsrc/main/java/com/google/devtools/build/lib/packages/AspectDefinition.java\\nsrc/main/java/com/google/devtools/build/lib/packages/AspectDescriptor.java\\nsrc/main/java/com/google/devtools/build/lib/packages/AspectParameters.java\\nsrc/main/java/com/google/devtools/build/lib/packages/AspectsList.java\\nsrc/main/java/com/google/devtools/build/lib/packages/Attribute.java\\nsrc/main/java/com/google/devtools/build/lib/packages/AttributeFormatter.java\\nsrc/main/java/com/google/devtools/build/lib/packages/AttributeMap.java\\nsrc/main/java/com/google/devtools/build/lib/packages/AttributeTransitionData.java\\nsrc/main/java/com/google/devtools/build/lib/packages/AttributeValueSource.java\\nsrc/main/java/com/google/devtools/build/lib/packages/AutoloadSymbols.java\\nsrc/main/java/com/google/devtools/build/lib/packages/BUILD\\nsrc/main/java/com/google/devtools/build/lib/packages/BazelStarlarkEnvironment.java\\nsrc/main/java/com/google/devtools/build/lib/packages/BuildFileContainsErrorsException.java\\nsrc/main/java/com/google/devtools/build/lib/packages/BuildFileName.java\\nsrc/main/java/com/google/devtools/build/lib/packages/BuildFileNotFoundException.java\\nsrc/main/java/com/google/devtools/build/lib/packages/BuildGlobals.java\\nsrc/main/java/com/google/devtools/build/lib/packages/BuildSetting.java\\nsrc/main/java/com/google/devtools/build/lib/packages/BuildType.java\\nsrc/main/java/com/google/devtools/build/lib/packages/BuilderFactoryForTesting.java\\nsrc/main/java/com/google/devtools/build/lib/packages/BuiltinProvider.java\\nsrc/main/java/com/google/devtools/build/lib/packages/BuiltinRestriction.java\\nsrc/main/java/com/google/devtools/build/lib/packages/BuiltinsInternalModule.java\\nsrc/main/java/com/google/devtools/build/lib/packages/BzlInitThreadContext.java\\nsrc/main/java/com/google/devtools/build/lib/packages/BzlVisibility.java\\nsrc/main/java/com/google/devtools/build/lib/packages/CachingPackageLocator.java\\nsrc/main/java/com/google/devtools/build/lib/packages/CallStack.java\\nsrc/main/java/com/google/devtools/build/lib/packages/ConfigurationFragmentPolicy.java\\nsrc/main/java/com/google/devtools/build/lib/packages/ConfiguredAttributeMapper.java\\nsrc/main/java/com/google/devtools/build/lib/packages/DefaultSetting.java\\nsrc/main/java/com/google/devtools/build/lib/packages/DelegatingAttributeMapper.java\\nsrc/main/java/com/google/devtools/build/lib/packages/DependencyFilter.java\\nsrc/main/java/com/google/devtools/build/lib/packages/DotBazelFileSyntaxChecker.java\\nsrc/main/java/com/google/devtools/build/lib/packages/EnumFilterConverter.java\\nsrc/main/java/com/google/devtools/build/lib/packages/EnvironmentGroup.java\\nsrc/main/java/com/google/devtools/build/lib/packages/EnvironmentLabels.java\\nsrc/main/java/com/google/devtools/build/lib/packages/ErrorDeterminingRepositoryException.java\\nsrc/main/java/com/google/devtools/build/lib/packages/ExecGroup.java\\nsrc/main/java/com/google/devtools/build/lib/packages/FileTarget.java\\nsrc/main/java/com/google/devtools/build/lib/packages/FunctionSplitTransitionAllowlist.java\\nsrc/main/java/com/google/devtools/build/lib/packages/GlobCache.java\\nsrc/main/java/com/google/devtools/build/lib/packages/Globber.java\\nsrc/main/java/com/google/devtools/build/lib/packages/GlobberUtils.java\\nsrc/main/java/com/google/de...9. mcp__sourcegraph__sg_list_files
Input
{
"repo": "github.com/sg-evals/bazel--8.0.0",
"path": "src/main/java/net/starlark/java/eval"
}Output
{'content': '{"text":"src/main/java/net/starlark/java/eval/BUILD\\nsrc/main/java/net/starlark/java/eval/BuiltinFunction.java\\nsrc/main/java/net/starlark/java/eval/CallUtils.java\\nsrc/main/java/net/starlark/java/eval/CpuProfiler.java\\nsrc/main/java/net/starlark/java/eval/Debug.java\\nsrc/main/java/net/starlark/java/eval/Dict.java\\nsrc/main/java/net/starlark/java/eval/Eval.java\\nsrc/main/java/net/starlark/java/eval/EvalException.java\\nsrc/main/java/net/starlark/java/eval/EvalUtils.java\\nsrc/main/java/net/starlark/java/eval/FlagGuardedValue.java\\nsrc/main/java/net/starlark/java/eval/FormatParser.java\\nsrc/main/java/net/starlark/java/eval/GuardedValue.java\\nsrc/main/java/net/starlark/java/eval/HasBinary.java\\nsrc/main/java/net/starlark/java/eval/ImmutableSingletonStarlarkList.java\\nsrc/main/java/net/starlark/java/eval/ImmutableStarlarkList.java\\nsrc/main/java/net/starlark/java/eval/JNI.java\\nsrc/main/java/net/starlark/java/eval/LazyImmutableStarlarkList.java\\nsrc/main/java/net/starlark/java/eval/MethodDescriptor.java\\nsrc/main/java/net/starlark/java/eval/MethodLibrary.java\\nsrc/main/java/net/starlark/java/eval/Module.java\\nsrc/main/java/net/starlark/java/eval/Mutability.java\\nsrc/main/java/net/starlark/java/eval/MutableStarlarkList.java\\nsrc/main/java/net/starlark/java/eval/NoneType.java\\nsrc/main/java/net/starlark/java/eval/ParamDescriptor.java\\nsrc/main/java/net/starlark/java/eval/Printer.java\\nsrc/main/java/net/starlark/java/eval/RangeList.java\\nsrc/main/java/net/starlark/java/eval/RegularImmutableStarlarkList.java\\nsrc/main/java/net/starlark/java/eval/RegularTuple.java\\nsrc/main/java/net/starlark/java/eval/Sequence.java\\nsrc/main/java/net/starlark/java/eval/SingletonTuple.java\\nsrc/main/java/net/starlark/java/eval/Starlark.java\\nsrc/main/java/net/starlark/java/eval/StarlarkCallable.java\\nsrc/main/java/net/starlark/java/eval/StarlarkFloat.java\\nsrc/main/java/net/starlark/java/eval/StarlarkFunction.java\\nsrc/main/java/net/starlark/java/eval/StarlarkIndexable.java\\nsrc/main/java/net/starlark/java/eval/StarlarkInt.java\\nsrc/main/java/net/starlark/java/eval/StarlarkIterable.java\\nsrc/main/java/net/starlark/java/eval/StarlarkList.java\\nsrc/main/java/net/starlark/java/eval/StarlarkSemantics.java\\nsrc/main/java/net/starlark/java/eval/StarlarkThread.java\\nsrc/main/java/net/starlark/java/eval/StarlarkValue.java\\nsrc/main/java/net/starlark/java/eval/StringModule.java\\nsrc/main/java/net/starlark/java/eval/Structure.java\\nsrc/main/java/net/starlark/java/eval/SymbolGenerator.java\\nsrc/main/java/net/starlark/java/eval/Tuple.java\\nsrc/main/java/net/starlark/java/eval/cpu_profiler_posix.cc\\nsrc/main/java/net/starlark/java/eval/cpu_profiler_unimpl.cc\\n"}', 'structuredContent': {'text': 'src/main/java/net/starlark/java/eval/BUILD\nsrc/main/java/net/starlark/java/eval/BuiltinFunction.java\nsrc/main/java/net/starlark/java/eval/CallUtils.java\nsrc/main/java/net/starlark/java/eval/CpuProfiler.java\nsrc/main/java/net/starlark/java/eval/Debug.java\nsrc/main/java/net/starlark/java/eval/Dict.java\nsrc/main/java/net/starlark/java/eval/Eval.java\nsrc/main/java/net/starlark/java/eval/EvalException.java\nsrc/main/java/net/starlark/java/eval/EvalUtils.java\nsrc/main/java/net/starlark/java/eval/FlagGuardedValue.java\nsrc/main/java/net/starlark/java/eval/FormatParser.java\nsrc/main/java/net/starlark/java/eval/GuardedValue.java\nsrc/main/java/net/starlark/java/eval/HasBinary.java\nsrc/main/java/net/starlark/java/eval/ImmutableSingletonStarlarkList.java\nsrc/main/java/net/starlark/java/eval/ImmutableStarlarkList.java\nsrc/main/java/net/starlark/java/eval/JNI.java\nsrc/main/java/net/starlark/java/eval/LazyImmutableStarlarkList.java\nsrc/main/java/net/starlark/java/eval/MethodDescriptor.java\nsrc/main/java/net/starlark/java/eval/MethodLibrary.java\nsrc/main/java/net/starlark/java/eval/Module.java\nsrc/main/java/net/starlark/java/eval/Mutability.java\nsrc/main/java/net/starlark/java/eval/MutableStarlarkList.java\nsrc/mai...10. mcp__sourcegraph__sg_keyword_search
Input
{
"query": "repo:^github.com/sg-evals/bazel--8.0.0$ \"class RuleFunction\" file:src/main/java/com/google/devtools/build/lib/packages"
}Output
{'content': '{"text":"No results.\\n\\nNo results found."}', 'structuredContent': {'text': 'No results.\n\nNo results found.'}}11. mcp__sourcegraph__sg_keyword_search
Input
{
"query": "repo:^github.com/sg-evals/bazel--8.0.0$ \"macro(\" file:src/main/java/com/google/devtools/build/lib/packages/StarlarkGlobals.java"
}Output
{'content': '{"text":"No results.\\n\\nNo results found."}', 'structuredContent': {'text': 'No results.\n\nNo results found.'}}12. mcp__sourcegraph__sg_keyword_search
Input
{
"query": "repo:^github.com/sg-evals/bazel--8.0.0$ \"BazelStarlarkEnvironment\" file:src/main/java/com/google/devtools/build/lib/packages"
}Output
{'content': '{"text":"# github.com/sg-evals/bazel--8.0.0 – src/main/java/com/google/devtools/build/lib/packages/RuleClassProvider.java\\n62: */\\n63: BazelStarlarkEnvironment getBazelStarlarkEnvironment();\\n64: \\n65: \\n59: /**\\n60: * Returns the {@link BazelStarlarkEnvironment}, which is the final determiner of the BUILD and\\n61: * .bzl environment (with and without builtins injection).\\n62: \\n\\n# github.com/sg-evals/bazel--8.0.0 – src/main/java/com/google/devtools/build/lib/packages/BazelStarlarkEnvironment.java\\n119: */\\n120: public BazelStarlarkEnvironment(\\n121: StarlarkGlobals starlarkGlobals,\\n122: \\n58: */\\n59: public final class BazelStarlarkEnvironment {\\n60: \\n61: \\n103: /**\\n104: * Constructs a new {@code BazelStarlarkEnvironment} that will have complete knowledge of the\\n105: * proper Starlark symbols available in each context, with and without injection.\\n106: \\n\\n# github.com/sg-evals/bazel--8.0.0 – src/main/java/com/google/devtools/build/lib/packages/StarlarkGlobals.java\\n25: * starting point for defining the minimum Starlark environments that Bazel supports for BUILD\\n26: * files, .bzl files, etc. See {@link BazelStarlarkEnvironment} for the final determination of the\\n27: * environment after accounting for registered symbols and builtins injection.\\n28: \\n\\n# github.com/sg-evals/bazel--8.0.0 – src/main/java/com/google/devtools/build/lib/packages/WorkspaceFactory.java\\n85: this.starlarkSemantics = starlarkSemantics;\\n86: this.starlarkGlobals = ruleClassProvider.getBazelStarlarkEnvironment().getStarlarkGlobals();\\n87: this.workspaceFunctions =\\n88: \\n303: // TODO(b/280446865): Ideally the WORKSPACE environment would be determined by a method in\\n304: // BazelStarlarkEnvironment. The method would accept the values of `__embedded_dir__`, etc., as\\n305: // arguments, and defer to StarlarkGlobals to get the fixed environment (COMMON, select(), etc.).\\n306: \\n\\n# github.com/sg-evals/bazel--8.0.0 – src/main/java/com/google/devtools/build/lib/packages/AutoloadSymbols.java\\n175: ImmutableMap<String, Object> originalBuildBzlEnv =\\n176: ruleClassProvider.getBazelStarlarkEnvironment().getUninjectedBuildBzlEnv();\\n177: \\n178: \\n110: ImmutableMap<String, Object> originalBuildBzlEnv =\\n111: ruleClassProvider.getBazelStarlarkEnvironment().getUninjectedBuildBzlEnv();\\n112: this.uninjectedBuildBzlEnvWithAutoloads = originalBuildBzlEnv;\\n113: \\n86: \\n87: // The environment formed by taking BazelStarlarkEnvironment\'s bzl environment and adding/removing\\n88: // autoloaded symbols. The values of any added symbols are set to None (i.e. not actually loaded).\\n89: \\n"}', 'structuredContent': {'text': "# github.com/sg-evals/bazel--8.0.0 – src/main/java/com/google/devtools/build/lib/packages/RuleClassProvider.java\n62: */\n63: BazelStarlarkEnvironment getBazelStarlarkEnvironment();\n64: \n65: \n59: /**\n60: * Returns the {@link BazelStarlarkEnvironment}, which is the final determiner of the BUILD and\n61: * .bzl environment (with and without builtins injection).\n62: \n\n# github.com/sg-evals/bazel--8.0.0 – src/main/java/com/google/devtools/build/lib/packages/BazelStarlarkEnvironment.java\n119: */\n120: public BazelStarlarkEnvironment(\n121: StarlarkGlobals starlarkGlobals,\n122: \n58: */\n59: public final class BazelStarlarkEnvironment {\n60: \n61: \n103: /**\n104: * Constructs a new {@code BazelStarlarkEnvironment} that will have complete knowledge of the\n105: * proper Starlark symbols available in each context, with and without injection.\n106: \n\n# github.com/sg-evals/bazel--8.0.0 – src/main/java/com/google/devtools/build/lib/packages/StarlarkGlobals.java\n25: * starting point for defining the minimum Starlark environments that Bazel supports for BUILD\n26: * files, .bzl files, etc. See {@link BazelStarlarkEnvironment} for the final determination of the\n2...13. mcp__sourcegraph__sg_read_file
Input
{
"repo": "github.com/sg-evals/bazel--8.0.0",
"path": "src/main/java/com/google/devtools/build/lib/packages/RuleFunction.java"
}Output
{'content': '{"text":"URL: https://demo.sourcegraph.com/github.com/sg-evals/bazel--8.0.0@12f256c9dffb17d03d47b3f06bf34f67c976e4aa/-/blob/src/main/java/com/google/devtools/build/lib/packages/RuleFunction.java\\n1: // Copyright 2017 The Bazel Authors. All rights reserved.\\n2: //\\n3: // Licensed under the Apache License, Version 2.0 (the \\"License\\");\\n4: // you may not use this file except in compliance with the License.\\n5: // You may obtain a copy of the License at\\n6: //\\n7: // http://www.apache.org/licenses/LICENSE-2.0\\n8: //\\n9: // Unless required by applicable law or agreed to in writing, software\\n10: // distributed under the License is distributed on an \\"AS IS\\" BASIS,\\n11: // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\\n12: // See the License for the specific language governing permissions and\\n13: // limitations under the License.\\n14: \\n15: package com.google.devtools.build.lib.packages;\\n16: \\n17: import com.google.devtools.build.lib.starlarkbuildapi.RuleFunctionApi;\\n18: \\n19: /** Interface for a native or Starlark rule function. */\\n20: // Ideally, this interface should be merged with RuleFunctionApi, but that would cause a circular\\n21: // dependency between packages and starlarkbuildapi.\\n22: public interface RuleFunction extends RuleFunctionApi {\\n23: RuleClass getRuleClass();\\n24: }\\n25: "}', 'structuredContent': {'text': 'URL: https://demo.sourcegraph.com/github.com/sg-evals/bazel--8.0.0@12f256c9dffb17d03d47b3f06bf34f67c976e4aa/-/blob/src/main/java/com/google/devtools/build/lib/packages/RuleFunction.java\n1: // Copyright 2017 The Bazel Authors. All rights reserved.\n2: //\n3: // Licensed under the Apache License, Version 2.0 (the "License");\n4: // you may not use this file except in compliance with the License.\n5: // You may obtain a copy of the License at\n6: //\n7: // http://www.apache.org/licenses/LICENSE-2.0\n8: //\n9: // Unless required by applicable law or agreed to in writing, software\n10: // distributed under the License is distributed on an "AS IS" BASIS,\n11: // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n12: // See the License for the specific language governing permissions and\n13: // limitations under the License.\n14: \n15: package com.google.devtools.build.lib.packages;\n16: \n17: import com.google.devtools.build.lib.starlarkbuildapi.RuleFunctionApi;\n18: \n19: /** Interface for a native or Starlark rule function. */\n20: // Ideally, this interface should be merged with RuleFunctionApi, but that would cause a circular\n21: // dependency between packages and starlarkbuildapi.\n22: public interface RuleFunction extends RuleFunctionApi {\n23: RuleClass getRuleClass();\n24: }\n25: '}}14. mcp__sourcegraph__sg_keyword_search
Input
{
"query": "repo:^github.com/sg-evals/bazel--8.0.0$ \"rule(\" StarlarkMethod file:src/main/java/com/google/devtools/build/lib/packages"
}Output
{'content': '{"text":"# github.com/sg-evals/bazel--8.0.0 – src/main/java/com/google/devtools/build/lib/packages/StarlarkNativeModule.java\\n430: @Override\\n431: public Object existingRule(String name, StarlarkThread thread) throws EvalException {\\n432: if (thread.getThreadLocal(ExistingRulesShouldBeNoOp.class) != null) {\\n433: \\n153: @Override\\n154: @StarlarkMethod(\\n155: name = \\"get\\",\\n156: \\n168: \\n169: @StarlarkMethod(\\n170: name = \\"keys\\",\\n171: \\n\\n# github.com/sg-evals/bazel--8.0.0 – src/main/java/com/google/devtools/build/lib/packages/SelectorList.java\\n43: * <pre>\\n44: * rule(\\n45: * name = \'myrule\',\\n46: \\n236: \\n237: @StarlarkMethod(\\n238: name = \\"select\\",\\n239: \\n29: import net.starlark.java.annot.StarlarkBuiltin;\\n30: import net.starlark.java.annot.StarlarkMethod;\\n31: import net.starlark.java.eval.Dict;\\n32: \\n\\n# github.com/sg-evals/bazel--8.0.0 – src/main/java/com/google/devtools/build/lib/packages/semantics/BuildLanguageOptions.java\\n57: * entry to {@link BuildLanguageOptions}, then specify the identifier in {@link\\n58: * net.starlark.java.annot.StarlarkMethod#enableOnlyWithFlag} or {@link\\n59: * net.starlark.java.annot.StarlarkMethod#disableWithFlag}.\\n60: * </ul>\\n61: \\n781: + \\" attr.dormant_label(), attr.dormant_label_list() and\\"\\n782: + \\" rule(for_dependency_resolution=) are allowed.\\")\\n783: public boolean experimentalDormantDeps;\\n784: \\n54: * to update this when flipping a flag\'s default value.\\n55: * <li>Boolean semantic flags can toggle StarlarkMethod-annotated Java methods (or their\\n56: * parameters) on or off, making them selectively invisible to Starlark. To do this, add a new\\n57: \\n"}', 'structuredContent': {'text': '# github.com/sg-evals/bazel--8.0.0 – src/main/java/com/google/devtools/build/lib/packages/StarlarkNativeModule.java\n430: @Override\n431: public Object existingRule(String name, StarlarkThread thread) throws EvalException {\n432: if (thread.getThreadLocal(ExistingRulesShouldBeNoOp.class) != null) {\n433: \n153: @Override\n154: @StarlarkMethod(\n155: name = "get",\n156: \n168: \n169: @StarlarkMethod(\n170: name = "keys",\n171: \n\n# github.com/sg-evals/bazel--8.0.0 – src/main/java/com/google/devtools/build/lib/packages/SelectorList.java\n43: * <pre>\n44: * rule(\n45: * name = \'myrule\',\n46: \n236: \n237: @StarlarkMethod(\n238: name = "select",\n239: \n29: import net.starlark.java.annot.StarlarkBuiltin;\n30: import net.starlark.java.annot.StarlarkMethod;\n31: import net.starlark.java.eval.Dict;\n32: \n\n# github.com/sg-evals/bazel--8.0.0 – src/main/java/com/google/devtools/build/lib/packages/semantics/BuildLanguageOptions.java\n57: * entry to {@link BuildLanguageOptions}, then specify the identifier in {@link\n58: * net.starlark.java.annot.StarlarkMethod#enableOnlyWithFlag} or {@link\n59: * net.starlark.java.annot.StarlarkMethod#disableWithFlag}.\n60: * </ul>\n61: \n781: + " attr.dormant_label(), attr.dormant_label_list() and"\n782: + " rule(for_dependency_resolution=) are allowed.")\n783: public boolean experimentalDormantDeps;\n784: \n54: * to update this when flipping a flag\'s default value.\n55: * <li>Boolean semantic flags can toggle StarlarkMethod-annotated Java methods (or their\n56: * parameters) on or off, making them selectively invisible to Starlark. To do this, add a new\n57: \n'}}15. mcp__sourcegraph__sg_keyword_search
Input
{
"query": "repo:^github.com/sg-evals/bazel--8.0.0$ \"macro(\" StarlarkMethod file:src/main/java/com/google/devtools/build/lib/packages"
}Output
{'content': '{"text":"# github.com/sg-evals/bazel--8.0.0 – src/main/java/com/google/devtools/build/lib/packages/StarlarkNativeModule.java\\n153: @Override\\n154: @StarlarkMethod(\\n155: name = \\"get\\",\\n156: \\n168: \\n169: @StarlarkMethod(\\n170: name = \\"keys\\",\\n171: \\n183: \\n184: @StarlarkMethod(\\n185: name = \\"values\\",\\n186: \\n\\n# github.com/sg-evals/bazel--8.0.0 – src/main/java/com/google/devtools/build/lib/packages/semantics/BuildLanguageOptions.java\\n57: * entry to {@link BuildLanguageOptions}, then specify the identifier in {@link\\n58: * net.starlark.java.annot.StarlarkMethod#enableOnlyWithFlag} or {@link\\n59: * net.starlark.java.annot.StarlarkMethod#disableWithFlag}.\\n60: * </ul>\\n61: \\n54: * to update this when flipping a flag\'s default value.\\n55: * <li>Boolean semantic flags can toggle StarlarkMethod-annotated Java methods (or their\\n56: * parameters) on or off, making them selectively invisible to Starlark. To do this, add a new\\n57: \\n243: effectTags = OptionEffectTag.BUILD_FILE_SEMANTICS,\\n244: help = \\"If set to true, enables the `macro()` construct for defining symbolic macros.\\")\\n245: public boolean experimentalEnableFirstClassMacros;\\n246: \\n"}', 'structuredContent': {'text': '# github.com/sg-evals/bazel--8.0.0 – src/main/java/com/google/devtools/build/lib/packages/StarlarkNativeModule.java\n153: @Override\n154: @StarlarkMethod(\n155: name = "get",\n156: \n168: \n169: @StarlarkMethod(\n170: name = "keys",\n171: \n183: \n184: @StarlarkMethod(\n185: name = "values",\n186: \n\n# github.com/sg-evals/bazel--8.0.0 – src/main/java/com/google/devtools/build/lib/packages/semantics/BuildLanguageOptions.java\n57: * entry to {@link BuildLanguageOptions}, then specify the identifier in {@link\n58: * net.starlark.java.annot.StarlarkMethod#enableOnlyWithFlag} or {@link\n59: * net.starlark.java.annot.StarlarkMethod#disableWithFlag}.\n60: * </ul>\n61: \n54: * to update this when flipping a flag\'s default value.\n55: * <li>Boolean semantic flags can toggle StarlarkMethod-annotated Java methods (or their\n56: * parameters) on or off, making them selectively invisible to Starlark. To do this, add a new\n57: \n243: effectTags = OptionEffectTag.BUILD_FILE_SEMANTICS,\n244: help = "If set to true, enables the `macro()` construct for defining symbolic macros.")\n245: public boolean experimentalEnableFirstClassMacros;\n246: \n'}}16. mcp__sourcegraph__sg_keyword_search
Input
{
"query": "repo:^github.com/sg-evals/bazel--8.0.0$ \"name = \\\"rule\\\"\" StarlarkMethod file:src/main/java"
}Output
{'content': '{"text":"# github.com/sg-evals/bazel--8.0.0 – src/main/java/com/google/devtools/build/lib/starlarkbuildapi/StarlarkRuleContextApi.java\\n269: \\n270: @StarlarkMethod(\\n271: name = \\"genfiles_dir\\",\\n272: \\n141: \\n142: @StarlarkMethod(\\n143: name = \\"actions\\",\\n144: \\n147: \\n148: @StarlarkMethod(\\n149: name = \\"super\\",\\n150: \\n\\n# github.com/sg-evals/bazel--8.0.0 – src/main/java/com/google/devtools/build/lib/starlarkbuildapi/StarlarkRuleFunctionsApi.java\\n65: \\n66: @StarlarkMethod(\\n67: name = \\"provider\\",\\n68: \\n200: \\n201: @StarlarkMethod(\\n202: name = \\"macro\\",\\n203: \\n427: \\n428: @StarlarkMethod(\\n429: name = \\"rule\\",\\n430: doc =\\n431: \\n"}', 'structuredContent': {'text': '# github.com/sg-evals/bazel--8.0.0 – src/main/java/com/google/devtools/build/lib/starlarkbuildapi/StarlarkRuleContextApi.java\n269: \n270: @StarlarkMethod(\n271: name = "genfiles_dir",\n272: \n141: \n142: @StarlarkMethod(\n143: name = "actions",\n144: \n147: \n148: @StarlarkMethod(\n149: name = "super",\n150: \n\n# github.com/sg-evals/bazel--8.0.0 – src/main/java/com/google/devtools/build/lib/starlarkbuildapi/StarlarkRuleFunctionsApi.java\n65: \n66: @StarlarkMethod(\n67: name = "provider",\n68: \n200: \n201: @StarlarkMethod(\n202: name = "macro",\n203: \n427: \n428: @StarlarkMethod(\n429: name = "rule",\n430: doc =\n431: \n'}}17. mcp__sourcegraph__sg_keyword_search
Input
{
"query": "repo:^github.com/sg-evals/bazel--8.0.0$ \"name = \\\"macro\\\"\" StarlarkMethod file:src/main/java"
}Output
{'content': '{"text":"# github.com/sg-evals/bazel--8.0.0 – src/main/java/com/google/devtools/build/lib/starlarkbuildapi/StarlarkRuleFunctionsApi.java\\n65: \\n66: @StarlarkMethod(\\n67: name = \\"provider\\",\\n68: \\n200: \\n201: @StarlarkMethod(\\n202: name = \\"macro\\",\\n203: doc =\\n204: \\n427: \\n428: @StarlarkMethod(\\n429: name = \\"rule\\",\\n430: \\n"}', 'structuredContent': {'text': '# github.com/sg-evals/bazel--8.0.0 – src/main/java/com/google/devtools/build/lib/starlarkbuildapi/StarlarkRuleFunctionsApi.java\n65: \n66: @StarlarkMethod(\n67: name = "provider",\n68: \n200: \n201: @StarlarkMethod(\n202: name = "macro",\n203: doc =\n204: \n427: \n428: @StarlarkMethod(\n429: name = "rule",\n430: \n'}}18. mcp__sourcegraph__sg_keyword_search
Input
{
"query": "repo:^github.com/sg-evals/bazel--8.0.0$ \"implements StarlarkRuleFunctionsApi\" file:src/main/java"
}Output
{'content': '{"text":"# github.com/sg-evals/bazel--8.0.0 – src/main/java/com/google/devtools/build/lib/analysis/starlark/StarlarkRuleClassFunctions.java\\n145: /** A helper class to provide an easier API for Starlark rule definitions. */\\n146: public class StarlarkRuleClassFunctions implements StarlarkRuleFunctionsApi {\\n147: \\n148: \\n"}', 'structuredContent': {'text': '# github.com/sg-evals/bazel--8.0.0 – src/main/java/com/google/devtools/build/lib/analysis/starlark/StarlarkRuleClassFunctions.java\n145: /** A helper class to provide an easier API for Starlark rule definitions. */\n146: public class StarlarkRuleClassFunctions implements StarlarkRuleFunctionsApi {\n147: \n148: \n'}}19. mcp__sourcegraph__sg_keyword_search
Input
{
"query": "repo:^github.com/sg-evals/bazel--8.0.0$ \"class BzlInitThreadContext\" file:src/main/java/com/google/devtools/build/lib/packages"
}Output
{'content': '{"text":"# github.com/sg-evals/bazel--8.0.0 – src/main/java/com/google/devtools/build/lib/packages/BzlInitThreadContext.java\\n33: */\\n34: public final class BzlInitThreadContext extends StarlarkThreadContext\\n35: implements RuleDefinitionEnvironment {\\n36: \\n"}', 'structuredContent': {'text': '# github.com/sg-evals/bazel--8.0.0 – src/main/java/com/google/devtools/build/lib/packages/BzlInitThreadContext.java\n33: */\n34: public final class BzlInitThreadContext extends StarlarkThreadContext\n35: implements RuleDefinitionEnvironment {\n36: \n'}}20. mcp__sourcegraph__sg_read_file
Input
{
"repo": "github.com/sg-evals/bazel--8.0.0",
"path": "src/main/java/net/starlark/java/eval/StarlarkThread.java",
"startLine": 1,
"endLine": 80
}Output
{'content': '{"text":"URL: https://demo.sourcegraph.com/github.com/sg-evals/bazel--8.0.0@12f256c9dffb17d03d47b3f06bf34f67c976e4aa/-/blob/src/main/java/net/starlark/java/eval/StarlarkThread.java%3FL1-80\\n1: // Copyright 2014 The Bazel Authors. All rights reserved.\\n2: //\\n3: // Licensed under the Apache License, Version 2.0 (the \\"License\\");\\n4: // you may not use this file except in compliance with the License.\\n5: // You may obtain a copy of the License at\\n6: //\\n7: // http://www.apache.org/licenses/LICENSE-2.0\\n8: //\\n9: // Unless required by applicable law or agreed to in writing, software\\n10: // distributed under the License is distributed on an \\"AS IS\\" BASIS,\\n11: // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\\n12: // See the License for the specific language governing permissions and\\n13: // limitations under the License.\\n14: \\n15: package net.starlark.java.eval;\\n16: \\n17: import com.google.common.base.Preconditions;\\n18: import com.google.common.collect.ImmutableList;\\n19: import com.google.common.collect.ImmutableMap;\\n20: import java.util.ArrayList;\\n21: import java.util.HashMap;\\n22: import java.util.Map;\\n23: import java.util.concurrent.atomic.AtomicInteger;\\n24: import javax.annotation.Nullable;\\n25: import javax.annotation.concurrent.Immutable;\\n26: import net.starlark.java.syntax.Location;\\n27: \\n28: /**\\n29: * An StarlarkThread represents a Starlark thread.\\n30: *\\n31: * <p>It holds the stack of active Starlark and built-in function calls. In addition, it may hold\\n32: * per-thread application state (see {@link #setThreadLocal}) that passes through Starlark functions\\n33: * but does not directly affect them, such as information about the BUILD file being loaded.\\n34: *\\n35: * <p>StarlarkThreads are not thread-safe: they should be confined to a single Java thread.\\n36: *\\n37: * <p>Every StarlarkThread has an associated {@link Mutability}, which should be created for that\\n38: * thread, and closed once the thread\'s work is done. (A try-with-resources statement is handy for\\n39: * this purpose.) Starlark values created by the thread are associated with the thread\'s Mutability,\\n40: * so that when the Mutability is closed at the end of the computation, all the values created by\\n41: * the thread become frozen. This pattern ensures that all Starlark values are frozen before they\\n42: * are published to another thread, and thus that concurrently executing Starlark threads are free\\n43: * from data races. Once a thread\'s mutability is frozen, the thread is unlikely to be useful for\\n44: * further computation because it can no longer create mutable values. (This is occasionally\\n45: * valuable in tests.)\\n46: */\\n47: public final class StarlarkThread {\\n48: \\n49: /** The mutability of values created by this thread. */\\n50: private final Mutability mutability;\\n51: \\n52: // profiler state\\n53: //\\n54: // The profiler field (and savedThread) are set when we first observe during a\\n55: // push (function call entry) that the profiler is active. They are unset\\n56: // not in the corresponding pop, but when the last frame is popped, because\\n57: // the profiler session might start in the middle of a call and/or run beyond\\n58: // the lifetime of this thread.\\n59: final AtomicInteger cpuTicks = new AtomicInteger();\\n60: @Nullable private CpuProfiler profiler;\\n61: private StarlarkThread savedThread; // saved StarlarkThread, when profiling reentrant evaluation\\n62: \\n63: private final Map<Class<?>, Object> threadLocals = new HashMap<>();\\n64: \\n65: private final SymbolGenerator<?> symbolGenerator;\\n66: \\n67: private boolean interruptible = true;\\n68: \\n69: long steps; // count of logical computation steps executed so far\\n70: long stepLimit = Long.MAX_VALUE; // limit on logical computation steps\\n71: \\n72: /**\\n73: * Returns the number of Starlark computa...21. mcp__sourcegraph__sg_read_file
Input
{
"repo": "github.com/sg-evals/bazel--8.0.0",
"path": "src/main/java/com/google/devtools/build/lib/packages/PackageFactory.java",
"startLine": 1,
"endLine": 100
}Output
{'content': '{"text":"URL: https://demo.sourcegraph.com/github.com/sg-evals/bazel--8.0.0@12f256c9dffb17d03d47b3f06bf34f67c976e4aa/-/blob/src/main/java/com/google/devtools/build/lib/packages/PackageFactory.java%3FL1-100\\n1: // Copyright 2014 The Bazel Authors. All rights reserved.\\n2: //\\n3: // Licensed under the Apache License, Version 2.0 (the \\"License\\");\\n4: // you may not use this file except in compliance with the License.\\n5: // You may obtain a copy of the License at\\n6: //\\n7: // http://www.apache.org/licenses/LICENSE-2.0\\n8: //\\n9: // Unless required by applicable law or agreed to in writing, software\\n10: // distributed under the License is distributed on an \\"AS IS\\" BASIS,\\n11: // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\\n12: // See the License for the specific language governing permissions and\\n13: // limitations under the License.\\n14: \\n15: package com.google.devtools.build.lib.packages;\\n16: \\n17: import com.google.common.annotations.VisibleForTesting;\\n18: import com.google.common.base.Preconditions;\\n19: import com.google.common.collect.ImmutableList;\\n20: import com.google.common.collect.ImmutableMap;\\n21: import com.google.common.flogger.GoogleLogger;\\n22: import com.google.devtools.build.lib.actions.ThreadStateReceiver;\\n23: import com.google.devtools.build.lib.analysis.RuleDefinitionEnvironment;\\n24: import com.google.devtools.build.lib.cmdline.IgnoredSubdirectories;\\n25: import com.google.devtools.build.lib.cmdline.PackageIdentifier;\\n26: import com.google.devtools.build.lib.cmdline.RepositoryMapping;\\n27: import com.google.devtools.build.lib.concurrent.NamedForkJoinPool;\\n28: import com.google.devtools.build.lib.events.Event;\\n29: import com.google.devtools.build.lib.events.ExtendedEventHandler;\\n30: import com.google.devtools.build.lib.packages.Globber.BadGlobException;\\n31: import com.google.devtools.build.lib.packages.Package.Builder.PackageSettings;\\n32: import com.google.devtools.build.lib.packages.Package.ConfigSettingVisibilityPolicy;\\n33: import com.google.devtools.build.lib.packages.PackageValidator.InvalidPackageException;\\n34: import com.google.devtools.build.lib.packages.WorkspaceFileValue.WorkspaceFileKey;\\n35: import com.google.devtools.build.lib.packages.semantics.BuildLanguageOptions;\\n36: import com.google.devtools.build.lib.profiler.Profiler;\\n37: import com.google.devtools.build.lib.profiler.ProfilerTask;\\n38: import com.google.devtools.build.lib.server.FailureDetails.FailureDetail;\\n39: import com.google.devtools.build.lib.server.FailureDetails.PackageLoading;\\n40: import com.google.devtools.build.lib.server.FailureDetails.PackageLoading.Code;\\n41: import com.google.devtools.build.lib.util.DetailedExitCode;\\n42: import com.google.devtools.build.lib.vfs.FileSystem;\\n43: import com.google.devtools.build.lib.vfs.Path;\\n44: import com.google.devtools.build.lib.vfs.RootedPath;\\n45: import com.google.devtools.build.lib.vfs.SyscallCache;\\n46: import com.google.errorprone.annotations.CanIgnoreReturnValue;\\n47: import java.util.Collection;\\n48: import java.util.Map;\\n49: import java.util.Optional;\\n50: import java.util.concurrent.ForkJoinPool;\\n51: import java.util.concurrent.Semaphore;\\n52: import javax.annotation.Nullable;\\n53: import net.starlark.java.eval.EvalException;\\n54: import net.starlark.java.eval.Module;\\n55: import net.starlark.java.eval.Mutability;\\n56: import net.starlark.java.eval.Starlark;\\n57: import net.starlark.java.eval.StarlarkCallable;\\n58: import net.starlark.java.eval.StarlarkFunction;\\n59: import net.starlark.java.eval.StarlarkSemantics;\\n60: import net.starlark.java.eval.StarlarkThread;\\n61: import net.starlark.java.syntax.Argument;\\n62: import net.starlark.java.syntax.CallExpression;\\n63: import net.starlark.java.syntax.Expression;\\n64: import net.starlark.java.syntax.Identifier;\\n65: import net.starlark.java.syntax.IntLiteral;\\n66: import net.starlark.java.sy...22. mcp__sourcegraph__sg_read_file
Input
{
"repo": "github.com/sg-evals/bazel--8.0.0",
"path": "src/main/java/com/google/devtools/build/lib/skyframe/BzlLoadFunction.java",
"startLine": 1,
"endLine": 120
}Output
{'content': '{"text":"URL: https://demo.sourcegraph.com/github.com/sg-evals/bazel--8.0.0@12f256c9dffb17d03d47b3f06bf34f67c976e4aa/-/blob/src/main/java/com/google/devtools/build/lib/skyframe/BzlLoadFunction.java%3FL1-120\\n1: // Copyright 2014 The Bazel Authors. All rights reserved.\\n2: //\\n3: // Licensed under the Apache License, Version 2.0 (the \\"License\\");\\n4: // you may not use this file except in compliance with the License.\\n5: // You may obtain a copy of the License at\\n6: //\\n7: // http://www.apache.org/licenses/LICENSE-2.0\\n8: //\\n9: // Unless required by applicable law or agreed to in writing, software\\n10: // distributed under the License is distributed on an \\"AS IS\\" BASIS,\\n11: // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\\n12: // See the License for the specific language governing permissions and\\n13: // limitations under the License.\\n14: package com.google.devtools.build.lib.skyframe;\\n15: \\n16: import com.github.benmanes.caffeine.cache.Cache;\\n17: import com.github.benmanes.caffeine.cache.Caffeine;\\n18: import com.google.common.annotations.VisibleForTesting;\\n19: import com.google.common.base.Preconditions;\\n20: import com.google.common.base.Predicates;\\n21: import com.google.common.collect.ImmutableList;\\n22: import com.google.common.collect.ImmutableMap;\\n23: import com.google.common.collect.Lists;\\n24: import com.google.common.collect.Maps;\\n25: import com.google.common.flogger.GoogleLogger;\\n26: import com.google.common.hash.HashFunction;\\n27: import com.google.devtools.build.lib.analysis.BlazeDirectories;\\n28: import com.google.devtools.build.lib.cmdline.BazelModuleContext;\\n29: import com.google.devtools.build.lib.cmdline.Label;\\n30: import com.google.devtools.build.lib.cmdline.Label.PackageContext;\\n31: import com.google.devtools.build.lib.cmdline.LabelConstants;\\n32: import com.google.devtools.build.lib.cmdline.LabelSyntaxException;\\n33: import com.google.devtools.build.lib.cmdline.PackageIdentifier;\\n34: import com.google.devtools.build.lib.cmdline.RepositoryMapping;\\n35: import com.google.devtools.build.lib.cmdline.RepositoryName;\\n36: import com.google.devtools.build.lib.concurrent.BlazeInterners;\\n37: import com.google.devtools.build.lib.events.Event;\\n38: import com.google.devtools.build.lib.events.EventHandler;\\n39: import com.google.devtools.build.lib.events.EventKind;\\n40: import com.google.devtools.build.lib.events.ExtendedEventHandler;\\n41: import com.google.devtools.build.lib.io.InconsistentFilesystemException;\\n42: import com.google.devtools.build.lib.packages.AutoloadSymbols;\\n43: import com.google.devtools.build.lib.packages.BazelStarlarkEnvironment;\\n44: import com.google.devtools.build.lib.packages.BuildFileNotFoundException;\\n45: import com.google.devtools.build.lib.packages.BzlInitThreadContext;\\n46: import com.google.devtools.build.lib.packages.BzlVisibility;\\n47: import com.google.devtools.build.lib.packages.RuleClassProvider;\\n48: import com.google.devtools.build.lib.packages.StarlarkExportable;\\n49: import com.google.devtools.build.lib.packages.WorkspaceFileValue;\\n50: import com.google.devtools.build.lib.packages.semantics.BuildLanguageOptions;\\n51: import com.google.devtools.build.lib.server.FailureDetails.StarlarkLoading.Code;\\n52: import com.google.devtools.build.lib.skyframe.StarlarkBuiltinsFunction.BuiltinsFailedException;\\n53: import com.google.devtools.build.lib.util.DetailedExitCode;\\n54: import com.google.devtools.build.lib.util.Fingerprint;\\n55: import com.google.devtools.build.lib.util.Pair;\\n56: import com.google.devtools.build.lib.vfs.PathFragment;\\n57: import com.google.devtools.build.lib.vfs.Root;\\n58: import com.google.devtools.build.skyframe.RecordingSkyFunctionEnvironment;\\n59: import com.google.devtools.build.skyframe.SkyFunction;\\n60: import com.google.devtools.build.skyframe.SkyFunctionException;\\n61: import com.google.devtools.build.skyframe.SkyFunctionExceptio...23. mcp__sourcegraph__sg_read_file
Input
{
"repo": "github.com/sg-evals/bazel--8.0.0",
"path": "src/main/java/com/google/devtools/build/lib/analysis/starlark/StarlarkRuleClassFunctions.java",
"startLine": 1,
"endLine": 100
}Output
{'content': '{"text":"URL: https://demo.sourcegraph.com/github.com/sg-evals/bazel--8.0.0@12f256c9dffb17d03d47b3f06bf34f67c976e4aa/-/blob/src/main/java/com/google/devtools/build/lib/analysis/starlark/StarlarkRuleClassFunctions.java%3FL1-100\\n1: // Copyright 2014 The Bazel Authors. All rights reserved.\\n2: //\\n3: // Licensed under the Apache License, Version 2.0 (the \\"License\\");\\n4: // you may not use this file except in compliance with the License.\\n5: // You may obtain a copy of the License at\\n6: //\\n7: // http://www.apache.org/licenses/LICENSE-2.0\\n8: //\\n9: // Unless required by applicable law or agreed to in writing, software\\n10: // distributed under the License is distributed on an \\"AS IS\\" BASIS,\\n11: // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\\n12: // See the License for the specific language governing permissions and\\n13: // limitations under the License.\\n14: \\n15: package com.google.devtools.build.lib.analysis.starlark;\\n16: \\n17: import static com.google.common.base.Preconditions.checkArgument;\\n18: import static com.google.common.base.Preconditions.checkState;\\n19: import static com.google.common.collect.ImmutableList.toImmutableList;\\n20: import static com.google.devtools.build.lib.analysis.BaseRuleClasses.RUN_UNDER_EXEC_CONFIG;\\n21: import static com.google.devtools.build.lib.analysis.BaseRuleClasses.RUN_UNDER_TARGET_CONFIG;\\n22: import static com.google.devtools.build.lib.analysis.BaseRuleClasses.TIMEOUT_DEFAULT;\\n23: import static com.google.devtools.build.lib.analysis.BaseRuleClasses.getTestRuntimeLabelList;\\n24: import static com.google.devtools.build.lib.analysis.test.ExecutionInfo.DEFAULT_TEST_RUNNER_EXEC_GROUP;\\n25: import static com.google.devtools.build.lib.packages.Attribute.attr;\\n26: import static com.google.devtools.build.lib.packages.BuildType.LABEL;\\n27: import static com.google.devtools.build.lib.packages.BuildType.LABEL_LIST;\\n28: import static com.google.devtools.build.lib.packages.BuildType.LICENSE;\\n29: import static com.google.devtools.build.lib.packages.BuiltinRestriction.allowlistEntry;\\n30: import static com.google.devtools.build.lib.packages.Type.BOOLEAN;\\n31: import static com.google.devtools.build.lib.packages.Type.INTEGER;\\n32: import static com.google.devtools.build.lib.packages.Type.STRING;\\n33: import static com.google.devtools.build.lib.packages.Types.STRING_LIST;\\n34: import static java.util.Objects.requireNonNull;\\n35: \\n36: import com.github.benmanes.caffeine.cache.Caffeine;\\n37: import com.github.benmanes.caffeine.cache.LoadingCache;\\n38: import com.google.common.collect.ImmutableList;\\n39: import com.google.common.collect.ImmutableMap;\\n40: import com.google.common.collect.ImmutableSet;\\n41: import com.google.common.collect.Maps;\\n42: import com.google.devtools.build.lib.analysis.Allowlist;\\n43: import com.google.devtools.build.lib.analysis.BaseRuleClasses;\\n44: import com.google.devtools.build.lib.analysis.DormantDependency;\\n45: import com.google.devtools.build.lib.analysis.PackageSpecificationProvider;\\n46: import com.google.devtools.build.lib.analysis.RuleDefinitionEnvironment;\\n47: import com.google.devtools.build.lib.analysis.TemplateVariableInfo;\\n48: import com.google.devtools.build.lib.analysis.config.ExecutionTransitionFactory;\\n49: import com.google.devtools.build.lib.analysis.config.StarlarkDefinedConfigTransition;\\n50: import com.google.devtools.build.lib.analysis.config.ToolchainTypeRequirement;\\n51: import com.google.devtools.build.lib.analysis.config.transitions.ComposingTransitionFactory;\\n52: import com.google.devtools.build.lib.analysis.config.transitions.NoTransition;\\n53: import com.google.devtools.build.lib.analysis.config.transitions.StarlarkExposedRuleTransitionFactory;\\n54: import com.google.devtools.build.lib.analysis.config.transitions.TransitionFactory;\\n55: import com.google.devtools.build.lib.analysis.config.transitions.TransitionFactory.TransitionTyp...24. mcp__sourcegraph__sg_read_file
Input
{
"repo": "github.com/sg-evals/bazel--8.0.0",
"path": "src/main/java/com/google/devtools/build/lib/analysis/starlark/StarlarkRuleClassFunctions.java",
"startLine": 140,
"endLine": 250
}Output
{'content': '{"text":"URL: https://demo.sourcegraph.com/github.com/sg-evals/bazel--8.0.0@12f256c9dffb17d03d47b3f06bf34f67c976e4aa/-/blob/src/main/java/com/google/devtools/build/lib/analysis/starlark/StarlarkRuleClassFunctions.java%3FL140-250\\n140: import net.starlark.java.eval.SymbolGenerator.Symbol;\\n141: import net.starlark.java.eval.Tuple;\\n142: import net.starlark.java.syntax.Identifier;\\n143: import net.starlark.java.syntax.Location;\\n144: \\n145: /** A helper class to provide an easier API for Starlark rule definitions. */\\n146: public class StarlarkRuleClassFunctions implements StarlarkRuleFunctionsApi {\\n147: \\n148: // A cache for base rule classes (especially tests).\\n149: private static final LoadingCache<String, Label> labelCache =\\n150: Caffeine.newBuilder().build(Label::parseCanonical);\\n151: \\n152: // TODO(bazel-team): Remove the code duplication (BaseRuleClasses and this class).\\n153: /** Parent rule class for non-executable non-test Starlark rules. */\\n154: public static final RuleClass baseRule =\\n155: BaseRuleClasses.commonCoreAndStarlarkAttributes(\\n156: new RuleClass.Builder(\\"$base_rule\\", RuleClassType.ABSTRACT, true)\\n157: .add(attr(\\"expect_failure\\", STRING)))\\n158: // TODO(skylark-team): Allow Starlark rules to extend native rules and remove duplication.\\n159: .add(\\n160: attr(\\"toolchains\\", LABEL_LIST)\\n161: .allowedFileTypes(FileTypeSet.NO_FILE)\\n162: .mandatoryProviders(ImmutableList.of(TemplateVariableInfo.PROVIDER.id()))\\n163: .dontCheckConstraints())\\n164: .add(attr(RuleClass.EXEC_PROPERTIES_ATTR, Types.STRING_DICT).value(ImmutableMap.of()))\\n165: .add(\\n166: attr(RuleClass.EXEC_COMPATIBLE_WITH_ATTR, BuildType.LABEL_LIST)\\n167: .allowedFileTypes()\\n168: .nonconfigurable(\\"Used in toolchain resolution\\")\\n169: .tool(\\n170: \\"exec_compatible_with exists for constraint checking, not to create an\\"\\n171: + \\" actual dependency\\")\\n172: .value(ImmutableList.of()))\\n173: .add(\\n174: attr(RuleClass.TARGET_COMPATIBLE_WITH_ATTR, LABEL_LIST)\\n175: .mandatoryProviders(ConstraintValueInfo.PROVIDER.id())\\n176: // This should be configurable to allow for complex types of restrictions.\\n177: .tool(\\n178: \\"target_compatible_with exists for constraint checking, not to create an\\"\\n179: + \\" actual dependency\\")\\n180: .allowedFileTypes(FileTypeSet.NO_FILE))\\n181: .build();\\n182: \\n183: public static final RuleClass dependencyResolutionBaseRule =\\n184: new RuleClass.Builder(\\n185: \\"$dependency_resolution_base_rule\\", RuleClassType.ABSTRACT, true, baseRule)\\n186: .setDependencyResolutionRule()\\n187: .removeAttribute(\\":action_listener\\")\\n188: .removeAttribute(\\"aspect_hints\\")\\n189: .removeAttribute(\\"toolchains\\")\\n190: .removeAttribute(\\"exec_compatible_with\\")\\n191: .removeAttribute(\\"target_compatible_with\\")\\n192: .removeAttribute(\\"compatible_with\\")\\n193: .removeAttribute(\\"restricted_to\\")\\n194: .removeAttribute(\\"$config_dependencies\\")\\n195: .removeAttribute(\\"package_metadata\\")\\n196: .build();\\n197: \\n198: /** Parent rule class for executable non-test Starlark rules. */\\n199: private static final RuleClass binaryBaseRule =\\n200: new RuleClass.Builder(\\"$binary_base_rule\\", RuleClassType.ABSTRACT, true, baseRule)\\n201: .add(attr(\\"args\\", STRING_LIST))\\n202: .add(attr(\\"output_licenses\\", LICENSE))...25. mcp__sourcegraph__sg_read_file
Input
{
"repo": "github.com/sg-evals/bazel--8.0.0",
"path": "src/main/java/com/google/devtools/build/lib/packages/Package.java",
"startLine": 1050,
"endLine": 1120
}Output
{'content': '{"text":"URL: https://demo.sourcegraph.com/github.com/sg-evals/bazel--8.0.0@12f256c9dffb17d03d47b3f06bf34f67c976e4aa/-/blob/src/main/java/com/google/devtools/build/lib/packages/Package.java%3FL1050-1120\\n1050: .setLoads(ImmutableList.of());\\n1051: }\\n1052: \\n1053: // ==== Non-trivial nested classes ====\\n1054: \\n1055: /**\\n1056: * A builder for {@link Package} objects. Only intended to be used by {@link PackageFactory} and\\n1057: * {@link com.google.devtools.build.lib.skyframe.PackageFunction}.\\n1058: */\\n1059: public static class Builder extends TargetDefinitionContext {\\n1060: \\n1061: /**\\n1062: * A bundle of options affecting package construction, that is not specific to any particular\\n1063: * package.\\n1064: */\\n1065: public interface PackageSettings {\\n1066: /**\\n1067: * Returns whether or not extra detail should be added to {@link NoSuchTargetException}s\\n1068: * thrown from {@link #getTarget}. Useful for toning down verbosity in situations where it can\\n1069: * be less helpful.\\n1070: */\\n1071: // TODO(bazel-team): Arguably, this could be replaced by a boolean param to getTarget(), or\\n1072: // some separate action taken by the caller. But there\'s a lot of call sites that would need\\n1073: // updating.\\n1074: default boolean succinctTargetNotFoundErrors() {\\n1075: return false;\\n1076: }\\n1077: \\n1078: /**\\n1079: * Determines whether to precompute a list of transitively loaded starlark files while\\n1080: * building packages.\\n1081: *\\n1082: * <p>Typically, direct loads are stored as a {@code ImmutableList<Module>}. This is\\n1083: * sufficient to reconstruct the full load graph by recursively traversing {@link\\n1084: * BazelModuleContext#loads}. If the package is going to be serialized, however, it may make\\n1085: * more sense to precompute a flat list containing the labels of all transitively loaded bzl\\n1086: * files since {@link Module} is costly to serialize.\\n1087: *\\n1088: * <p>If this returns {@code true}, transitive loads are stored as an {@code\\n1089: * ImmutableList<Label>} and direct loads are not stored.\\n1090: */\\n1091: default boolean precomputeTransitiveLoads() {\\n1092: return false;\\n1093: }\\n1094: \\n1095: PackageSettings DEFAULTS = new PackageSettings() {};\\n1096: }\\n1097: \\n1098: private final boolean precomputeTransitiveLoads;\\n1099: private final boolean noImplicitFileExport;\\n1100: \\n1101: // The map from each repository to that repository\'s remappings map.\\n1102: // This is only used in the //external package, it is an empty map for all other packages.\\n1103: private final HashMap<RepositoryName, HashMap<String, RepositoryName>>\\n1104: externalPackageRepositoryMappings = new HashMap<>();\\n1105: \\n1106: /** Estimates the package overhead of this package. */\\n1107: private final PackageOverheadEstimator packageOverheadEstimator;\\n1108: \\n1109: // A package\'s FailureDetail field derives from the events on its Builder\'s event handler.\\n1110: // During package deserialization, those events are unavailable, because those events aren\'t\\n1111: // serialized [*]. Its FailureDetail value is serialized, however. During deserialization, that\\n1112: // value is assigned here, so that it can be assigned to the deserialized package.\\n1113: //\\n1114: // Likewise, during workspace part assembly, errors from parent parts should propagate to their\\n1115: // children.\\n1116: //\\n1117: // [*] Not in the context of the package, anyway. Skyframe values containing a package may\\n1118: // serialize events emitted during its construction/evaluation.\\n1119: @Nullable private FailureDetail failureDetailOverride = null;\\n1120:...26. mcp__sourcegraph__sg_read_file
Input
{
"repo": "github.com/sg-evals/bazel--8.0.0",
"path": "src/main/java/com/google/devtools/build/lib/packages/BazelStarlarkEnvironment.java",
"startLine": 1,
"endLine": 80
}Output
{'content': '{"text":"URL: https://demo.sourcegraph.com/github.com/sg-evals/bazel--8.0.0@12f256c9dffb17d03d47b3f06bf34f67c976e4aa/-/blob/src/main/java/com/google/devtools/build/lib/packages/BazelStarlarkEnvironment.java%3FL1-80\\n1: // Copyright 2020 The Bazel Authors. All rights reserved.\\n2: //\\n3: // Licensed under the Apache License, Version 2.0 (the \\"License\\");\\n4: // you may not use this file except in compliance with the License.\\n5: // You may obtain a copy of the License at\\n6: //\\n7: // http://www.apache.org/licenses/LICENSE-2.0\\n8: //\\n9: // Unless required by applicable law or agreed to in writing, software\\n10: // distributed under the License is distributed on an \\"AS IS\\" BASIS,\\n11: // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\\n12: // See the License for the specific language governing permissions and\\n13: // limitations under the License.\\n14: \\n15: package com.google.devtools.build.lib.packages;\\n16: \\n17: import com.google.common.base.Preconditions;\\n18: import com.google.common.collect.ImmutableMap;\\n19: import com.google.common.collect.Sets;\\n20: import java.util.HashMap;\\n21: import java.util.List;\\n22: import java.util.Map;\\n23: import java.util.Set;\\n24: import javax.annotation.Nullable;\\n25: import net.starlark.java.eval.GuardedValue;\\n26: import net.starlark.java.eval.Starlark;\\n27: \\n28: // TODO(adonovan): move skyframe.PackageFunction into lib.packages so we needn\'t expose this and\\n29: // the other env-building functions.\\n30: /**\\n31: * This class encapsulates knowledge of how to set up the Starlark environment for BUILD, WORKSPACE,\\n32: * and bzl file evaluation, including the top-level predeclared symbols, the {@code native} module,\\n33: * and the special environment for {@code @_builtins} bzl evaluation.\\n34: *\\n35: * <p>The set of available symbols is determined by\\n36: *\\n37: * <ol>\\n38: * <li>Gathering a fixed set of top-level symbols that are present in all versions of Bazel. This\\n39: * is handled by {@link StarlarkGlobals}.\\n40: * <li>Gathering additional toplevels and rules registered on the {@link\\n41: * ConfiguredRuleClassProvider}.\\n42: * <li>Applying builtins injection (see {@link StarlarkBuiltinsFunction}), if applicable.\\n43: * </ol>\\n44: *\\n45: * <p>The end result of (1) and (2) is constant for any given Bazel binary and is cached by an\\n46: * instance of this class upon construction. The final environment, which takes into account\\n47: * builtins injection, is obtained by calling methods on this class during Skyframe evaluation; the\\n48: * result is cached in {@link StarlarkBuiltinsValue}.\\n49: *\\n50: * <p>There are a few exceptions where this class is not the final word on the environment:\\n51: *\\n52: * <ul>\\n53: * <li>The WORKSPACE file\'s environment is setup with the help of {@link\\n54: * WorkspaceFactory#getDefaultEnvironment}.\\n55: * <li>If a prelude file is in use, its bindings are added to the ones this class specifies for\\n56: * BUILD files. This happens in {@link PackageFunction}.\\n57: * </ul>\\n58: */\\n59: public final class BazelStarlarkEnvironment {\\n60: \\n61: // TODO(#11954): Eventually the BUILD and WORKSPACE bzl dialects should converge. Right now they\\n62: // only differ on the \\"native\\" object.\\n63: \\n64: // All of the environments stored in these fields exclude the symbols in {@link\\n65: // Starlark#UNIVERSE}, which the interpreter adds automatically.\\n66: \\n67: // Constructor param, used in this class but also re-exported to clients.\\n68: private final StarlarkGlobals starlarkGlobals;\\n69: \\n70: // The following fields correspond to the constructor params of the same name. These include only\\n71: // the params that are needed by injection. See the constructor for javadoc.\\n72: private final ImmutableMap<String, ?> ruleFunctions;\\n73: private final ImmutableMap<String...27. mcp__sourcegraph__sg_read_file
Input
{
"repo": "github.com/sg-evals/bazel--8.0.0",
"path": "src/main/java/com/google/devtools/build/lib/starlarkbuildapi/StarlarkRuleFunctionsApi.java",
"startLine": 1,
"endLine": 80
}Output
{'content': '{"text":"URL: https://demo.sourcegraph.com/github.com/sg-evals/bazel--8.0.0@12f256c9dffb17d03d47b3f06bf34f67c976e4aa/-/blob/src/main/java/com/google/devtools/build/lib/starlarkbuildapi/StarlarkRuleFunctionsApi.java%3FL1-80\\n1: // Copyright 2018 The Bazel Authors. All rights reserved.\\n2: //\\n3: // Licensed under the Apache License, Version 2.0 (the \\"License\\");\\n4: // you may not use this file except in compliance with the License.\\n5: // You may obtain a copy of the License at\\n6: //\\n7: // http://www.apache.org/licenses/LICENSE-2.0\\n8: //\\n9: // Unless required by applicable law or agreed to in writing, software\\n10: // distributed under the License is distributed on an \\"AS IS\\" BASIS,\\n11: // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\\n12: // See the License for the specific language governing permissions and\\n13: // limitations under the License.\\n14: \\n15: package com.google.devtools.build.lib.starlarkbuildapi;\\n16: \\n17: import com.google.devtools.build.docgen.annot.GlobalMethods;\\n18: import com.google.devtools.build.docgen.annot.GlobalMethods.Environment;\\n19: import com.google.devtools.build.docgen.annot.StarlarkConstructor;\\n20: import com.google.devtools.build.lib.cmdline.Label;\\n21: import com.google.devtools.build.lib.packages.semantics.BuildLanguageOptions;\\n22: import com.google.devtools.build.lib.starlarkbuildapi.config.StarlarkConfigApi.BuildSettingApi;\\n23: import net.starlark.java.annot.Param;\\n24: import net.starlark.java.annot.ParamType;\\n25: import net.starlark.java.annot.StarlarkMethod;\\n26: import net.starlark.java.eval.Dict;\\n27: import net.starlark.java.eval.EvalException;\\n28: import net.starlark.java.eval.NoneType;\\n29: import net.starlark.java.eval.Sequence;\\n30: import net.starlark.java.eval.StarlarkCallable;\\n31: import net.starlark.java.eval.StarlarkFunction;\\n32: import net.starlark.java.eval.StarlarkThread;\\n33: \\n34: /**\\n35: * Interface for a global Starlark library containing rule-related helper and registration\\n36: * functions.\\n37: */\\n38: @GlobalMethods(environment = Environment.BZL)\\n39: public interface StarlarkRuleFunctionsApi {\\n40: \\n41: String EXEC_COMPATIBLE_WITH_PARAM = \\"exec_compatible_with\\";\\n42: String TOOLCHAINS_PARAM = \\"toolchains\\";\\n43: \\n44: String PROVIDES_DOC =\\n45: \\"A list of providers that the implementation function must return.\\" //\\n46: + \\"<p>It is an error if the implementation function omits any of the types of providers\\"\\n47: + \\" listed here from its return value. However, the implementation function may return\\"\\n48: + \\" additional providers not listed here.\\" //\\n49: + \\"<p>Each element of the list is an <code>*Info</code> object returned by <a\\"\\n50: + \\" href=\'../globals/bzl.html#provider\'><code>provider()</code></a>, except that a legacy\\"\\n51: + \\" provider is represented by its string name instead.When a target of the rule is used\\"\\n52: + \\" as a dependency for a target that declares a required provider, it is not necessary\\"\\n53: + \\" to specify that provider here. It is enough that the implementation function returns\\"\\n54: + \\" it. However, it is considered best practice to specify it, even though this is not\\"\\n55: + \\" required. The <a\\"\\n56: + \\" href=\'../globals/bzl.html#aspect.required_providers\'><code>required_providers</code></a>\\"\\n57: + \\" field of an <a href=\'../globals/bzl.html#aspect\'>aspect</a> does, however, require\\"\\n58: + \\" that providers are specified here.\\";\\n59: \\n60: String DEPENDENCY_RESOLUTION_RULE_DOC =\\n61: \\"If set, the rule can be a dependency through attributes also marked as available in\\"\\n62: + \\" materializers. Every attribute of rules with this flag set must be marked as \\"\\n63: + \\"...28. mcp__sourcegraph__sg_read_file
Input
{
"repo": "github.com/sg-evals/bazel--8.0.0",
"path": "src/main/java/com/google/devtools/build/lib/packages/MacroClass.java",
"startLine": 1,
"endLine": 80
}Output
{'content': '{"text":"URL: https://demo.sourcegraph.com/github.com/sg-evals/bazel--8.0.0@12f256c9dffb17d03d47b3f06bf34f67c976e4aa/-/blob/src/main/java/com/google/devtools/build/lib/packages/MacroClass.java%3FL1-80\\n1: // Copyright 2024 The Bazel Authors. All rights reserved.\\n2: //\\n3: // Licensed under the Apache License, Version 2.0 (the \\"License\\");\\n4: // you may not use this file except in compliance with the License.\\n5: // You may obtain a copy of the License at\\n6: //\\n7: // http://www.apache.org/licenses/LICENSE-2.0\\n8: //\\n9: // Unless required by applicable law or agreed to in writing, software\\n10: // distributed under the License is distributed on an \\"AS IS\\" BASIS,\\n11: // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\\n12: // See the License for the specific language governing permissions and\\n13: // limitations under the License.\\n14: \\n15: package com.google.devtools.build.lib.packages;\\n16: \\n17: import static com.google.common.collect.ImmutableList.toImmutableList;\\n18: import static com.google.devtools.build.lib.packages.BuildType.NODEP_LABEL_LIST;\\n19: \\n20: import com.google.common.base.Preconditions;\\n21: import com.google.common.collect.ImmutableList;\\n22: import com.google.common.collect.ImmutableMap;\\n23: import com.google.common.collect.ImmutableSet;\\n24: import com.google.common.collect.Lists;\\n25: import com.google.devtools.build.lib.cmdline.Label;\\n26: import com.google.devtools.build.lib.cmdline.PackageIdentifier;\\n27: import com.google.devtools.build.lib.events.Event;\\n28: import com.google.devtools.build.lib.packages.TargetRecorder.MacroFrame;\\n29: import com.google.devtools.build.lib.packages.TargetRecorder.NameConflictException;\\n30: import com.google.devtools.build.lib.server.FailureDetails.PackageLoading.Code;\\n31: import com.google.errorprone.annotations.CanIgnoreReturnValue;\\n32: import java.util.ArrayList;\\n33: import java.util.LinkedHashMap;\\n34: import java.util.List;\\n35: import java.util.Map;\\n36: import javax.annotation.Nullable;\\n37: import net.starlark.java.eval.EvalException;\\n38: import net.starlark.java.eval.Mutability;\\n39: import net.starlark.java.eval.Starlark;\\n40: import net.starlark.java.eval.StarlarkFunction;\\n41: import net.starlark.java.eval.StarlarkSemantics;\\n42: import net.starlark.java.eval.StarlarkThread;\\n43: import net.starlark.java.eval.SymbolGenerator;\\n44: import net.starlark.java.spelling.SpellChecker;\\n45: \\n46: /**\\n47: * Represents a symbolic macro, defined in a .bzl file, that may be instantiated during Package\\n48: * evaluation.\\n49: *\\n50: * <p>This is analogous to {@link RuleClass}. In essence, a {@code MacroClass} consists of the\\n51: * macro\'s schema and its implementation function.\\n52: */\\n53: public final class MacroClass {\\n54: \\n55: /**\\n56: * Names that users may not pass as keys of the {@code attrs} dict when calling {@code macro()}.\\n57: *\\n58: * <p>Of these, {@code name} is special cased as an actual attribute, and the rest do not exist.\\n59: */\\n60: // Keep in sync with `macro()`\'s `attrs` user documentation in StarlarkRuleFunctionsApi.\\n61: // But we should avoid adding new entries here, since it\'s a backwards-incompatible change.\\n62: public static final ImmutableSet<String> RESERVED_MACRO_ATTR_NAMES =\\n63: ImmutableSet.of(\\"name\\", \\"visibility\\");\\n64: \\n65: /**\\n66: * \\"visibility\\" attribute present on all symbolic macros.\\n67: *\\n68: * <p>This is similar to the visibility attribute for rules, but lacks the exec transitions.\\n69: */\\n70: public static final Attribute VISIBILITY_ATTRIBUTE =\\n71: Attribute.attr(\\"visibility\\", NODEP_LABEL_LIST)\\n72: .orderIndependent()\\n73: .nonconfigurable(\\"special attribute integrated more deeply into Bazel\'s core logic\\")\\n74: .build();\\n75: \\n76: private final String name;\\n77: private f...29. mcp__sourcegraph__sg_read_file
Input
{
"repo": "github.com/sg-evals/bazel--8.0.0",
"path": "src/main/java/com/google/devtools/build/lib/packages/BzlInitThreadContext.java",
"startLine": 1,
"endLine": 60
}Output
{'content': '{"text":"URL: https://demo.sourcegraph.com/github.com/sg-evals/bazel--8.0.0@12f256c9dffb17d03d47b3f06bf34f67c976e4aa/-/blob/src/main/java/com/google/devtools/build/lib/packages/BzlInitThreadContext.java%3FL1-60\\n1: // Copyright 2022 The Bazel Authors. All rights reserved.\\n2: //\\n3: // Licensed under the Apache License, Version 2.0 (the \\"License\\");\\n4: // you may not use this file except in compliance with the License.\\n5: // You may obtain a copy of the License at\\n6: //\\n7: // http://www.apache.org/licenses/LICENSE-2.0\\n8: //\\n9: // Unless required by applicable law or agreed to in writing, software\\n10: // distributed under the License is distributed on an \\"AS IS\\" BASIS,\\n11: // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\\n12: // See the License for the specific language governing permissions and\\n13: // limitations under the License.\\n14: \\n15: package com.google.devtools.build.lib.packages;\\n16: \\n17: import com.google.common.collect.ImmutableMap;\\n18: import com.google.devtools.build.lib.analysis.RuleDefinitionEnvironment;\\n19: import com.google.devtools.build.lib.cmdline.Label;\\n20: import com.google.devtools.build.lib.cmdline.RepositoryMapping;\\n21: import com.google.devtools.build.lib.cmdline.RepositoryName;\\n22: import com.google.devtools.build.lib.cmdline.StarlarkThreadContext;\\n23: import com.google.errorprone.annotations.CanIgnoreReturnValue;\\n24: import java.util.Optional;\\n25: import javax.annotation.Nullable;\\n26: import net.starlark.java.eval.EvalException;\\n27: import net.starlark.java.eval.Starlark;\\n28: import net.starlark.java.eval.StarlarkThread;\\n29: \\n30: /**\\n31: * Bazel application data for the Starlark thread that evaluates the top-level code in a .bzl (or\\n32: * .scl) module (i.e. when evaluating that module\'s global symbols).\\n33: */\\n34: public final class BzlInitThreadContext extends StarlarkThreadContext\\n35: implements RuleDefinitionEnvironment {\\n36: \\n37: private final Label bzlFile;\\n38: \\n39: /* Digest of the .bzl file being initialized along with all its transitive loads. */\\n40: private final byte[] transitiveDigest;\\n41: \\n42: // For storing the result of calling `visibility()`.\\n43: @Nullable private BzlVisibility bzlVisibility;\\n44: \\n45: private final RepositoryName toolsRepository;\\n46: \\n47: // TODO(b/192694287): Remove once we migrate all tests from the allowlist\\n48: private final Optional<Label> networkAllowlistForTests;\\n49: \\n50: // Used for `configuration_field`.\\n51: private final ImmutableMap<String, Class<?>> fragmentNameToClass;\\n52: \\n53: /**\\n54: * Constructs a new context for initializing a .bzl file.\\n55: *\\n56: * @param bzlFile the name of the .bzl being initialized\\n57: * @param transitiveDigest the hash of that file and its transitive load()s\\n58: * @param toolsRepository the name of the tools repository, such as \\"@bazel_tools\\"\\n59: * @param networkAllowlistForTests an allowlist for rule classes created by this thread\\n60: * @param fragmentNameToClass a map from configuration fragment name to configuration fragment\\n61: "}', 'structuredContent': {'text': 'URL: https://demo.sourcegraph.com/github.com/sg-evals/bazel--8.0.0@12f256c9dffb17d03d47b3f06bf34f67c976e4aa/-/blob/src/main/java/com/google/devtools/build/lib/packages/BzlInitThreadContext.java%3FL1-60\n1: // Copyright 2022 The Bazel Authors. All rights reserved.\n2: //\n3: // Licensed under the Apache License, Version 2.0 (the "License");\n4: // you may not use this file except in compliance with the License.\n5: // You may obtain a copy of the License at\n6: //\n7: // http://www.apache.org/licenses/LICENSE-2.0\n8: //\n9: // Unless required by applicable law or agreed to in writing, software\n10: // distributed under the License is distributed on an "AS IS" BASIS,\n11: // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n...30. mcp__sourcegraph__sg_list_files
Input
{
"repo": "github.com/sg-evals/bazel--8.0.0",
"path": "src/main/java/net/starlark/java"
}Output
{'content': '{"text":"src/main/java/net/starlark/java/annot/\\nsrc/main/java/net/starlark/java/cmd/\\nsrc/main/java/net/starlark/java/eval/\\nsrc/main/java/net/starlark/java/lib/\\nsrc/main/java/net/starlark/java/spelling/\\nsrc/main/java/net/starlark/java/syntax/\\nsrc/main/java/net/starlark/java/BUILD\\n"}', 'structuredContent': {'text': 'src/main/java/net/starlark/java/annot/\nsrc/main/java/net/starlark/java/cmd/\nsrc/main/java/net/starlark/java/eval/\nsrc/main/java/net/starlark/java/lib/\nsrc/main/java/net/starlark/java/spelling/\nsrc/main/java/net/starlark/java/syntax/\nsrc/main/java/net/starlark/java/BUILD\n'}}31. mcp__sourcegraph__sg_read_file
Input
{
"repo": "github.com/sg-evals/bazel--8.0.0",
"path": "src/main/java/com/google/devtools/build/lib/packages/StarlarkGlobals.java",
"startLine": 1,
"endLine": 80
}Output
{'content': '{"text":"URL: https://demo.sourcegraph.com/github.com/sg-evals/bazel--8.0.0@12f256c9dffb17d03d47b3f06bf34f67c976e4aa/-/blob/src/main/java/com/google/devtools/build/lib/packages/StarlarkGlobals.java%3FL1-80\\n1: // Copyright 2023 The Bazel Authors. All rights reserved.\\n2: //\\n3: // Licensed under the Apache License, Version 2.0 (the \\"License\\");\\n4: // you may not use this file except in compliance with the License.\\n5: // You may obtain a copy of the License at\\n6: //\\n7: // http://www.apache.org/licenses/LICENSE-2.0\\n8: //\\n9: // Unless required by applicable law or agreed to in writing, software\\n10: // distributed under the License is distributed on an \\"AS IS\\" BASIS,\\n11: // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\\n12: // See the License for the specific language governing permissions and\\n13: // limitations under the License.\\n14: \\n15: package com.google.devtools.build.lib.packages;\\n16: \\n17: import com.google.common.collect.ImmutableMap;\\n18: \\n19: /**\\n20: * A library of the fixed Starlark environment for various contexts.\\n21: *\\n22: * <p>This is the source of truth for what symbols are available in what Starlark contexts (BUILD,\\n23: * .bzl, etc.), before considering how symbols may be added by registering them on the rule class\\n24: * provider, or how symbols may be substituted by builtins injection. In other words, this is the\\n25: * starting point for defining the minimum Starlark environments that Bazel supports for BUILD\\n26: * files, .bzl files, etc. See {@link BazelStarlarkEnvironment} for the final determination of the\\n27: * environment after accounting for registered symbols and builtins injection.\\n28: *\\n29: * <p>This is split between an interface in the lib/packages/ directory and an implementation in the\\n30: * lib/analysis/starlark/ directory, in order to avoid new dependency edges from lib/packages/ to\\n31: * lib/analysis/.\\n32: */\\n33: public interface StarlarkGlobals {\\n34: \\n35: /**\\n36: * Returns a simple environment containing a few general utility modules, {@code depset}, and\\n37: * {@code select()}.\\n38: *\\n39: * <p>In general, if you need a Bazel-y Starlark environment and don\'t know what to choose, prefer\\n40: * to use this one for uniformity with as many other contexts as possible.\\n41: */\\n42: ImmutableMap<String, Object> getUtilToplevels();\\n43: \\n44: /**\\n45: * Similar to {@link #getUtilToplevels} but without {@code select()} and with {@code struct}. Used\\n46: * for cquery.\\n47: */\\n48: // TODO(bazel-team): Consider whether we should replace usage of this with getUtilTopLevels(), at\\n49: // the cost of the cquery dialect changing slightly, for the sake of uniformity and fewer\\n50: // kinds of environments.\\n51: ImmutableMap<String, Object> getUtilToplevelsForCquery();\\n52: \\n53: /**\\n54: * Returns the fixed top-levels for BUILD files that also happen to be fields of {@code native}.\\n55: * This does not include any native rules.\\n56: */\\n57: ImmutableMap<String, Object> getFixedBuildFileToplevelsSharedWithNative();\\n58: \\n59: /** Returns the fixed top-levels for BUILD files that are *not* also fields of {@code native}. */\\n60: ImmutableMap<String, Object> getFixedBuildFileToplevelsNotInNative();\\n61: \\n62: /** Returns the fixed top-levels for .bzl files, excluding the {@code native} object. */\\n63: ImmutableMap<String, Object> getFixedBzlToplevels();\\n64: \\n65: /** Returns the top-levels for .scl files. */\\n66: ImmutableMap<String, Object> getSclToplevels();\\n67: \\n68: /** Returns the top-levels for MODULE.bazel files and their imports. */\\n69: ImmutableMap<String, Object> getModuleToplevels();\\n70: \\n71: /** Returns the top-levels for REPO.bazel files. */\\n72: ImmutableMap<String, Object> getRepoToplevels();\\n73: \\n74: /** Returns the top-levels for VENDOR.bazel files. */\...32. mcp__sourcegraph__sg_keyword_search
Input
{
"query": "repo:^github.com/sg-evals/bazel--8.0.0$ \"implements StarlarkGlobals\" file:src/main/java"
}Output
{'content': '{"text":"# github.com/sg-evals/bazel--8.0.0 – src/main/java/com/google/devtools/build/lib/analysis/starlark/StarlarkGlobalsImpl.java\\n41: */\\n42: public final class StarlarkGlobalsImpl implements StarlarkGlobals {\\n43: \\n44: \\n"}', 'structuredContent': {'text': '# github.com/sg-evals/bazel--8.0.0 – src/main/java/com/google/devtools/build/lib/analysis/starlark/StarlarkGlobalsImpl.java\n41: */\n42: public final class StarlarkGlobalsImpl implements StarlarkGlobals {\n43: \n44: \n'}}33. mcp__sourcegraph__sg_keyword_search
Input
{
"query": "repo:^github.com/sg-evals/bazel--8.0.0$ \"class PackageThreadContext\" OR \"PackageBuildThreadContext\" file:src/main/java/com/google/devtools/build/lib/packages"
}Output
{'content': '{"text":"No results.\\n\\nNo results found."}', 'structuredContent': {'text': 'No results.\n\nNo results found.'}}34. Write
Input
{
"file_path": "/workspace/answer.json",
"content": "{\n \"files\": [\n {\"repo\": \"sg-evals/bazel--8.0.0\", \"path\": \"src/main/java/net/starlark/java/eval/StarlarkThread.java\"},\n {\"repo\": \"sg-evals/bazel--8.0.0\", \"path\": \"src/main/java/com/google/devtools/build/lib/packages/PackageFactory.java\"},\n {\"repo\": \"sg-evals/bazel--8.0.0\", \"path\": \"src/main/java/com/google/devtools/build/lib/skyframe/BzlLoadFunction.java\"},\n {\"repo\": \"sg-evals/bazel--8.0.0\", \"path\": \"src/main/java/com/google/devtools/build/lib/analysis/starlark/StarlarkRuleClassFunctions.java\"},\n {\"repo\": \"sg-evals/bazel--8.0.0\", \"path\": \"src/main/java/com/google/devtools/build/lib/packages/Package.java\"},\n {\"repo\": \"sg-evals/bazel--8.0.0\", \"path\": \"src/main/java/com/google/devtools/build/lib/packages/MacroClass.java\"},\n {\"repo\": \"sg-evals/bazel--8.0.0\", \"path\": \"src/main/java/com/google/devtools/build/lib/packages/RuleFunction.java\"},\n {\"repo\": \"sg-evals/bazel--8.0.0\", \"path\": \"src/main/java/com/google/devtools/build/lib/packages/RuleClass.java\"},\n {\"repo\": \"sg-evals/bazel--8.0.0\", \"path\": \"src/main/java/com/google/devtools/build/lib/packages/RuleFactory.java\"},\n {\"repo\": \"sg-evals/bazel--8.0.0\", \"path\": \"src/main/java/com/google/devtools/build/lib/packages/BazelStarlarkEnvironment.java\"},\n {\"repo\": \"sg-evals/bazel--8.0.0\", \"path\": \"src/main/java/com/google/devtools/build/lib/packages/StarlarkGlobals.java\"},\n {\"repo\": \"sg-evals/bazel--8.0.0\", \"path\": \"src/main/java/com/google/devtools/build/lib/analysis/starlark/StarlarkGlobalsImpl.java\"},\n {\"repo\": \"sg-evals/bazel--8.0.0\", \"path\": \"src/main/java/com/google/devtools/build/lib/packages/BzlInitThreadContext.java\"},\n {\"repo\": \"sg-evals/bazel--8.0.0\", \"path\": \"src/main/java/com/google/devtools/build/lib/starlarkbuildapi/StarlarkRuleFunctionsApi.java\"},\n {\"repo\": \"sg-evals/bazel--8.0.0\", \"path\": \"src/main/java/com/google/devtools/build/lib/packages/StarlarkNativeModule.java\"},\n {\"repo\": \"sg-evals/bazel--8.0.0\", \"path\": \"src/main/java/com/google/devtools/build/lib/packages/MacroInstance.java\"},\n {\"repo\": \"sg-evals/bazel--8.0.0\", \"path\": \"src/main/java/com/google/devtools/build/lib/packages/BuildGlobals.java\"},\n {\"repo\": \"sg-evals/bazel--8.0.0\", \"path\": \"src/main/java/com/google/devtools/build/lib/cmdline/StarlarkThreadContext.java\"},\n {\"repo\": \"sg-evals/bazel--8.0.0\", \"path\": \"src/main/java/net/starlark/java/eval/Starlark.java\"},\n {\"repo\": \"sg-evals/bazel--8.0.0\", \"path\": \"src/main/java/net/starlark/java/eval/Module.java\"},\n {\"repo\": \"sg-evals/bazel--8.0.0\", \"path\": \"src/main/java/net/starlark/java/eval/Eval.java\"},\n {\"repo\": \"sg-evals/bazel--8.0.0\", \"path\": \"src/main/java/com/google/devtools/build/lib/packages/TargetDefinitionContext.java\"},\n {\"repo\": \"sg-evals/bazel--8.0.0\", \"path\": \"src/main/java/com/google/devtools/build/lib/packages/WorkspaceFactory.java\"},\n {\"repo\": \"sg-evals/bazel--8.0.0\", \"path\": \"src/main/java/com/google/devtools/build/lib/skyframe/StarlarkBuiltinsFunction.java\"},\n {\"repo\": \"sg-evals/bazel--8.0.0\", \"path\": \"src/main/java/com/google/devtools/build/lib/packages/AutoloadSymbols.java\"}\n ],\n \"symbols\": [\n {\"repo\": \"sg-evals/bazel--8.0.0\", \"path\": \"src/main/java/net/starlark/java/eval/StarlarkThread.java\", \"symbol\": \"StarlarkThread\"},\n {\"repo\": \"sg-evals/bazel--8.0.0\", \"path\": \"src/main/java/com/google/devtools/build/lib/packages/PackageFactory.java\", \"symbol\": \"PackageFactory\"},\n {\"repo\": \"sg-evals/bazel--8.0.0\", \"path\": \"src/main/java/com/google/devtools/build/lib/skyframe/BzlLoadFunction.java\", \"symbol\": \"BzlLoadFunction\"},\n {\"repo\": \"sg-evals/bazel--8.0.0\", \"path\": \"src/main/java/com/google/devtools/build/lib/analysis/starlark/StarlarkRuleCl
...Output
{'type': 'create', 'filePath': '/workspace/answer.json', 'content': '{\n "files": [\n {"repo": "sg-evals/bazel--8.0.0", "path": "src/main/java/net/starlark/java/eval/StarlarkThread.java"},\n {"repo": "sg-evals/bazel--8.0.0", "path": "src/main/java/com/google/devtools/build/lib/packages/PackageFactory.java"},\n {"repo": "sg-evals/bazel--8.0.0", "path": "src/main/java/com/google/devtools/build/lib/skyframe/BzlLoadFunction.java"},\n {"repo": "sg-evals/bazel--8.0.0", "path": "src/main/java/com/google/devtools/build/lib/analysis/starlark/StarlarkRuleClassFunctions.java"},\n {"repo": "sg-evals/bazel--8.0.0", "path": "src/main/java/com/google/devtools/build/lib/packages/Package.java"},\n {"repo": "sg-evals/bazel--8.0.0", "path": "src/main/java/com/google/devtools/build/lib/packages/MacroClass.java"},\n {"repo": "sg-evals/bazel--8.0.0", "path": "src/main/java/com/google/devtools/build/lib/packages/RuleFunction.java"},\n {"repo": "sg-evals/bazel--8.0.0", "path": "src/main/java/com/google/devtools/build/lib/packages/RuleClass.java"},\n {"repo": "sg-evals/bazel--8.0.0", "path": "src/main/java/com/google/devtools/build/lib/packages/RuleFactory.java"},\n {"repo": "sg-evals/bazel--8.0.0", "path": "src/main/java/com/google/devtools/build/lib/packages/BazelStarlarkEnvironment.java"},\n {"repo": "sg-evals/bazel--8.0.0", "path": "src/main/java/com/google/devtools/build/lib/packages/StarlarkGlobals.java"},\n {"repo": "sg-evals/bazel--8.0.0", "path": "src/main/java/com/google/devtools/build/lib/analysis/starlark/StarlarkGlobalsImpl.java"},\n {"repo": "sg-evals/bazel--8.0.0", "path": "src/main/java/com/google/devtools/build/lib/packages/BzlInitThreadContext.java"},\n {"repo": "sg-evals/bazel--8.0.0", "path": "src/main/java/com/google/devtools/build/lib/starlarkbuildapi/StarlarkRuleFunctionsApi.java"},\n {"repo": "sg-evals/bazel--8.0.0", "path": "src/main/java/com/google/devtools/build/lib/packages/StarlarkNativeModule.java"},\n {"repo": "sg-evals/bazel--8.0.0", "path": "src/main/java/com/google/devtools/build/lib/packages/MacroInstance.java"},\n {"repo": "sg-evals/bazel--8.0.0", "path": "src/main/java/com/google/devtools/build/lib/packages/BuildGlobals.java"},\n {"repo": "sg-evals/bazel--8.0.0", "path": "src/main/java/com/google/devtools/build/lib/cmdline/StarlarkThreadContext.java"},\n {"repo": "sg-evals/bazel--8.0.0", "path": "src/main/java/net/starlark/java/eval/Starlark.java"},\n {"repo": "sg-evals/bazel--8.0.0", "path": "src/main/java/net/starlark/java/eval/Module.java"},\n {"repo": "sg-evals/bazel--8.0.0", "path": "src/main/java/net/starlark/java/eval/Eval.java"},\n {"repo": "sg-evals/bazel--8.0.0", "path": "src/main/java/com/google/devtools/build/lib/packages/TargetDefinitionContext.java"},\n {"repo": "sg-evals/bazel--8.0.0", "path": "src/main/java/com/google/devtools/build/lib/packages/WorkspaceFactory.java"},\n {"repo": "sg-evals/bazel--8.0.0", "path": "src/main/java/com/google/devtools/build/lib/skyframe/StarlarkBuiltinsFunction.java"},\n {"repo": "sg-evals/bazel--8.0.0", "path": "src/main/java/com/google/devtools/build/lib/packages/AutoloadSymbols.java"}\n ],\n "symbols": [\n {"repo": "sg-evals/bazel--8.0.0", "path": "src/main/java/net/starlark/java/eval/StarlarkThread.java", "symbol": "StarlarkThread"},\n {"repo": "sg-evals/bazel--8.0.0", "path": "src/main/java/com/google/devtools/build/lib/packages/PackageFactory.java", "symbol": "PackageFactory"},\n {"repo": "sg-evals/bazel--8.0.0", "path": "src/main/java/com/google/devtools/build/lib/skyframe/BzlLoadFunction.java", "symbol": "BzlLoadFunction"},\n {"repo": "sg-evals/bazel--8.0.0", "path": "src/main/java/com/google/devtools/build/lib/analysis/starlark/StarlarkRuleClassFunctions.java", "symbol": "StarlarkRuleClassFunctions"},\n {"repo": "sg-evals/bazel--8.0.0", "path": "src/main/java/com/google/devtools/build/lib/packages/Package.java", "symbol": "Package.Builder"},\n {"repo": "sg-evals/baze...