# Generated by detroit
# See https://github.com/bourbonut/detroit/tree/main/api_maker

from functools import partial
from operator import is_not

class ribbonArrow:
    def __init__(self, content="ribbonArrow"):
        self.content = content

    def __repr__(self):
        return self.content

    def __str__(self):
        return self.content

    def __call__(self, *args):
        arguments = ", ".join(map(repr, args))
        return f"{self}({arguments})"

    def headRadius(self, radius=None):
        """
        Source · If radius is specified, sets the arrowhead radius accessor to the specified
        function and returns this ribbon generator. If radius is not specified, returns the
        current arrowhead radius accessor, which defaults to:
        .. code:: javascript

            function headRadius() {
              return 10;
            }


        See more informations `here <https://d3js.org/d3-chord/ribbon#ribbonArrow_headRadius>`_.
        """
        arguments = ", ".join(map(repr, filter(partial(is_not, None), (radius,))))
        return ribbonArrow(content=f"{self.content}.headRadius({arguments})")

