@typed_pos_args('install_man', varargs=(str, mesonlib.File))
@typed_kwargs('install_man', KwargInfo('install_dir', (str, NoneType)), KwargInfo('locale', (str, NoneType), since='0.58.0'), INSTALL_MODE_KW.evolve(since='0.47.0'))
def func_install_man(self, node: mparser.BaseNode, args: T.Tuple[T.List['mesonlib.FileOrString']], kwargs: 'kwargs.FuncInstallMan') -> build.Man:
    sources = self.source_strings_to_files(args[0])
    for s in sources:
        try:
            num = int(s.rsplit('.', 1)[(- 1)])
        except (IndexError, ValueError):
            num = 0
        if (not (1 <= num <= 9)):
            raise InvalidArguments('Man file must have a file extension of a number between 1 and 9')
    m = build.Man(sources, kwargs['install_dir'], kwargs['install_mode'], self.subproject, kwargs['locale'])
    self.build.man.append(m)
    return m
@typed_pos_args('install_man', varargs=(str, mesonlib.File))
@typed_kwargs('install_man', KwargInfo('install_dir', (str, NoneType)), KwargInfo('locale', (str, NoneType), since='0.58.0'), INSTALL_MODE_KW.evolve(since='0.47.0'))
def func_install_man(self, node: mparser.BaseNode, args: T.Tuple[T.List['mesonlib.FileOrString']], kwargs: 'kwargs.FuncInstallMan') -> build.Man:
    sources = self.source_strings_to_files(args[0])
    for s in sources:
        try:
            num = int(s.rsplit('.', 1)[(- 1)])
        except (IndexError, ValueError):
            num = 0
        if (not (1 <= num <= 9)):
            raise InvalidArguments('Man file must have a file extension of a number between 1 and 9')
    m = build.Man(sources, kwargs['install_dir'], kwargs['install_mode'], self.subproject, kwargs['locale'])
    self.build.man.append(m)
    return m