xref: /aosp_15_r20/external/bazelbuild-rules_cc/cc/toolchains/format.bzl (revision eed53cd41c5909d05eedc7ad9720bb158fd93452)
1# Copyright 2024 The Bazel Authors. All rights reserved.
2#
3# Licensed under the Apache License, Version 2.0 (the "License");
4# you may not use this file except in compliance with the License.
5# You may obtain a copy of the License at
6#
7#    http://www.apache.org/licenses/LICENSE-2.0
8#
9# Unless required by applicable law or agreed to in writing, software
10# distributed under the License is distributed on an "AS IS" BASIS,
11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12# See the License for the specific language governing permissions and
13# limitations under the License.
14"""Functions to format arguments for the cc toolchain"""
15
16def format_arg(format, value = None):
17    """Generate metadata to format a variable with a given value.
18
19    Args:
20      format: (str) The format string
21      value: (Optional[Label]) The variable to format. Any is used because it can
22        be any representation of a variable.
23    Returns:
24      A struct corresponding to the formatted variable.
25    """
26    return struct(format_type = "format_arg", format = format, value = value)
27