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