.PHONY: doc doc-internal doc-public doc-open doc-internal-open clean test lint fmt help
help:
@echo "Available targets:"
@echo " doc-public - Build public API documentation (clean, user-facing)"
@echo " doc-internal - Build internal documentation (includes implementation details and private items)"
@echo " doc-open - Build and open public API documentation"
@echo " doc-internal-open - Build and open internal documentation (with private items)"
@echo " doc - Build both public and internal documentation"
@echo " clean - Clean build artifacts"
@echo " test - Run tests"
@echo " lint - Run clippy linter"
@echo " fmt - Format code"
@echo " help - Show this help message"
doc-public:
@echo "Building public API documentation (clean, user-facing)..."
cargo doc --package thag_profiler --features document-features,full_profiling,debug_logging --no-deps
doc-internal:
@echo "Building internal documentation (includes implementation details and private items)..."
cargo doc --package thag_profiler --features document-features,full_profiling,debug_logging,internal_docs --no-deps --document-private-items
doc-open:
@echo "Building and opening public API documentation..."
cargo doc --package thag_profiler --features document-features,full_profiling,debug_logging --no-deps --open
doc-internal-open:
@echo "Building and opening internal documentation..."
cargo doc --package thag_profiler --features document-features,full_profiling,debug_logging,internal_docs --no-deps --document-private-items --open
doc: doc-public doc-internal
@echo "Both documentation modes built successfully!"
clean:
cargo clean --package thag_profiler
test:
cargo test --package thag_profiler
lint:
cargo clippy --package thag_profiler --all-targets --all-features
fmt:
cargo fmt --package thag_profiler
docs: doc
doc-pub: doc-public
doc-int: doc-internal