Back to Bazel

Starlark Overview

docs/versions/6.3.0/rules/lib/starlark-overview.mdx

9.1.018.0 KB
Original Source
<html devsite> <head> <meta name="project_path" value="/_project.yaml"> <meta name="book_path" value="/versions/6.3.0/_book.yaml"> </head> <body> <h1 class="page-title">One-Page Overview</h1>

A list of all modules and globals that are available:

<h2>

<a href="/versions/6.3.0/rules/lib/globals">Global Functions</a>

</h2> <ul> <li>
<a href="/versions/6.3.0/rules/lib/globals#all">all</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/globals#analysis_test_transition">analysis_test_transition</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/globals#any">any</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/globals#archive_override">archive_override</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/globals#aspect">aspect</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/globals#bazel_dep">bazel_dep</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/globals#bind">bind</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/globals#bool">bool</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/globals#configuration_field">configuration_field</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/globals#depset">depset</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/globals#dict">dict</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/globals#dir">dir</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/globals#enumerate">enumerate</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/globals#exec_group">exec_group</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/globals#fail">fail</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/globals#float">float</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/globals#getattr">getattr</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/globals#git_override">git_override</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/globals#hasattr">hasattr</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/globals#hash">hash</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/globals#int">int</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/globals#len">len</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/globals#list">list</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/globals#local_path_override">local_path_override</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/globals#max">max</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/globals#min">min</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/globals#module">module</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/globals#module_extension">module_extension</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/globals#multiple_version_override">multiple_version_override</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/globals#print">print</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/globals#provider">provider</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/globals#range">range</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/globals#register_execution_platforms()">register_execution_platforms()</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/globals#register_execution_platforms(dev_dependency)">register_execution_platforms(dev_dependency)</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/globals#register_toolchains()">register_toolchains()</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/globals#register_toolchains(dev_dependency)">register_toolchains(dev_dependency)</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/globals#repository_rule(implementation, attrs, local, environ, configure, remotable, doc)">repository_rule(implementation, attrs, local, environ, configure, remotable, doc)</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/globals#repository_rule(implementation, attrs, local, environ, configure, remotable, doc)">repository_rule(implementation, attrs, local, environ, configure, remotable, doc)</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/globals#repr">repr</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/globals#reversed">reversed</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/globals#rule">rule</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/globals#select">select</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/globals#single_version_override">single_version_override</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/globals#sorted">sorted</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/globals#str">str</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/globals#tag_class">tag_class</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/globals#tuple">tuple</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/globals#type">type</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/globals#use_extension">use_extension</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/globals#use_repo">use_repo</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/globals#visibility">visibility</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/globals#workspace">workspace</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/globals#zip">zip</a>
</li> </ul> <h2>

<a href="/versions/6.3.0/rules/lib/globals">Global Constants</a>

</h2> <ul> </ul> <h2> Global Modules </h2> <ul> <li>
<a href="/versions/6.3.0/rules/lib/AnalysisTestResultInfo">AnalysisTestResultInfo</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/apple_common">apple_common</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/apple_toolchain">apple_toolchain</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/attr">attr</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/bazel_module">bazel_module</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/bazel_module_tag">bazel_module_tag</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/bazel_module_tags">bazel_module_tags</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/cc_common">cc_common</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/cmd_helper">cmd_helper</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/config_common">config_common</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/coverage_common">coverage_common</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/java_common">java_common</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/module_extension">module_extension</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/platform_common">platform_common</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/proto_common">proto_common</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/tag_class">tag_class</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/TemplateDict">TemplateDict</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/testing">testing</a>
</li> </ul> <h2>

<a href="/versions/6.3.0/rules/lib/starlark-configuration-fragment">Configuration Fragments</a>

</h2> <ul> <li>
<a href="/versions/6.3.0/rules/lib/apple">apple</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/coverage">coverage</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/cpp">cpp</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/go">go</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/j2objc">j2objc</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/java">java</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/objc">objc</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/platform">platform</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/proto">proto</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/py">py</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/swift">swift</a>
</li> </ul> <h2>

<a href="/versions/6.3.0/rules/lib/starlark-provider">Providers</a>

</h2> <ul> <li>
<a href="/versions/6.3.0/rules/lib/AppleDebugOutputs">AppleDebugOutputs</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/AppleDynamicFramework">AppleDynamicFramework</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/AppleExecutableBinary">AppleExecutableBinary</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/BaselineProfileProvider">BaselineProfileProvider</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/CcInfo">CcInfo</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/CcStarlarkApiProvider">CcStarlarkApiProvider</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/CcToolchainConfigInfo">CcToolchainConfigInfo</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/CcToolchainInfo">CcToolchainInfo</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/CompilationContext">CompilationContext</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/ConstraintCollection">ConstraintCollection</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/ConstraintSettingInfo">ConstraintSettingInfo</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/ConstraintValueInfo">ConstraintValueInfo</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/DebugPackageInfo">DebugPackageInfo</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/DefaultInfo">DefaultInfo</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/ExecutionInfo">ExecutionInfo</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/FeatureFlagInfo">FeatureFlagInfo</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/file_provider">file_provider</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/FilesToRunProvider">FilesToRunProvider</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/GeneratedExtensionRegistryProvider">GeneratedExtensionRegistryProvider</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/IncompatiblePlatformProvider">IncompatiblePlatformProvider</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/InstrumentedFilesInfo">InstrumentedFilesInfo</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/java_compilation_info">java_compilation_info</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/java_output_jars">java_output_jars</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/JavaInfo">JavaInfo</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/JavaPluginData">JavaPluginData</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/JavaPluginInfo">JavaPluginInfo</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/JavaRuntimeInfo">JavaRuntimeInfo</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/JavaToolchainInfo">JavaToolchainInfo</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/ObjcProvider">ObjcProvider</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/OutputGroupInfo">OutputGroupInfo</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/PlatformInfo">PlatformInfo</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/ProguardSpecProvider">ProguardSpecProvider</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/ProtoInfo">ProtoInfo</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/ProtoRegistryProvider">ProtoRegistryProvider</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/PyInfo">PyInfo</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/PyRuntimeInfo">PyRuntimeInfo</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/RunEnvironmentInfo">RunEnvironmentInfo</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/TemplateVariableInfo">TemplateVariableInfo</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/ToolchainInfo">ToolchainInfo</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/ToolchainTypeInfo">ToolchainTypeInfo</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/XcodeProperties">XcodeProperties</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/XcodeVersionConfig">XcodeVersionConfig</a>
</li> </ul> <h2>

<a href="/versions/6.3.0/rules/lib/starlark-builtin">Built-in Types</a>

</h2> <ul> <li>
<a href="/versions/6.3.0/rules/lib/Action">Action</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/actions">actions</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/apple_bitcode_mode">apple_bitcode_mode</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/apple_platform">apple_platform</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/apple_platform_type">apple_platform_type</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/Args">Args</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/Aspect">Aspect</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/Attribute">Attribute</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/BuildSetting">BuildSetting</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/CcCompilationOutputs">CcCompilationOutputs</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/CcLinkingOutputs">CcLinkingOutputs</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/config">config</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/configuration">configuration</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/ctx">ctx</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/depset">depset</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/DirectoryExpander">DirectoryExpander</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/DottedVersion">DottedVersion</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/exec_result">exec_result</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/ExecGroupCollection">ExecGroupCollection</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/ExecGroupContext">ExecGroupContext</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/ExecTransitionFactory">ExecTransitionFactory</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/extension_metadata">extension_metadata</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/FeatureConfiguration">FeatureConfiguration</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/File">File</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/fragments">fragments</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/java_annotation_processing">java_annotation_processing</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/java_output">java_output</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/Label">Label</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/LateBoundDefault">LateBoundDefault</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/LibraryToLink">LibraryToLink</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/License">License</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/LinkerInput">LinkerInput</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/LinkingContext">LinkingContext</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/module_ctx">module_ctx</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/native">native</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/native_rule_transition">native_rule_transition</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/path">path</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/ProtoModule">ProtoModule</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/Provider">Provider</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/repository_ctx">repository_ctx</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/repository_os">repository_os</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/repository_rule">repository_rule</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/root">root</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/rule">rule</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/rule_attributes">rule_attributes</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/runfiles">runfiles</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/struct">struct</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/SymlinkEntry">SymlinkEntry</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/Target">Target</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/toolchain_type">toolchain_type</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/ToolchainContext">ToolchainContext</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/transition">transition</a>
</li> </ul> <h2>

<a href="/versions/6.3.0/rules/lib/starlark-core">Core Starlark data types</a>

</h2> <ul> <li>
<a href="/versions/6.3.0/rules/lib/bool">bool</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/builtin_function_or_method">builtin_function_or_method</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/dict">dict</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/float">float</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/function">function</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/int">int</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/json">json</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/list">list</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/range">range</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/string">string</a>
</li> <li>
<a href="/versions/6.3.0/rules/lib/tuple">tuple</a>
</li> </ul> </body> </html>