plctag 0.4.1

a rust wrapper of [libplctag](https://github.com/libplctag/libplctag), with rust style APIs and useful extensions
Documentation
[package]

name = "plctag"

version = "0.4.1"

edition = "2021"

resolver = "2"

description = "a rust wrapper of [libplctag](https://github.com/libplctag/libplctag), with rust style APIs and useful extensions"

readme = "README.md"

license = "MIT"

homepage = "https://github.com/Joylei/plctag-rs"

repository = "https://github.com/Joylei/plctag-rs.git"

documentation = "https://docs.rs/crate/plctag/"

keywords = ["automation", "plc", "ethernet", "modbus", "hardware"]

categories = ["api-bindings", "asynchronous", "hardware-support"]

authors = ["joylei <leingliu@gmail.com>"]



[package.metadata.docs.rs]

all-features = true



[badges]

maintenance = { status = "passively-maintained" }



[lib]

name = "plctag"

path = "src/lib.rs"



[features]

default = ["full"]

full = ["derive", "async", "value", "log", "builder"]

log = ["plctag-log"]

derive = ["plctag-derive", "plctag-core/value"]

async = ["plctag-async"]

value = ["plctag-core/value", "plctag-async/value"]

builder = ["plctag-core/builder"]



[workspace]

members = [

    ".",

    "crates/async",

    "crates/core",

    "crates/sys",

    "crates/log",

    "crates/derive",

]



[dependencies]

plctag-core = { path = "crates/core", version = "0.4", default-features = false }

plctag-async = { path = "crates/async", version = "0.4", optional = true, default-features = false }

plctag-derive = { path = "crates/derive", version = "0.3", optional = true }

plctag-log = { path = "crates/log", version = "0.3", optional = true }



[dev-dependencies]

tokio = { version = "1", default-features = false, features = [

    "rt-multi-thread",

    "time",

    "sync",

    "macros",

] }

anyhow = "1"

futures = "0.3"

criterion = { version = "0.5", features = [

    "async_futures",

    "async_tokio",

    "cargo_bench_support",

] }

env_logger = "0.11"



[[bench]]

name = "bench_sync"

harness = false



[[bench]]

name = "bench_async"

harness = false



[[bench]]

name = "bench_async_batch"

harness = false



[build]

#rustc-wrapper = "sccache"



[profile.release]

lto = 'thin'

panic = 'abort'

codegen-units = 1



[profile.bench]

lto = 'thin'

codegen-units = 1



[profile.test]

debug = 1