[package]
name = "pausable_clock"
version = "1.0.2"
authors = ["Kevin Guthrie <kevin.guthrie@gmail.com>"]
edition = "2018"
license = "MIT OR Apache-2.0"
description = "A source of time information that can be paused and resumed"
readme = "README.md"
repository = "https://github.com/RookAndPawn/pausable_clock"
keywords = ["clock", "time", "simulation", "concurrent"]
categories = ["concurrency", "date-and-time"]

[dependencies]
portable-atomic = { version="1.10.0", optional = true }
web-time = { version = "1.1.0", optional = true }
document-features = { version = "0.2", optional = true }

[dev-dependencies]
criterion = "0.5.1"

[target.'cfg(loom)'.dependencies]
loom = "0.7.2"

[features]
default = []

## For platforms where `std::sync::atomic` is not available, you can enable this
## feature to use atomic primitives from 
## [`portable-atomic`](https://crates.io/crates/portable-atomic) instead
portable_atomic = ["portable-atomic"]

## For platforms where `std::time` is not available (like WASM), you can enable 
## this feature to use time primitives from 
## [`web-time`](https://crates.io/crates/web-time) instead
web_time = ["web-time"]

features = ["document-features"]

[[bench]]
name = "now_bench"
harness = false

[[bench]]
name = "run_unpausable_bench"
harness = false