Skip to content

feat: FT209 functools — partial / lru_cache / reduce / wraps#581

Merged
hideyukiMORI merged 1 commit into
mainfrom
feat/580-ft209-functools
May 22, 2026
Merged

feat: FT209 functools — partial / lru_cache / reduce / wraps#581
hideyukiMORI merged 1 commit into
mainfrom
feat/580-ft209-functools

Conversation

@hideyukiMORI
Copy link
Copy Markdown
Owner

Summary

  • partial: キーワード引数固定の累乗関数(ファクトリパターンの実証)
  • lru_cache: 再帰フィボナッチのメモ化 — fib(50) を 51 回の計算で達成
  • reduce: sum / product / max / min の逐次集約(初期値必須パターン確立)
  • wraps: デコレータのメタデータ保持(__name__ / __doc__ / __wrapped__
  • Python 3.14: @wraps 使用時の type: ignore[return-value] が不要になることを確認
  • *args: object で ruff ANN401 違反を回避(Any は禁止)

Closes #580

Test plan

  • uv run pytest — 22 passed in sandbox
  • uv run mypy — no issues
  • uv run ruff check / ruff format --check — all passed
  • メインプロジェクト: 456 tests passed, 93.94% coverage

🤖 Generated with Claude Code

…580)

- partial: キーワード引数固定の累乗関数(ファクトリパターン)
- lru_cache: 再帰フィボナッチのメモ化(fib(50)を51回の計算で達成)
- reduce: sum/product/max/min の逐次集約(初期値必須パターン確立)
- wraps: デコレータのメタデータ保持(__name__/__doc__/__wrapped__)
- Python 3.14: @wraps 使用時の type: ignore が不要になることを確認
- *args: object でANN401違反回避(Any は禁止)
- 22 tests passed / mypy strict / ruff clean

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@hideyukiMORI hideyukiMORI merged commit 7eeebfe into main May 22, 2026
2 checks passed
@hideyukiMORI hideyukiMORI deleted the feat/580-ft209-functools branch May 22, 2026 12:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

FT209: functools モジュール — partial / lru_cache / reduce / wraps

1 participant