Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 12 additions & 0 deletions mahjong/hand_calculating/yaku.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,15 @@
"""
Abstract base for yaku pattern detection.

Defines the :class:`Yaku` base class that every concrete yaku inherits.
Each subclass represents one scoring pattern (e.g., tanyao, riichi, kokushi musou)
and implements :meth:`~Yaku.is_condition_met` to test whether the pattern is
present in a given hand decomposition.

Concrete yaku are located in the :mod:`~mahjong.hand_calculating.yaku_list`
and :mod:`~mahjong.hand_calculating.yaku_list.yakuman` packages.
"""

from abc import ABC, abstractmethod
from collections.abc import Collection, Sequence

Expand Down
2 changes: 2 additions & 0 deletions mahjong/hand_calculating/yaku_list/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@
Each class implements :meth:`~mahjong.hand_calculating.yaku.Yaku.is_condition_met`
to test whether the pattern is present in a given hand decomposition.

For yakuman-level patterns see :mod:`~mahjong.hand_calculating.yaku_list.yakuman`.

All classes are re-exported here for convenient access via
``from mahjong.hand_calculating.yaku_list import <ClassName>``.
"""
Expand Down
2 changes: 2 additions & 0 deletions mahjong/hand_calculating/yaku_list/yakuman/__init__.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
"""
Concrete :class:`~mahjong.hand_calculating.yaku.Yaku` subclasses for yakuman-level patterns.

Yakuman are the highest-value hands in mahjong.

All classes are re-exported here for convenient access via
``from mahjong.hand_calculating.yaku_list.yakuman import <ClassName>``.
"""
Expand Down
Loading