umt_rust 0.3.0

UMT is a collection of useful functions that I personally created.
Documentation
# CLAUDE.md

This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.

## Common Development Commands

**Build and Test:**

- `cargo build` - Build the library
- `cargo build --release` - Build optimized release version
- `cargo test` - Run all tests
- `cargo test test_name` - Run specific test
- `cargo bench` - Run benchmarks using Criterion framework
- `cargo fmt` - Format code according to rustfmt.toml
- `cargo clippy` - Run linter

**Documentation:**

- `cargo doc --open` - Generate and view documentation

## Code Architecture

This is a mathematical utility library (UMT - Ultimate Math Tools) with two main modules:

### Module Structure

- `array/` - Array manipulation utilities (range generation, optimized sorting)
- `math/` - Mathematical functions (statistics, number theory, conversions)

Each module follows the pattern:

- Individual function files (e.g., `average.rs`, `gcd.rs`)
- `mod.rs` that re-exports all functions with `pub use`
- Comprehensive test coverage in `tests/` directory

### Code Conventions

- All public functions prefixed with `umt_` (e.g., `umt_average`, `umt_gcd`)
- Performance-critical functions use `#[inline]` attribute
- Comprehensive documentation with Arguments/Returns sections
- Zero runtime dependencies policy
- Edge case handling (NaN, empty arrays, etc.)

### Testing Patterns

- Each function has dedicated test file (`test_function_name.rs`)
- Tests include edge cases, random data, and performance validation
- Benchmarks for performance-critical functions

## 言語設定 / Language Settings

This project supports both English and Japanese:

- コード内の説明やドキュメントは英語で記述されています
- 開発者は日本語でのコミュニケーションを希望しています
- When requested, respond in Japanese