From 5290a2023875beb88e28ab9c8efb9b5828fcb8ce Mon Sep 17 00:00:00 2001 From: Aleksei Lisikhin Date: Mon, 30 Mar 2026 18:22:54 +0700 Subject: [PATCH] docs: add missed doc strings --- mahjong/hand_calculating/yaku_config.py | 6 ++++++ mahjong/hand_calculating/yaku_list/__init__.py | 10 ++++++++++ mahjong/hand_calculating/yaku_list/yakuman/__init__.py | 7 +++++++ pyproject.toml | 2 -- 4 files changed, 23 insertions(+), 2 deletions(-) diff --git a/mahjong/hand_calculating/yaku_config.py b/mahjong/hand_calculating/yaku_config.py index 97e2290..73d2632 100644 --- a/mahjong/hand_calculating/yaku_config.py +++ b/mahjong/hand_calculating/yaku_config.py @@ -176,6 +176,12 @@ class YakuConfig: """ def __init__(self) -> None: + """ + Instantiate one instance of every yaku and yakuman for condition checking. + + Attributes are organized by han value: situational yaku, 1-han through + 6-han pattern yaku, yakuman, double yakuman, yakuman situations, and bonus dora. + """ # Yaku situations self.tsumo = Tsumo() self.riichi = Riichi() diff --git a/mahjong/hand_calculating/yaku_list/__init__.py b/mahjong/hand_calculating/yaku_list/__init__.py index 8c6420f..17e5628 100644 --- a/mahjong/hand_calculating/yaku_list/__init__.py +++ b/mahjong/hand_calculating/yaku_list/__init__.py @@ -1,3 +1,13 @@ +""" +Concrete :class:`~mahjong.hand_calculating.yaku.Yaku` subclasses for standard yaku (non-yakuman). + +Each class implements :meth:`~mahjong.hand_calculating.yaku.Yaku.is_condition_met` +to test whether the pattern is present in a given hand decomposition. + +All classes are re-exported here for convenient access via +``from mahjong.hand_calculating.yaku_list import ``. +""" + from mahjong.hand_calculating.yaku_list.aka_dora import AkaDora from mahjong.hand_calculating.yaku_list.chankan import Chankan from mahjong.hand_calculating.yaku_list.chantai import Chantai diff --git a/mahjong/hand_calculating/yaku_list/yakuman/__init__.py b/mahjong/hand_calculating/yaku_list/yakuman/__init__.py index c1092d5..023af43 100644 --- a/mahjong/hand_calculating/yaku_list/yakuman/__init__.py +++ b/mahjong/hand_calculating/yaku_list/yakuman/__init__.py @@ -1,3 +1,10 @@ +""" +Concrete :class:`~mahjong.hand_calculating.yaku.Yaku` subclasses for yakuman-level patterns. + +All classes are re-exported here for convenient access via +``from mahjong.hand_calculating.yaku_list.yakuman import ``. +""" + from mahjong.hand_calculating.yaku_list.yakuman.chiihou import Chiihou from mahjong.hand_calculating.yaku_list.yakuman.chinroto import Chinroutou from mahjong.hand_calculating.yaku_list.yakuman.chuuren_poutou import ChuurenPoutou diff --git a/pyproject.toml b/pyproject.toml index 4e197f6..8f77f1a 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -91,7 +91,6 @@ ignore = [ "FBT002", # boolean-default-value-positional-argument "FBT003", # boolean-positional-value-in-call "D100", # missing-docstring-in-public-module - "D104", # missing-docstring-in-public-package ] [tool.ruff.lint.pycodestyle] @@ -112,7 +111,6 @@ convention = "pep257" "D", # pydocstyle "S101", # assert ] -"./mahjong/hand_calculating/yaku_config.py" = ["D107"] # __init__ only sets yaku instances [tool.ruff.lint.per-file-ignores] "mahjong/hand_calculating/yaku_list/*.py" = ["ARG002"] # for `is_condition_met()`