MCPcopy
hub / github.com/nonebot/nonebot2 / ArgumentParser

Class ArgumentParser

nonebot/rule.py:442–519  ·  view source on GitHub ↗

`shell_like` 命令参数解析器,解析出错时不会退出程序。 支持 {ref}`nonebot.adapters.Message` 富文本解析。 用法: 用法与 `argparse.ArgumentParser` 相同, 参考文档: [argparse](https://docs.python.org/3/library/argparse.html)

Source from the content-addressed store, hash-verified

440
441
442class ArgumentParser(ArgParser):
443 """`shell_like` 命令参数解析器,解析出错时不会退出程序。
444
445 支持 {ref}`nonebot.adapters.Message` 富文本解析。
446
447 用法:
448 用法与 `argparse.ArgumentParser` 相同,
449 参考文档: [argparse](https://docs.python.org/3/library/argparse.html)
450 """
451
452 if TYPE_CHECKING:
453
454 @overload
455 def parse_known_args(
456 self,
457 args: Sequence[str | MessageSegment] | None = None,
458 namespace: None = None,
459 ) -> tuple[Namespace, list[str | MessageSegment]]: ...
460
461 @overload
462 def parse_known_args(
463 self, args: Sequence[str | MessageSegment] | None, namespace: T
464 ) -> tuple[T, list[str | MessageSegment]]: ...
465
466 @overload
467 def parse_known_args(
468 self, *, namespace: T
469 ) -> tuple[T, list[str | MessageSegment]]: ...
470
471 def parse_known_args( # pyright: ignore[reportIncompatibleMethodOverride]
472 self,
473 args: Sequence[str | MessageSegment] | None = None,
474 namespace: T | None = None,
475 ) -> tuple[Namespace | T, list[str | MessageSegment]]: ...
476
477 @overload
478 def parse_args(
479 self,
480 args: Sequence[str | MessageSegment] | None = None,
481 namespace: None = None,
482 ) -> Namespace: ...
483
484 @overload
485 def parse_args(
486 self, args: Sequence[str | MessageSegment] | None, namespace: T
487 ) -> T: ...
488
489 @overload
490 def parse_args(self, *, namespace: T) -> T: ...
491
492 def parse_args(
493 self,
494 args: Sequence[str | MessageSegment] | None = None,
495 namespace: T | None = None,
496 ) -> Namespace | T:
497 result, argv = self.parse_known_args(args, namespace)
498 if argv:
499 msg = gettext("unrecognized arguments: %s")

Callers 1

test_shell_commandFunction · 0.90

Calls

no outgoing calls

Tested by 1

test_shell_commandFunction · 0.72