content: [package]
  name = "mfio"
  version = "0.1.0"
  rust-version = "1.84"
  edition = "2021"
  authors = ["Aurimas Blažulionis <0x60@pm.me>"]
  license = "MIT"
  repository = "https://github.com/memflow/mfio"
  documentation = "https://docs.rs/mfio"
  description = "Flexible completion I/O primitives"
  keywords = [ "mfio", "memflow", "async", "completion", "io" ]
  categories = [ "asynchronous", "no-std", "concurrency" ]
  readme = "../README.md"
  
  [package.metadata.docs.rs]
  features = ["default", "tokio", "async-io"]
  rustdoc-args = ["--cfg", "docsrs"]
  
  [lib]
  bench = false
  
  [[bench]]
  name = "main"
  harness = false
  
  [dependencies]
  futures = { version = "0.3", default-features = false }
  parking_lot = { version = "0.12", optional = true }
  pin-project = "1.0"
  tarc = { version = "~0.1.6", default-features = false, features = ["unwind"] }
  bytemuck = "1"
  cglue = { version = "~0.3.5", features = ["task"], default-features = false }
  abi_stable = { version = "0.11", default-features = false, optional = true, features = ["rust_1_84"] }
  #abi_stable22 = { package = "abi_stable", version = "0.11", features = ["rust_1_84"] }
  mfio-derive = { version = "0.1", path = "../mfio-derive" }
  http = { version = "0.2", optional = true }
  log = "0.4"
  rangemap = "1"
  num = { version = "0.4", default-features = false }
  atomic-traits = { version = "0.3", default-features = false }
  # This is only needed when std feature is disabled, but we can't do negative bounds
  spin = "0.9"
  serde_json = { version = "1.0.79", features = ["raw_value"] }
  
  
  [target.'cfg(unix)'.dependencies]
  nix = { version = "0.26", features = ["poll"] }
  async-io = { version = "2", optional = true }
  
  [target.'cfg(all(unix, not(miri)))'.dependencies]
  tokio = { version = "1", optional = true, features = ["net"] }
  
  [target.'cfg(windows)'.dependencies]
  windows-sys = { version = "0.48", features = ["Win32_System_Threading", "Win32_Foundation", "Win32_Security"] }
  
  [dev-dependencies]
  tokio = { version = "1.24", features = ["rt", "macros", "rt-multi-thread"] }
  smol = "1"
  criterion = { version = "0.5", git = "https://github.com/h33p/criterion.rs", branch = "tput2", features = ["async_tokio", "async_smol", "async_futures"] }
  pollster = "0.2"
  bytemuck = { version = "1", features = ["derive"] }
  
  [features]
  default = ["std", "http", "cglue/unwind_abi_ext", "cglue/abi_stable11", "cglue/abi_stable"]
  std = ["parking_lot", "futures/std"]
  cglue-trait = []
  cglue-trait-layout-checks = ["cglue/layout_checks", "cglue-trait", "abi_stable", "cglue/abi_stable11"]
  