def gen_function_call(func_attrs, indent="  "):
    """Generates function call.

    Parameters
    ----------
    func_attrs : Dict[str, Any]
        Stores the operation attributes.
    indent : str, optional
        Indent for template, by default "  ".

    Returns
    -------
    str
        Rendered function call.
    """
    slice_ops = func_attrs["slice_ops"]
    assert len(slice_ops) >= 1
    start_indices = [op._attrs["start_indices"] for op in slice_ops]
    end_indices = [op._attrs["end_indices"] for op in slice_ops]
    return slice_common.gen_function_call(
        backend_spec=CUDASpec(),
        func_name=func_attrs["name"],
        inputs=func_attrs["inputs"],
        outputs=func_attrs["outputs"],
        start_indices=start_indices,
        end_indices=end_indices,
        dim=func_attrs["scatter_dim"],
        indent=indent,
    )
Generates function call.

Parameters
----------
func_attrs : Dict[str, Any]
Stores the operation attributes.
indent : str, optional
Indent for template, by default "  ".

Returns
-------
str
Rendered function call.
python/aitemplate/backend/cuda/tensor/slice_scatter.py