From 132098b19d151efb20652c8745510dbfbd2abcb2 Mon Sep 17 00:00:00 2001 From: kbarkhqs <65908581+kbarkhqs@users.noreply.github.com> Date: Mon, 13 Jan 2025 17:33:07 +0100 Subject: [PATCH] Pyo3 0.22 (#607) * Using both struqture 1.0 and 2.0 in noise models * Removed struqture two dep * 1.11 Dependencies Bugfix (#559) * clippy * new cargos * pyproject corr * clippy * lock + dependencies * compat test cargos * CHANGELOG * test correction * dead_code * rand better pin * roq dep compatibility tests * CHANGELOG * fmt (#560) * Updated path * Fixing issues * Removed non-pipeline test * Updated cimpatibility test struqture dep to 1.9 * Added compatibility test for 1.14 * trying to fix new compatibility test * Fixing struqture import for test * Fixing typo * Commenting out test for now * Increased version * Updated deps and changelog * Updated version of compatibility tests * Added overwritten compatibility test file * Increased version due to typo * Updated version and pinned clap version * Removed clap dependency * Fixing tests and pyo3 0.22 * Fix clippy warning * compatibility tests * Re-ran doc_generator and fixed it * Fixing unstable_chain_with_environment features * Fixed unstable_analog_operations feature * Fixing unstable_operation_definition feature * Added overrotate feature to cargo.toml (already existed, oversight) * Uncommented feature * Changed where the reference is made * Ran black to reformat .pyi files --------- Co-authored-by: Matteo Lodi <108724576+mlodi-hqs@users.noreply.github.com> Co-authored-by: Dimitri Berthault --- .../compatibility_test_1_14/Cargo.toml | 4 + .../compatibility_test_1_15/Cargo.toml | 4 + .../compatibility_test_1_16/Cargo.toml | 4 + .../compatibility_test_sim/Cargo.toml | 2 +- Cargo.lock | 203 +- qoqo-macros/Cargo.toml | 2 +- qoqo-macros/src/devices.rs | 2 +- qoqo-macros/src/lib.rs | 12 +- qoqo-macros/src/operate.rs | 32 +- qoqo/Cargo.toml | 17 +- qoqo/build.rs | 34 +- qoqo/docs/conf.py | 99 +- qoqo/python/qoqo/DEPENDENCIES | 12413 ++++++++++------ qoqo/python/qoqo/devices.pyi | 317 +- qoqo/python/qoqo/measurements.pyi | 329 +- qoqo/python/qoqo/noise_models.pyi | 222 +- qoqo/python/qoqo/operations.pyi | 5251 ++----- qoqo/python/qoqo/qoqo.pyi | 200 +- qoqo/src/circuit.rs | 3 +- qoqo/src/circuitdag.rs | 4 +- qoqo/src/devices/mod.rs | 2 +- .../basis_rotation_measurement.rs | 2 +- .../cheated_basis_rotation_measurement.rs | 2 +- qoqo/src/measurements/cheated_measurement.rs | 2 +- .../classical_register_measurement.rs | 2 +- .../measurement_auxiliary_data_input.rs | 6 +- .../noise_models/continuous_decoherence.rs | 3 +- qoqo/src/noise_models/decoherence_on_gate.rs | 2 +- qoqo/src/noise_models/decoherence_on_idle.rs | 3 +- qoqo/src/noise_models/imperfect_readout.rs | 2 +- qoqo/src/noise_models/overrotation.rs | 4 +- qoqo/src/operations/measurement_operations.rs | 2 +- .../operations/multi_qubit_gate_operations.rs | 4 +- qoqo/src/operations/pragma_operations.rs | 22 +- qoqo/src/quantum_program.rs | 14 +- qoqo/tests/integration/circuit.rs | 88 +- qoqo/tests/integration/circuitdag.rs | 121 +- qoqo/tests/integration/devices.rs | 34 +- .../basis_rotation_measurement.rs | 16 +- .../cheated_basis_rotation_measurement.rs | 16 +- .../measurements/cheated_measurement.rs | 16 +- .../classical_register_measurement.rs | 12 +- .../noise_models/continuous_decoherence.rs | 8 +- .../noise_models/decoherence_on_gate.rs | 8 +- .../noise_models/decoherence_on_idle.rs | 8 +- .../noise_models/imperfect_readout.rs | 8 +- .../integration/noise_models/overrotation.rs | 16 +- .../operations/analog_operations.rs | 10 +- .../operations/bosonic_operations.rs | 6 +- .../operations/define_operations.rs | 12 +- .../operations/four_qubit_gate_operations.rs | 8 +- .../operations/measurement_operations.rs | 6 +- .../operations/multi_qubit_gate_operations.rs | 22 +- .../operations/pragma_operations.rs | 53 +- .../single_qubit_gate_operations.rs | 12 +- .../operations/spin_boson_operations.rs | 6 +- .../operations/three_qubit_gate_operations.rs | 8 +- .../operations/two_qubit_gate_operations.rs | 12 +- qoqo/tests/integration/quantum_program.rs | 7 +- roqoqo/Cargo.toml | 4 +- 60 files changed, 9495 insertions(+), 10248 deletions(-) diff --git a/.compatibility_tests/compatibility_test_1_14/Cargo.toml b/.compatibility_tests/compatibility_test_1_14/Cargo.toml index 2a281f616..0c1b6a008 100644 --- a/.compatibility_tests/compatibility_test_1_14/Cargo.toml +++ b/.compatibility_tests/compatibility_test_1_14/Cargo.toml @@ -28,10 +28,14 @@ struqture = { git = "https://github.com/HQSquantumsimulations/struqture" } struqture_1_7 = { git = "https://github.com/HQSquantumsimulations/struqture", package = "struqture", tag = "v1.7.1" } bincode = { version = "1.3" } ndarray = "0.15" +qoqo_calculator = { git = "https://github.com/HQSquantumsimulations/qoqo_calculator" } +qoqo_calculator_1_2 = { git = "https://github.com/HQSquantumsimulations/qoqo_calculator", package = "qoqo_calculator", tag = "v1.2.4" } [patch.crates-io] struqture = { git = "https://github.com/HQSquantumsimulations/struqture" } struqture_1_7 = { git = "https://github.com/HQSquantumsimulations/struqture", package = "struqture", tag = "v1.7.1" } +qoqo_calculator = { git = "https://github.com/HQSquantumsimulations/qoqo_calculator" } +qoqo_calculator_1_2 = { git = "https://github.com/HQSquantumsimulations/qoqo_calculator", package = "qoqo_calculator", tag = "v1.2.4" } [dev-dependencies] test-case = "3.0" diff --git a/.compatibility_tests/compatibility_test_1_15/Cargo.toml b/.compatibility_tests/compatibility_test_1_15/Cargo.toml index aa18c4392..fd18929f2 100644 --- a/.compatibility_tests/compatibility_test_1_15/Cargo.toml +++ b/.compatibility_tests/compatibility_test_1_15/Cargo.toml @@ -28,10 +28,14 @@ struqture = { git = "https://github.com/HQSquantumsimulations/struqture" } struqture_1_7 = { git = "https://github.com/HQSquantumsimulations/struqture", package = "struqture", tag = "v1.7.1" } bincode = { version = "1.3" } ndarray = "0.15" +qoqo_calculator = { git = "https://github.com/HQSquantumsimulations/qoqo_calculator" } +qoqo_calculator_1_2 = { git = "https://github.com/HQSquantumsimulations/qoqo_calculator", package = "qoqo_calculator", tag = "v1.2.4" } [patch.crates-io] struqture = { git = "https://github.com/HQSquantumsimulations/struqture" } struqture_1_7 = { git = "https://github.com/HQSquantumsimulations/struqture", package = "struqture", tag = "v1.7.1" } +qoqo_calculator = { git = "https://github.com/HQSquantumsimulations/qoqo_calculator" } +qoqo_calculator_1_2 = { git = "https://github.com/HQSquantumsimulations/qoqo_calculator", package = "qoqo_calculator", tag = "v1.2.4" } [dev-dependencies] test-case = "3.0" diff --git a/.compatibility_tests/compatibility_test_1_16/Cargo.toml b/.compatibility_tests/compatibility_test_1_16/Cargo.toml index 844d2f012..76d8db50d 100644 --- a/.compatibility_tests/compatibility_test_1_16/Cargo.toml +++ b/.compatibility_tests/compatibility_test_1_16/Cargo.toml @@ -28,10 +28,14 @@ struqture = { git = "https://github.com/HQSquantumsimulations/struqture" } struqture_1_7 = { git = "https://github.com/HQSquantumsimulations/struqture", package = "struqture", tag = "v1.7.1" } bincode = { version = "1.3" } ndarray = "0.15" +qoqo_calculator = { git = "https://github.com/HQSquantumsimulations/qoqo_calculator" } +qoqo_calculator_1_2 = { git = "https://github.com/HQSquantumsimulations/qoqo_calculator", package = "qoqo_calculator", tag = "v1.2.4" } [patch.crates-io] struqture = { git = "https://github.com/HQSquantumsimulations/struqture" } struqture_1_7 = { git = "https://github.com/HQSquantumsimulations/struqture", package = "struqture", tag = "v1.7.1" } +qoqo_calculator = { git = "https://github.com/HQSquantumsimulations/qoqo_calculator" } +qoqo_calculator_1_2 = { git = "https://github.com/HQSquantumsimulations/qoqo_calculator", package = "qoqo_calculator", tag = "v1.2.4" } [dev-dependencies] test-case = "3.0" diff --git a/.compatibility_tests/compatibility_test_sim/Cargo.toml b/.compatibility_tests/compatibility_test_sim/Cargo.toml index aca37182c..2a3d79ff3 100644 --- a/.compatibility_tests/compatibility_test_sim/Cargo.toml +++ b/.compatibility_tests/compatibility_test_sim/Cargo.toml @@ -22,7 +22,7 @@ publish = false test_roqoqo_1_2 = { package = "roqoqo", features = [ "serialize", ], version = "=1.2.5" } -qoqo_calculator = { version = "~1.2" } +qoqo_calculator = { version = "~1.3" } roqoqo = { version = "~1.17", path = "../../roqoqo", features = [ "serialize", "overrotate", diff --git a/Cargo.lock b/Cargo.lock index 2b1ca3d8f..23548d77a 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -42,9 +42,9 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.93" +version = "1.0.94" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c95c10ba0b00a02636238b814946408b1322d5ac4760326e6fb8ec956d85775" +checksum = "c1fd03a028ef38ba2276dce7e33fcd6369c158a1bca17946c4b1b701891c1ff7" [[package]] name = "approx" @@ -117,12 +117,6 @@ version = "0.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb" -[[package]] -name = "bitflags" -version = "2.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de" - [[package]] name = "borrow-or-share" version = "0.2.2" @@ -155,9 +149,9 @@ checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" [[package]] name = "bytes" -version = "1.8.0" +version = "1.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ac0150caa2ae65ca5bd83f25c7de183dea78d4d366469f148435e2acfbad0da" +checksum = "325918d6fe32f23b19878fe4b34794ae41fc19ddbe53b10571a4874d44ffd39b" [[package]] name = "cfg-if" @@ -380,21 +374,15 @@ checksum = "bf151400ff0baff5465007dd2f3e717f3fe502074ca563069ce3a6629d07b289" [[package]] name = "heck" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" - -[[package]] -name = "hermit-abi" -version = "0.3.9" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024" +checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea" [[package]] name = "http" -version = "1.1.0" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "21b9ddb458710bc376481b842f5da65cdf31522de232c1ca8146abce2a358258" +checksum = "f16ca2af56261c99fba8bac40a10251ce8188205a4c448fbb745a2e4daa76fea" dependencies = [ "bytes", "fnv", @@ -609,9 +597,9 @@ dependencies = [ [[package]] name = "indexmap" -version = "2.6.0" +version = "2.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "707907fe3c25f5424cce2cb7e1cbcafee6bdbe735ca90ef77c29e84591e5b9da" +checksum = "62f822373a4fe84d4bb149bf54e584a7f4abec90e072ed49cda0edea5b95471f" dependencies = [ "equivalent", "hashbrown", @@ -655,16 +643,17 @@ dependencies = [ [[package]] name = "itoa" -version = "1.0.13" +version = "1.0.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "540654e97a3f4470a492cd30ff187bc95d89557a903a2bbf112e2fae98104ef2" +checksum = "d75a2a4b1b190afb6f5425f10f6a8f959d2ea0b9c2b1d79553551850539e4674" [[package]] name = "js-sys" -version = "0.3.72" +version = "0.3.74" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a88f1bda2bd75b0452a14784937d796722fdebfe50df998aeb3f0b7603019a9" +checksum = "a865e038f7f6ed956f788f0d7d60c541fff74c7bd74272c5d4cf15c63743e705" dependencies = [ + "once_cell", "wasm-bindgen", ] @@ -703,9 +692,9 @@ checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" [[package]] name = "libc" -version = "0.2.164" +version = "0.2.167" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "433bfe06b8c75da9b2e3fbea6e5329ff87748f0b144ef75306e674c3f6f7c13f" +checksum = "09d6582e104315a817dff97f75133544b2e094ee22447d2acf4a74e189ba06fc" [[package]] name = "libm" @@ -719,16 +708,6 @@ version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4ee93343901ab17bd981295f2cf0026d4ad018c7c31ba84549a4ddbb47a45104" -[[package]] -name = "lock_api" -version = "0.4.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07af8b9cdd281b7915f413fa73f29ebd5d55d0d3f0155584dade1ff18cea1b17" -dependencies = [ - "autocfg", - "scopeguard", -] - [[package]] name = "log" version = "0.4.22" @@ -777,11 +756,10 @@ dependencies = [ [[package]] name = "mio" -version = "1.0.2" +version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "80e04d1dcff3aae0704555fe5fee3bcfaf3d1fdf8a7e521d5b9d2b42acb52cec" +checksum = "2886843bf800fba2e3377cff24abf6379b4c4d5c6681eaf9ea5b0d15090450bd" dependencies = [ - "hermit-abi", "libc", "wasi", "windows-sys", @@ -911,9 +889,9 @@ dependencies = [ [[package]] name = "numpy" -version = "0.21.0" +version = "0.22.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec170733ca37175f5d75a5bea5911d6ff45d2cd52849ce98b685394e4f2f37f4" +checksum = "edb929bc0da91a4d85ed6c0a84deaa53d411abfb387fc271124f91bf6b89f14e" dependencies = [ "libc", "ndarray", @@ -945,29 +923,6 @@ version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4030760ffd992bef45b0ae3f10ce1aba99e33464c90d14dd7c039884963ddc7a" -[[package]] -name = "parking_lot" -version = "0.12.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1bf18183cf54e8d6059647fc3063646a1801cf30896933ec2311622cc4b9a27" -dependencies = [ - "lock_api", - "parking_lot_core", -] - -[[package]] -name = "parking_lot_core" -version = "0.9.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8" -dependencies = [ - "cfg-if", - "libc", - "redox_syscall", - "smallvec", - "windows-targets", -] - [[package]] name = "paste" version = "1.0.15" @@ -1030,9 +985,9 @@ dependencies = [ [[package]] name = "pyo3" -version = "0.21.2" +version = "0.22.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a5e00b96a521718e08e03b1a622f01c8a8deb50719335de3f60b3b3950f069d8" +checksum = "f402062616ab18202ae8319da13fa4279883a2b8a9d9f83f20dbade813ce1884" dependencies = [ "cfg-if", "indoc", @@ -1040,7 +995,7 @@ dependencies = [ "libc", "memoffset", "num-complex", - "parking_lot", + "once_cell", "portable-atomic", "pyo3-build-config", "pyo3-ffi", @@ -1050,9 +1005,9 @@ dependencies = [ [[package]] name = "pyo3-build-config" -version = "0.21.2" +version = "0.22.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7883df5835fafdad87c0d888b266c8ec0f4c9ca48a5bed6bbb592e8dedee1b50" +checksum = "b14b5775b5ff446dd1056212d778012cbe8a0fbffd368029fd9e25b514479c38" dependencies = [ "once_cell", "target-lexicon", @@ -1060,9 +1015,9 @@ dependencies = [ [[package]] name = "pyo3-ffi" -version = "0.21.2" +version = "0.22.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01be5843dc60b916ab4dad1dca6d20b9b4e6ddc8e15f50c47fe6d85f1fb97403" +checksum = "9ab5bcf04a2cdcbb50c7d6105de943f543f9ed92af55818fd17b660390fc8636" dependencies = [ "libc", "pyo3-build-config", @@ -1070,9 +1025,9 @@ dependencies = [ [[package]] name = "pyo3-macros" -version = "0.21.2" +version = "0.22.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77b34069fc0682e11b31dbd10321cbf94808394c56fd996796ce45217dfac53c" +checksum = "0fd24d897903a9e6d80b968368a34e1525aeb719d568dba8b3d4bfa5dc67d453" dependencies = [ "proc-macro2", "pyo3-macros-backend", @@ -1082,9 +1037,9 @@ dependencies = [ [[package]] name = "pyo3-macros-backend" -version = "0.21.2" +version = "0.22.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08260721f32db5e1a5beae69a55553f56b99bd0e1c3e6e0a5e8851a9d0f5a85c" +checksum = "36c011a03ba1e50152b4b394b479826cad97e7a21eb52df179cd91ac411cbfbe" dependencies = [ "heck", "proc-macro2", @@ -1114,7 +1069,7 @@ dependencies = [ "schemars", "serde", "serde_json", - "struqture 1.9.2", + "struqture 1.10.1", "struqture-py", "syn", "test-case", @@ -1127,15 +1082,15 @@ version = "1.17.0" dependencies = [ "proc-macro2", "quote", - "struqture 1.9.2", + "struqture 1.10.1", "syn", ] [[package]] name = "qoqo_calculator" -version = "1.2.4" +version = "1.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6e28a55d15becd3c5793245b83f8652e5eb44e60ce1e234c6b9ae373e67ef5d" +checksum = "cc2918943b496c8a2851f284710e7f835968425b84ef3aad29e9f265ac254dfd" dependencies = [ "num-complex", "schemars", @@ -1145,9 +1100,9 @@ dependencies = [ [[package]] name = "qoqo_calculator_pyo3" -version = "1.2.4" +version = "1.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8314e9b99c847b544cc2a3d65d8f05cad20b2c78a59d645719966db96261eb38" +checksum = "d04c0a32412b697c56d18882677933cc116a7afb65cee3e2f9b8840794f77f66" dependencies = [ "num-complex", "pyo3", @@ -1212,15 +1167,6 @@ version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "60a357793950651c4ed0f3f52338f53b2f809f32d83a07f72909fa13e4c6c1e3" -[[package]] -name = "redox_syscall" -version = "0.5.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b6dfecf2c74bce2466cabf93f6664d6998a69eb21e39f4207930065b27b771f" -dependencies = [ - "bitflags", -] - [[package]] name = "ref-cast" version = "1.0.23" @@ -1342,7 +1288,7 @@ dependencies = [ "serde", "serde_json", "serde_test", - "struqture 1.9.2", + "struqture 1.10.1", "syn", "test-case", "thiserror", @@ -1422,12 +1368,6 @@ dependencies = [ "syn", ] -[[package]] -name = "scopeguard" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" - [[package]] name = "serde" version = "1.0.215" @@ -1522,9 +1462,9 @@ checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67" [[package]] name = "socket2" -version = "0.5.7" +version = "0.5.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce305eb0b4296696835b71df73eb912e0f1ffd2556a501fcede6e0c50349191c" +checksum = "c970269d99b64e60ec3bd6ad27270092a5394c4e309314b18ae3fe575695fbe8" dependencies = [ "libc", "windows-sys", @@ -1538,9 +1478,9 @@ checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" [[package]] name = "struqture" -version = "1.9.2" +version = "1.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d2f2566561f41f3ea377bd6d952bdec12430fc9f322ee0fb291080e2a012f42" +checksum = "a0680c81ffbf2e5abbbf66113bc1f580ab692da09199853dc24a026d50439a8b" dependencies = [ "itertools 0.13.0", "ndarray", @@ -1565,7 +1505,7 @@ dependencies = [ "num-complex", "qoqo_calculator", "serde", - "struqture 1.9.2", + "struqture 1.10.1", "test-case", "thiserror", "tinyvec", @@ -1573,9 +1513,9 @@ dependencies = [ [[package]] name = "struqture-py" -version = "1.9.2" +version = "1.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e0997e709a607cd7aaf3465b63a1a84eafa2919eeb21e7ee98ae883417c3e09d" +checksum = "30272106351a8e2642adcd31d14fa7b71e43559e1470f6947e4ff13625c7913e" dependencies = [ "bincode", "num-complex", @@ -1590,7 +1530,7 @@ dependencies = [ "schemars", "serde", "serde_json", - "struqture 1.9.2", + "struqture 1.10.1", "struqture 2.0.0-alpha.4", "struqture-py-macros", "syn", @@ -1599,9 +1539,9 @@ dependencies = [ [[package]] name = "struqture-py-macros" -version = "1.9.2" +version = "1.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d868323a28c24607112dbb2b047113d6f457579ddf6fa07eb909fc32be372a71" +checksum = "83ebf65705b188167447d7df2de62091079d1725e32cc3b749ce4d3b8a27bad4" dependencies = [ "num-complex", "proc-macro2", @@ -1611,9 +1551,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.89" +version = "2.0.90" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44d46482f1c1c87acd84dea20c1bf5ebff4c757009ed6bf19cfd36fb10e92c4e" +checksum = "919d3b74a5dd0ccd15aeb8f93e7006bd9e14c295087c9896a110f490752bcf31" dependencies = [ "proc-macro2", "quote", @@ -1727,9 +1667,9 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.41.1" +version = "1.42.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22cfb5bee7a6a52939ca9224d6ac897bb669134078daa8735560897f69de4d33" +checksum = "5cec9b21b0450273377fc97bd4c33a8acffc8c996c987a7c5b319a0083707551" dependencies = [ "backtrace", "libc", @@ -1747,9 +1687,9 @@ checksum = "8df9b6e13f2d32c91b9bd719c00d1958837bc7dec474d94952798cc8e69eeec3" [[package]] name = "tracing" -version = "0.1.40" +version = "0.1.41" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef" +checksum = "784e0ac535deb450455cbfa28a6f0df145ea1bb7ae51b821cf5e7927fdcfbdd0" dependencies = [ "pin-project-lite", "tracing-core", @@ -1757,9 +1697,9 @@ dependencies = [ [[package]] name = "tracing-core" -version = "0.1.32" +version = "0.1.33" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54" +checksum = "e672c95779cf947c5311f83787af4fa8fffd12fb27e4993211a84bdfd9610f9c" dependencies = [ "once_cell", ] @@ -1887,9 +1827,9 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" [[package]] name = "wasm-bindgen" -version = "0.2.95" +version = "0.2.97" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "128d1e363af62632b8eb57219c8fd7877144af57558fb2ef0368d0087bddeb2e" +checksum = "d15e63b4482863c109d70a7b8706c1e364eb6ea449b201a76c5b89cedcec2d5c" dependencies = [ "cfg-if", "once_cell", @@ -1898,9 +1838,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-backend" -version = "0.2.95" +version = "0.2.97" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb6dd4d3ca0ddffd1dd1c9c04f94b868c37ff5fac97c30b97cff2d74fce3a358" +checksum = "8d36ef12e3aaca16ddd3f67922bc63e48e953f126de60bd33ccc0101ef9998cd" dependencies = [ "bumpalo", "log", @@ -1913,21 +1853,22 @@ dependencies = [ [[package]] name = "wasm-bindgen-futures" -version = "0.4.45" +version = "0.4.47" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc7ec4f8827a71586374db3e87abdb5a2bb3a15afed140221307c3ec06b1f63b" +checksum = "9dfaf8f50e5f293737ee323940c7d8b08a66a95a419223d9f41610ca08b0833d" dependencies = [ "cfg-if", "js-sys", + "once_cell", "wasm-bindgen", "web-sys", ] [[package]] name = "wasm-bindgen-macro" -version = "0.2.95" +version = "0.2.97" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e79384be7f8f5a9dd5d7167216f022090cf1f9ec128e6e6a482a2cb5c5422c56" +checksum = "705440e08b42d3e4b36de7d66c944be628d579796b8090bfa3471478a2260051" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -1935,9 +1876,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.95" +version = "0.2.97" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26c6ab57572f7a24a4985830b120de1594465e5d500f24afe89e16b4e833ef68" +checksum = "98c9ae5a76e46f4deecd0f0255cc223cfa18dc9b261213b8aa0c7b36f61b3f1d" dependencies = [ "proc-macro2", "quote", @@ -1948,15 +1889,15 @@ dependencies = [ [[package]] name = "wasm-bindgen-shared" -version = "0.2.95" +version = "0.2.97" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "65fc09f10666a9f147042251e0dda9c18f166ff7de300607007e96bdebc1068d" +checksum = "6ee99da9c5ba11bd675621338ef6fa52296b76b83305e9b6e5c77d4c286d6d49" [[package]] name = "web-sys" -version = "0.3.72" +version = "0.3.74" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6488b90108c040df0fe62fa815cbdee25124641df01814dd7282749234c6112" +checksum = "a98bc3c33f0fe7e59ad7cd041b89034fa82a7c2d4365ca538dda6cdaf513863c" dependencies = [ "js-sys", "wasm-bindgen", diff --git a/qoqo-macros/Cargo.toml b/qoqo-macros/Cargo.toml index 662cbe5df..869f513cb 100644 --- a/qoqo-macros/Cargo.toml +++ b/qoqo-macros/Cargo.toml @@ -19,7 +19,7 @@ doctest = false proc-macro2 = "1.0" syn = { version = "2.0", features = ["full", "visit"] } quote = "1.0" -struqture = { version = "~1.9" } +struqture = { version = "~1.10" } [features] unstable_chain_with_environment = [] diff --git a/qoqo-macros/src/devices.rs b/qoqo-macros/src/devices.rs index 05d3c47ba..8a61cb5a1 100644 --- a/qoqo-macros/src/devices.rs +++ b/qoqo-macros/src/devices.rs @@ -391,7 +391,7 @@ pub fn device_wrapper_def( #[pyo3(text_signature = "(input)")] pub fn from_bincode(input: &Bound) -> PyResult<#ident> { let bytes = input - .as_gil_ref() + .as_ref() .extract::>() .map_err(|_| PyTypeError::new_err("Input cannot be converted to byte array"))?; diff --git a/qoqo-macros/src/lib.rs b/qoqo-macros/src/lib.rs index 64cdf6b90..dd2b35ba4 100644 --- a/qoqo-macros/src/lib.rs +++ b/qoqo-macros/src/lib.rs @@ -132,9 +132,8 @@ pub fn wrap( } #[cfg(feature = "overrotate")] /// Returns clone of the gate with one parameter statistically overrotated. - fn overrotate(&self, amplitude: &f64, variance: &f64) -> Self { - Self{internal: self.internal.overrotate(amplitude, variance)} - + fn overrotate(&self, amplitude: f64, variance: f64) -> Self { + Self{internal: self.internal.overrotate(&litude, &variance)} } } } else { @@ -154,7 +153,7 @@ pub fn wrap( /// pub fn superoperator(&self) -> PyResult>>{ Python::with_gil(|py| -> PyResult>> { - Ok(self.internal.superoperator().unwrap().to_pyarray_bound(py).as_gil_ref().into()) + Ok(self.internal.superoperator().unwrap().to_pyarray_bound(py).into()) }) } /// Return the power of the noise gate @@ -417,7 +416,6 @@ pub fn wrap( Python::with_gil(|py| -> PyResult>> { Ok(self.internal.unitary_matrix().map_err(|x| PyValueError::new_err(format!("Error symbolic operation cannot return float unitary matrix {:?}",x)))? .to_pyarray_bound(py) - .as_gil_ref() .into()) }) } @@ -702,7 +700,7 @@ pub fn wrap( /// fn __richcmp__(&self, other: &Bound, op: pyo3::class::basic::CompareOp) -> PyResult { let other: Operation = crate::operations::convert_pyany_to_operation(other).map_err(|x| { - pyo3::exceptions::PyTypeError::new_err(format!("Right hand side cannot be converted to Operation {:?}",x)) + pyo3::exceptions::PyTypeError::new_err(format!("Right hand side cannot be converted to Operation {:?}", x)) })?; match op { pyo3::class::basic::CompareOp::Eq => Ok(Operation::from(self.internal.clone()) == other), @@ -761,7 +759,7 @@ fn extract_fields_with_types(ds: DataStruct) -> Vec<(Ident, Option, Type }; if let Some(ref x) = type_string{ if x.as_str() == "Option"{ - let inner_type = match &type_path.segments.iter().next().unwrap().arguments{ + let inner_type: Option = match &type_path.segments.iter().next().unwrap().arguments{ PathArguments::AngleBracketed(angle_argumnets) => match angle_argumnets.args.iter().next().unwrap() { GenericArgument::Type(Type::Path(TypePath{path:innerty,..})) => match innerty.get_ident(){ Some(ident_path) => Some(ident_path.to_string()), diff --git a/qoqo-macros/src/operate.rs b/qoqo-macros/src/operate.rs index 4f34cb630..70ee5b618 100644 --- a/qoqo-macros/src/operate.rs +++ b/qoqo-macros/src/operate.rs @@ -41,6 +41,13 @@ fn operate_struct(ds: DataStruct, ident: Ident) -> TokenStream { }, _ => quote! {#id: #ty}, }); + let formatted_input_arguments = + fields_with_type + .clone() + .map(|(id, type_string, _ty)| match type_string { + Some(s) if s.contains("Option") && !s.contains("Circuit") => quote! {#id=None}, + _ => quote! {#id}, + }); let arguments = fields_with_type .clone() .map(|(id, type_string, _)| match type_string { @@ -81,7 +88,7 @@ fn operate_struct(ds: DataStruct, ident: Ident) -> TokenStream { let id_extracted = format_ident!("{}_extracted", id); quote! { let #id_extracted: #ty = convert_into_calculator_float(#id).map_err(|x| { - pyo3::exceptions::PyTypeError::new_err(format!("Argument cannot be converted to CalculatorFloat {:?}",x)) + pyo3::exceptions::PyTypeError::new_err(format!("Argument cannot be converted to CalculatorFloat: {:?}",x)) })?; } }, @@ -89,27 +96,33 @@ fn operate_struct(ds: DataStruct, ident: Ident) -> TokenStream { let id_extracted = format_ident!("{}_extracted", id); quote! { let #id_extracted: #ty = convert_into_circuit(#id).map_err(|x| { - pyo3::exceptions::PyTypeError::new_err(format!("Argument cannot be converted to Circuit {:?}",x)) + pyo3::exceptions::PyTypeError::new_err(format!("Argument cannot be converted to Circuit: {:?}",x)) })?; } }, "Option" => { let id_extracted = format_ident!("{}_extracted", id); quote! { - let tmp: Option<&PyAny> = #id.extract().map_err(|x| { - pyo3::exceptions::PyTypeError::new_err(format!("Argument cannot be converted to Circuit {:?}",x)) + let tmp: Option<&Bound> = #id.try_into().map_err(|x| { + pyo3::exceptions::PyTypeError::new_err(format!("Argument cannot be converted to PyAny: {:?}",x)) })?; - let #id_extracted: Option = match tmp{ - Some(cw) => Some(convert_into_circuit(&cw.as_borrowed()).map_err(|x| { - pyo3::exceptions::PyTypeError::new_err(format!("Argument cannot be converted to Circuit {:?}",x)) - })?), + let #id_extracted: Option = match tmp { + Some(cw) => { + if cw.is_none() { + None + } else { + Some(convert_into_circuit(cw).map_err(|x| { + pyo3::exceptions::PyTypeError::new_err(format!("Argument cannot be converted to Some(Circuit): {:?}",x)) + })?) + } + }, _ => None }; }}, "SpinHamiltonian" => { let id_extracted = format_ident!("{}_extracted", id); quote! { let temp_op: struqture::spins::SpinHamiltonianSystem = SpinHamiltonianSystemWrapper::from_pyany(#id).map_err(|x| { - pyo3::exceptions::PyTypeError::new_err(format!("Argument cannot be converted to SpinHamiltonianSystem {:?}",x)) + pyo3::exceptions::PyTypeError::new_err(format!("Argument cannot be converted to SpinHamiltonianSystem: {:?}",x)) })?; let #id_extracted: #ty = temp_op.hamiltonian().clone(); } @@ -194,6 +207,7 @@ fn operate_struct(ds: DataStruct, ident: Ident) -> TokenStream { #[new] #[doc = #new_msg] + #[pyo3(signature = (#(#formatted_input_arguments),*))] fn new(#(#input_arguments),*) -> PyResult{ #(#conversion_quotes)* Ok(Self{internal: #ident::new(#(#arguments),*)}) diff --git a/qoqo/Cargo.toml b/qoqo/Cargo.toml index 27a5190e0..8cf24d86c 100644 --- a/qoqo/Cargo.toml +++ b/qoqo/Cargo.toml @@ -29,7 +29,7 @@ doctest = false crate-type = ["cdylib", "rlib"] [dependencies.pyo3] -version = "0.21" +version = "0.22" features = ["num-complex", "multiple-pymethods"] [dependencies] @@ -37,18 +37,18 @@ serde = { version = "1.0", features = ["derive"] } ndarray = "0.15" num-complex = "0.4" thiserror = "1.0" -qoqo_calculator = { version = "~1.2" } -qoqo_calculator_pyo3 = { version = "~1.2", default-features = false } +qoqo_calculator = { version = "~1.3" } +qoqo_calculator_pyo3 = { version = "~1.3", default-features = false } qoqo-macros = { version = "~1.17", path = "../qoqo-macros" } roqoqo = { version = "~1.17", path = "../roqoqo", features = [ "serialize", "overrotate", ] } -struqture = { version = "~1.9" } -struqture-py = { version = "~1.9", default-features = false, features = [ +struqture = { version = "~1.10" } +struqture-py = { version = "~1.10", default-features = false, features = [ "unstable_struqture_2_import", ] } -numpy = "0.21" +numpy = "0.22" bincode = "1.3" serde_json = "1.0" schemars = "0.8" @@ -61,8 +61,8 @@ nalgebra = "0.33.1" quote = "1.0" syn = { version = "2.0", features = ["full", "visit"] } proc-macro2 = "1.0" -pyo3-build-config = "0.21" -pyo3 = "0.21" +pyo3-build-config = "0.22" +pyo3 = "0.22" regex = "1.10" @@ -73,6 +73,7 @@ no-default-features = true extension-module = ["pyo3/extension-module", "circuitdag"] default = ["extension-module", "json_schema"] circuitdag = ["roqoqo/circuitdag"] +overrotate = ["roqoqo/overrotate"] json_schema = ["roqoqo/json_schema"] doc_generator = [] unstable_chain_with_environment = [ diff --git a/qoqo/build.rs b/qoqo/build.rs index 80cbaecf3..556b720aa 100644 --- a/qoqo/build.rs +++ b/qoqo/build.rs @@ -299,13 +299,13 @@ fn create_doc(module: &str) -> PyResult { pyo3::prepare_freethreaded_python(); Python::with_gil(|py| -> PyResult { let python_module = PyModule::import_bound(py, module)?; - let dict = python_module.as_gil_ref().getattr("__dict__")?; + let dict = python_module.as_ref().getattr("__dict__")?; let module_doc = python_module - .as_gil_ref() + .as_ref() .getattr("__doc__")? .extract::()?; let r_dict = dict.downcast::()?; - for (fn_name, func) in r_dict.iter() { + for (fn_name, func) in pyo3::types::PyDictMethods::iter(r_dict) { let name = fn_name.str()?.extract::()?; if name.starts_with("__") || (module == "qoqo" @@ -331,8 +331,8 @@ fn create_doc(module: &str) -> PyResult { let dict_obj = py .import_bound("builtins")? .call_method1("dict", (items,))?; - let class_r_dict = dict_obj.as_gil_ref().downcast::()?; - for (class_fn_name, meth) in class_r_dict.iter() { + let class_r_dict = dict_obj.as_ref().downcast::()?; + for (class_fn_name, meth) in pyo3::types::PyDictMethods::iter(class_r_dict) { let meth_name = class_fn_name.str()?.extract::()?; let meth_doc = match meth_name.as_str() { "__add__" if name.eq(&"Circuit") => r#"Implement the `+` (__add__) magic method to add two Circuits. @@ -466,13 +466,19 @@ fn main() { }}, "Option" => {quote!{ let #pyobject_name = &op - .call_method0(#ident_string) - .map_err(|_| QoqoError::ConversionError)?; - let tmp: Option<&PyAny> = #pyobject_name.extract().map_err(|_| - QoqoError::ConversionError)?; - let #ident = match tmp{ - Some(cw) => Some(convert_into_circuit(&cw.as_borrowed()) - .map_err(|_| QoqoError::ConversionError)?), + .call_method0(#ident_string) + .map_err(|_| QoqoError::ConversionError)?; + let tmp: Option<&Bound> = #pyobject_name.into(); + let #ident = match tmp { + Some(cw) => { + if cw.is_none() { + None + } else { + Some(convert_into_circuit(cw).map_err(|_| { + QoqoError::ConversionError + })?) + } + }, _ => None }; }}, @@ -537,9 +543,9 @@ fn main() { use pyo3::conversion::ToPyObject; use roqoqo::operations::*; use std::collections::HashMap; - use ndarray::Array1; + use ndarray::{Array1, Array2}; use num_complex::Complex64; - use numpy::{PyArray2, PyReadonlyArray1}; + use numpy::{PyReadonlyArray1, PyReadonlyArray2}; /// Tries to convert a [roqoqo::operations::Operation] to a PyObject pub fn convert_operation_to_pyobject(operation: Operation) -> PyResult { diff --git a/qoqo/docs/conf.py b/qoqo/docs/conf.py index b211bb1fa..04546944e 100644 --- a/qoqo/docs/conf.py +++ b/qoqo/docs/conf.py @@ -3,6 +3,7 @@ # """Configuration of sphinx documentation module""" import tomli + main_version = tomli.load(open("../pyproject.toml", "rb"))["project"]["version"] # -- General configuration ------------------------------------------------ @@ -14,16 +15,18 @@ # Add any Sphinx extension module names here, as strings. They can be # extensions coming with Sphinx (named 'sphinx.ext.*') or your custom # ones. -extensions = ['sphinx.ext.autodoc', - 'sphinx.ext.doctest', - 'sphinx.ext.todo', - 'sphinx.ext.coverage', - 'sphinx.ext.mathjax', - 'sphinx.ext.viewcode', - 'sphinx.ext.napoleon', - 'sphinx.ext.autosummary', - 'nbsphinx', - 'myst_parser'] +extensions = [ + "sphinx.ext.autodoc", + "sphinx.ext.doctest", + "sphinx.ext.todo", + "sphinx.ext.coverage", + "sphinx.ext.mathjax", + "sphinx.ext.viewcode", + "sphinx.ext.napoleon", + "sphinx.ext.autosummary", + "nbsphinx", + "myst_parser", +] # automatically use sphinx-autogen autosummary_generate = True autosummary_imported_members = True @@ -34,43 +37,44 @@ # 'both': class and __init__ docstring are concatenated and inserted # 'class': only class docstring inserted # 'init': only init docstring inserted -autoclass_content = 'class' +autoclass_content = "class" # This value is a list of autodoc directive flags that should be automatically applied to # all autodoc directives. The supported flags are 'members', 'undoc-members', # 'private-members', 'special-members', 'inherited-members', 'show-inheritance', # 'ignore-module-all' and 'exclude-members'. -#autodoc_default_flags = ['members', 'exclude-members'] +# autodoc_default_flags = ['members', 'exclude-members'] # The default options for autodoc directives. They are applied to all autodoc directives # automatically. It must be a dictionary which maps option names to the values. autodoc_default_options = { - 'members': True, - 'special-members': False, - 'imported-members': False, - 'private-members': False, - 'inherited-members': False, + "members": True, + "special-members": False, + "imported-members": False, + "private-members": False, + "inherited-members": False, # 'member-order': 'bysource', - 'special-members': False, - 'undoc-members': False, - 'exclude-members': '__init__'} + "special-members": False, + "undoc-members": False, + "exclude-members": "__init__", +} # This value controls the docstrings inheritance. If set to True the docstring for classes # or methods, if not explicitly set, is inherited form parents. autodoc_inherit_docstrings = False # Add any paths that contain templates here, relative to this directory. -templates_path = ['_templates'] +templates_path = ["_templates"] source_suffix = { - '.rst': 'restructuredtext', - '.txt': 'markdown', - '.md': 'markdown', + ".rst": "restructuredtext", + ".txt": "markdown", + ".md": "markdown", } # The master toctree document. -master_doc = 'index' +master_doc = "index" # General information about the project. -project = 'qoqo' -copyright = '2021, HQS Quantum Simulations GmbH' -author = 'The qoqo developers' +project = "qoqo" +copyright = "2021, HQS Quantum Simulations GmbH" +author = "The qoqo developers" # The version info for the project you're documenting, acts as replacement for # |version| and |release|, also used in various other places throughout the @@ -82,15 +86,15 @@ release = version -language = 'English' +language = "English" # List of patterns, relative to source directory, that match files and # directories to ignore when looking for source files. # This patterns also effect to html_static_path and html_extra_path -exclude_patterns = ['_build', 'Thumbs.db', '.DS_Store'] +exclude_patterns = ["_build", "Thumbs.db", ".DS_Store"] # The name of the Pygments (syntax highlighting) style to use. -pygments_style = 'default' +pygments_style = "default" # If true, `todo` and `todoList` produce output, else they produce nothing. todo_include_todos = True @@ -119,7 +123,7 @@ # -- Options for HTMLHelp output ------------------------------------------ # Output file base name for HTML help builder. -htmlhelp_basename = 'qoqodoc' +htmlhelp_basename = "qoqodoc" # -- Options for LaTeX output --------------------------------------------- @@ -128,15 +132,12 @@ # The paper size ('letterpaper' or 'a4paper'). # # 'papersize': 'letterpaper', - # The font size ('10pt', '11pt' or '12pt'). # # 'pointsize': '10pt', - # Additional stuff for the LaTeX preamble. # # 'preamble': '', - # Latex figure (float) alignment # # 'figure_align': 'htbp', @@ -146,8 +147,13 @@ # (source start file, target name, title, # author, documentclass [howto, manual, or own class]). latex_documents = [ - (master_doc, 'qoqo.tex', 'qoqo Documentation', - 'HQS Quantum Simulations GmbH', 'manual'), + ( + master_doc, + "qoqo.tex", + "qoqo Documentation", + "HQS Quantum Simulations GmbH", + "manual", + ), ] @@ -155,10 +161,7 @@ # One entry per manual page. List of tuples # (source start file, name, description, authors, manual section). -man_pages = [ - (master_doc, 'qoqo', 'qoqo Documentation', - [author], 1) -] +man_pages = [(master_doc, "qoqo", "qoqo Documentation", [author], 1)] # -- Options for Texinfo output ------------------------------------------- @@ -167,10 +170,16 @@ # (source start file, target name, title, author, # dir menu entry, description, category) texinfo_documents = [ - (master_doc, 'qoqo', 'qoqo Documentation', - author, 'qoqo', 'One line description of project.', - 'Miscellaneous'), + ( + master_doc, + "qoqo", + "qoqo Documentation", + author, + "qoqo", + "One line description of project.", + "Miscellaneous", + ), ] # Turning off executing notebooks when adding them to Documentation -nbsphinx_execute = 'never' +nbsphinx_execute = "never" diff --git a/qoqo/python/qoqo/DEPENDENCIES b/qoqo/python/qoqo/DEPENDENCIES index 491e3cffc..82804aabb 100644 --- a/qoqo/python/qoqo/DEPENDENCIES +++ b/qoqo/python/qoqo/DEPENDENCIES @@ -4,211 +4,6 @@ https://github.com/gimli-rs/addr2line by A cross-platform symbolication library written in Rust, using `gimli` License: Apache-2.0 OR MIT ----------------------------------------------------- -LICENSE-APACHE: - - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - -TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - -1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - -2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - -3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - -4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - -5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - -6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - -7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - -8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - -9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - -END OF TERMS AND CONDITIONS - -APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - -Copyright [yyyy] [name of copyright owner] - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. - ---------------------------------------------------- LICENSE-MIT: @@ -238,19 +33,12 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -adler2 2.0.0 -https://github.com/oyvindln/adler2 -by Jonas Schievink , oyvindln -A simple clean-room implementation of the Adler-32 checksum -License: 0BSD OR MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: Apache License Version 2.0, January 2004 - https://www.apache.org/licenses/LICENSE-2.0 + http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION @@ -442,7 +230,7 @@ Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at - https://www.apache.org/licenses/LICENSE-2.0 + http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, @@ -450,6 +238,13 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + +==================================================== +adler2 2.0.0 +https://github.com/oyvindln/adler2 +by Jonas Schievink , oyvindln +A simple clean-room implementation of the Adler-32 checksum +License: 0BSD OR MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: @@ -493,19 +288,12 @@ WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - -==================================================== -ahash 0.8.11 -https://github.com/tkaitchuck/ahash -by Tom Kaitchuck -A non-cryptographic hash function using AES-NI for high performance -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: Apache License Version 2.0, January 2004 - http://www.apache.org/licenses/ + https://www.apache.org/licenses/LICENSE-2.0 TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION @@ -697,7 +485,7 @@ Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at - http://www.apache.org/licenses/LICENSE-2.0 + https://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, @@ -705,6 +493,13 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + +==================================================== +ahash 0.8.11 +https://github.com/tkaitchuck/ahash +by Tom Kaitchuck +A non-cryptographic hash function using AES-NI for high performance +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: @@ -734,80 +529,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -aho-corasick 1.1.3 -https://github.com/BurntSushi/aho-corasick -by Andrew Gallant -Fast multiple substring searching. -License: Unlicense OR MIT ----------------------------------------------------- -UNLICENSE: - -This is free and unencumbered software released into the public domain. - -Anyone is free to copy, modify, publish, use, compile, sell, or -distribute this software, either in source code form or as a compiled -binary, for any purpose, commercial or non-commercial, and by any -means. - -In jurisdictions that recognize copyright laws, the author or authors -of this software dedicate any and all copyright interest in the -software to the public domain. We make this dedication for the benefit -of the public at large and to the detriment of our heirs and -successors. We intend this dedication to be an overt act of -relinquishment in perpetuity of all present and future rights to this -software under copyright law. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR -OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, -ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -OTHER DEALINGS IN THE SOFTWARE. - -For more information, please refer to - ----------------------------------------------------- -COPYING: - -This project is dual-licensed under the Unlicense and MIT licenses. - -You may use this code under the terms of either license. - ----------------------------------------------------- -LICENSE-MIT: - -The MIT License (MIT) - -Copyright (c) 2015 Andrew Gallant - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. - - -==================================================== -anyhow 1.0.93 -https://github.com/dtolnay/anyhow -by David Tolnay -Flexible concrete Error type built on std::error::Error -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -988,9 +709,2474 @@ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION END OF TERMS AND CONDITIONS +APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + + +==================================================== +aho-corasick 1.1.3 +https://github.com/BurntSushi/aho-corasick +by Andrew Gallant +Fast multiple substring searching. +License: Unlicense OR MIT +---------------------------------------------------- +LICENSE-MIT: + +The MIT License (MIT) + +Copyright (c) 2015 Andrew Gallant + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + +---------------------------------------------------- +UNLICENSE: + +This is free and unencumbered software released into the public domain. + +Anyone is free to copy, modify, publish, use, compile, sell, or +distribute this software, either in source code form or as a compiled +binary, for any purpose, commercial or non-commercial, and by any +means. + +In jurisdictions that recognize copyright laws, the author or authors +of this software dedicate any and all copyright interest in the +software to the public domain. We make this dedication for the benefit +of the public at large and to the detriment of our heirs and +successors. We intend this dedication to be an overt act of +relinquishment in perpetuity of all present and future rights to this +software under copyright law. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR +OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, +ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +OTHER DEALINGS IN THE SOFTWARE. + +For more information, please refer to + +---------------------------------------------------- +COPYING: + +This project is dual-licensed under the Unlicense and MIT licenses. + +You may use this code under the terms of either license. + + +==================================================== +anstream 0.6.18 +https://github.com/rust-cli/anstyle +by +A simple cross platform library for writing colored text to a terminal. +License: MIT OR Apache-2.0 +---------------------------------------------------- +LICENSE-MIT: + +Copyright (c) Individual contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +---------------------------------------------------- +LICENSE-APACHE: + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "{}" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright {yyyy} {name of copyright owner} + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + + +==================================================== +anstyle 1.0.10 +https://github.com/rust-cli/anstyle +by +ANSI text styling +License: MIT OR Apache-2.0 +---------------------------------------------------- +LICENSE-MIT: + +Copyright (c) 2022 The rust-cli Developers + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +---------------------------------------------------- +LICENSE-APACHE: + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "{}" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright {yyyy} {name of copyright owner} + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + + +==================================================== +anstyle-parse 0.2.6 +https://github.com/rust-cli/anstyle +by +Parse ANSI Style Escapes +License: MIT OR Apache-2.0 +---------------------------------------------------- +LICENSE-MIT: + +Copyright (c) 2016 Joe Wilm and individual contributors + +Permission is hereby granted, free of charge, to any +person obtaining a copy of this software and associated +documentation files (the "Software"), to deal in the +Software without restriction, including without +limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software +is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice +shall be included in all copies or substantial portions +of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF +ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED +TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A +PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT +SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR +IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + +---------------------------------------------------- +LICENSE-APACHE: + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "{}" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright {yyyy} {name of copyright owner} + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + +==================================================== +anstyle-query 1.1.2 +https://github.com/rust-cli/anstyle.git +by +Look up colored console capabilities +License: MIT OR Apache-2.0 +---------------------------------------------------- +LICENSE-MIT: + +Copyright (c) Individual contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +---------------------------------------------------- +LICENSE-APACHE: + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "{}" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright {yyyy} {name of copyright owner} + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + + +==================================================== +anstyle-wincon 3.0.6 +https://github.com/rust-cli/anstyle +by +Styling legacy Windows terminals +License: MIT OR Apache-2.0 +---------------------------------------------------- +LICENSE-MIT: + +Copyright (c) 2015 Josh Triplett, 2022 The rust-cli Developers + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +---------------------------------------------------- +LICENSE-APACHE: + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "{}" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright {yyyy} {name of copyright owner} + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + + +==================================================== +anyhow 1.0.94 +https://github.com/dtolnay/anyhow +by David Tolnay +Flexible concrete Error type built on std::error::Error +License: MIT OR Apache-2.0 +---------------------------------------------------- +LICENSE-MIT: + +Permission is hereby granted, free of charge, to any +person obtaining a copy of this software and associated +documentation files (the "Software"), to deal in the +Software without restriction, including without +limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software +is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice +shall be included in all copies or substantial portions +of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF +ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED +TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A +PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT +SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR +IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + +---------------------------------------------------- +LICENSE-APACHE: + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + +TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + +1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + +2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + +3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + +4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + +5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + +6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + +7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + +8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + +9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + +END OF TERMS AND CONDITIONS + + +==================================================== +approx 0.5.1 +https://github.com/brendanzab/approx +by Brendan Zabarauskas +Approximate floating point equality comparisons and assertions. +License: Apache-2.0 +---------------------------------------------------- +LICENSE: + + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + +==================================================== +autocfg 1.4.0 +https://github.com/cuviper/autocfg +by Josh Stone +Automatic cfg for Rust compiler features +License: Apache-2.0 OR MIT +---------------------------------------------------- +LICENSE-MIT: + +Copyright (c) 2018 Josh Stone + +Permission is hereby granted, free of charge, to any +person obtaining a copy of this software and associated +documentation files (the "Software"), to deal in the +Software without restriction, including without +limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software +is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice +shall be included in all copies or substantial portions +of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF +ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED +TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A +PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT +SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR +IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + +---------------------------------------------------- +LICENSE-APACHE: + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + +TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + +1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + +2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + +3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + +4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + +5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + +6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + +7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + +8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + +9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + +END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + + +==================================================== +backtrace 0.3.74 +https://github.com/rust-lang/backtrace-rs +by The Rust Project Developers +A library to acquire a stack trace (backtrace) at runtime in a Rust program. + +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: +Copyright (c) 2014 Alex Crichton + +Permission is hereby granted, free of charge, to any +person obtaining a copy of this software and associated +documentation files (the "Software"), to deal in the +Software without restriction, including without +limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software +is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice +shall be included in all copies or substantial portions +of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF +ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED +TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A +PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT +SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR +IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + +---------------------------------------------------- +LICENSE-APACHE: + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + +TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + +1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + +2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + +3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + +4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + +5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + +6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + +7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + +8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + +9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + +END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + + +==================================================== +base64 0.22.1 +https://github.com/marshallpierce/rust-base64 +by Marshall Pierce +encodes and decodes base64 as bytes or utf8 +License: MIT OR Apache-2.0 +---------------------------------------------------- +LICENSE-MIT: + +The MIT License (MIT) + +Copyright (c) 2015 Alice Maz + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + +---------------------------------------------------- +LICENSE-APACHE: + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + +TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + +1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + +2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + +3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + +4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + +5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + +6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + +7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + +8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + +9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + +END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + + +==================================================== +bincode 1.3.3 +https://github.com/servo/bincode +by Ty Overby , Francesco Mazzoli , David Tolnay , Zoey Riordan +A binary serialization / deserialization strategy that uses Serde for transforming structs into bytes and vice versa! +License: MIT +---------------------------------------------------- +LICENSE.md: + +The MIT License (MIT) + +Copyright (c) 2014 Ty Overby + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +==================================================== +bit-set 0.5.3 +https://github.com/contain-rs/bit-set +by Alexis Beingessner +A set of bits +License: MIT/Apache-2.0 +---------------------------------------------------- +LICENSE-MIT: + +Copyright (c) 2016 The Rust Project Developers + Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the @@ -1015,226 +3201,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -approx 0.5.1 -https://github.com/brendanzab/approx -by Brendan Zabarauskas -Approximate floating point equality comparisons and assertions. -License: Apache-2.0 ----------------------------------------------------- -LICENSE: - - - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - - END OF TERMS AND CONDITIONS - - APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - - Copyright [yyyy] [name of copyright owner] - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - - -==================================================== -autocfg 1.4.0 -https://github.com/cuviper/autocfg -by Josh Stone -Automatic cfg for Rust compiler features -License: Apache-2.0 OR MIT ---------------------------------------------------- LICENSE-APACHE: @@ -1432,7 +3398,7 @@ Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at - http://www.apache.org/licenses/LICENSE-2.0 + http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, @@ -1440,10 +3406,17 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + +==================================================== +bit-vec 0.6.3 +https://github.com/contain-rs/bit-vec +by Alexis Beingessner +A vector of bits +License: MIT/Apache-2.0 ---------------------------------------------------- LICENSE-MIT: -Copyright (c) 2018 Josh Stone +Copyright (c) 2015 The Rust Project Developers Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated @@ -1469,14 +3442,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -backtrace 0.3.74 -https://github.com/rust-lang/backtrace-rs -by The Rust Project Developers -A library to acquire a stack trace (backtrace) at runtime in a Rust program. - -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -1674,7 +3639,7 @@ Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at - http://www.apache.org/licenses/LICENSE-2.0 + http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, @@ -1682,10 +3647,18 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + +==================================================== +bitflags 2.6.0 +https://github.com/bitflags/bitflags +by The Rust Project Developers +A macro to generate structures which behave like bitflags. + +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: -Copyright (c) 2014 Alex Crichton +Copyright (c) 2014 The Rust Project Developers Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated @@ -1711,13 +3684,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -base64 0.22.1 -https://github.com/marshallpierce/rust-base64 -by Marshall Pierce -encodes and decodes base64 as bytes or utf8 -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -1923,70 +3889,70 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + +==================================================== +borrow-or-share 0.2.2 +https://github.com/yescallop/borrow-or-share +by Scallop Ye +Traits for either borrowing or sharing data. +License: MIT-0 ---------------------------------------------------- -LICENSE-MIT: +LICENSE: -The MIT License (MIT) +MIT No Attribution -Copyright (c) 2015 Alice Maz +Copyright 2024 Scallop Ye Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. - +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. ==================================================== -bincode 1.3.3 -https://github.com/servo/bincode -by Ty Overby , Francesco Mazzoli , David Tolnay , Zoey Riordan -A binary serialization / deserialization strategy that uses Serde for transforming structs into bytes and vice versa! -License: MIT +bumpalo 3.16.0 +https://github.com/fitzgen/bumpalo +by Nick Fitzgerald +A fast bump allocation arena for Rust. +License: MIT OR Apache-2.0 ---------------------------------------------------- -LICENSE.md: +LICENSE-MIT: -The MIT License (MIT) - -Copyright (c) 2014 Ty Overby - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. +Copyright (c) 2019 Nick Fitzgerald + +Permission is hereby granted, free of charge, to any +person obtaining a copy of this software and associated +documentation files (the "Software"), to deal in the +Software without restriction, including without +limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software +is furnished to do so, subject to the following +conditions: +The above copyright notice and this permission notice +shall be included in all copies or substantial portions +of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF +ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED +TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A +PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT +SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR +IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. -==================================================== -bit-set 0.5.3 -https://github.com/contain-rs/bit-set -by Alexis Beingessner -A set of bits -License: MIT/Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -2184,18 +4150,466 @@ Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at - http://www.apache.org/licenses/LICENSE-2.0 + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + + +==================================================== +bytecount 0.6.8 +https://github.com/llogiq/bytecount +by Andre Bogus , Joshua Landau +count occurrences of a given byte, or the number of UTF-8 code points, in a byte slice, fast +License: Apache-2.0/MIT +---------------------------------------------------- +LICENSE.Apache2: + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "{}" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright {yyyy} {name of copyright owner} + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +---------------------------------------------------- +LICENSE.MIT: + +Copyright (c) 2017 The bytecount Developers + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +==================================================== +bytemuck 1.20.0 +https://github.com/Lokathor/bytemuck +by Lokathor +A crate for mucking around with piles of bytes. +License: Zlib OR Apache-2.0 OR MIT +---------------------------------------------------- +LICENSE-MIT: + +MIT License + +Copyright (c) 2019 Daniel "Lokathor" Gee. + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice (including the next paragraph) shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +---------------------------------------------------- +LICENSE-ZLIB: + +Copyright (c) 2019 Daniel "Lokathor" Gee. + +This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software. + +Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required. + +2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. + +3. This notice may not be removed or altered from any source distribution. + +---------------------------------------------------- +LICENSE-APACHE: + +Apache License +Version 2.0, January 2004 +http://www.apache.org/licenses/ + +TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. + + "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. + 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. + 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. + 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: + (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and + (b) You must cause any modified files to carry prominent notices stating that You changed the files; and + (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and + (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. + + You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. + 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. + 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. + 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. + 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. + 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. + +END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + +To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + + +==================================================== +byteorder 1.5.0 +https://github.com/BurntSushi/byteorder +by Andrew Gallant +Library for reading/writing numbers in big-endian and little-endian. +License: Unlicense OR MIT +---------------------------------------------------- +LICENSE-MIT: + +The MIT License (MIT) + +Copyright (c) 2015 Andrew Gallant + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + +---------------------------------------------------- +UNLICENSE: + +This is free and unencumbered software released into the public domain. + +Anyone is free to copy, modify, publish, use, compile, sell, or +distribute this software, either in source code form or as a compiled +binary, for any purpose, commercial or non-commercial, and by any +means. + +In jurisdictions that recognize copyright laws, the author or authors +of this software dedicate any and all copyright interest in the +software to the public domain. We make this dedication for the benefit +of the public at large and to the detriment of our heirs and +successors. We intend this dedication to be an overt act of +relinquishment in perpetuity of all present and future rights to this +software under copyright law. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR +OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, +ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +OTHER DEALINGS IN THE SOFTWARE. + +For more information, please refer to + +---------------------------------------------------- +COPYING: + +This project is dual-licensed under the Unlicense and MIT licenses. + +You may use this code under the terms of either license. + + +==================================================== +bytes 1.9.0 +https://github.com/tokio-rs/bytes +by Carl Lerche , Sean McArthur +Types and traits for working with bytes +License: MIT +---------------------------------------------------- +LICENSE: + +Copyright (c) 2018 Carl Lerche + +Permission is hereby granted, free of charge, to any +person obtaining a copy of this software and associated +documentation files (the "Software"), to deal in the +Software without restriction, including without +limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software +is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice +shall be included in all copies or substantial portions +of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF +ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED +TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A +PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT +SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR +IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. +==================================================== +cfg-if 1.0.0 +https://github.com/alexcrichton/cfg-if +by Alex Crichton +A macro to ergonomically define an item depending on a large number of #[cfg] +parameters. Structured like an if-else chain, the first matching branch is the +item that gets emitted. +License: MIT/Apache-2.0 ---------------------------------------------------- LICENSE-MIT: -Copyright (c) 2016 The Rust Project Developers +Copyright (c) 2014 Alex Crichton Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated @@ -2221,13 +4635,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -bit-vec 0.6.3 -https://github.com/contain-rs/bit-vec -by Alexis Beingessner -A vector of bits -License: MIT/Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -2425,7 +4832,7 @@ Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at - http://www.apache.org/licenses/LICENSE-2.0 + http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, @@ -2433,297 +4840,502 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + +==================================================== +clap 4.4.18 +https://github.com/clap-rs/clap +by +A simple to use, efficient, and full-featured Command Line Argument Parser +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: -Copyright (c) 2015 The Rust Project Developers +Copyright (c) Individual contributors -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. +---------------------------------------------------- +LICENSE-APACHE: -==================================================== -bitflags 2.6.0 -https://github.com/bitflags/bitflags -by The Rust Project Developers -A macro to generate structures which behave like bitflags. + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "{}" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright {yyyy} {name of copyright owner} + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + + +==================================================== +clap_builder 4.4.18 +https://github.com/clap-rs/clap +by +A simple to use, efficient, and full-featured Command Line Argument Parser License: MIT OR Apache-2.0 ---------------------------------------------------- -LICENSE-APACHE: +LICENSE-MIT: - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ +The MIT License (MIT) -TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION +Copyright (c) 2015-2022 Kevin B. Knapp and Clap Contributors -1. Definitions. +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. +---------------------------------------------------- +LICENSE-APACHE: - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. + 1. Definitions. - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. -2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. -3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. -4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. -5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: -6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and -7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and -8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and -9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. -END OF TERMS AND CONDITIONS + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. -APPENDIX: How to apply the Apache License to your work. + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. -Copyright [yyyy] [name of copyright owner] + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. - http://www.apache.org/licenses/LICENSE-2.0 + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. + END OF TERMS AND CONDITIONS ----------------------------------------------------- -LICENSE-MIT: + APPENDIX: How to apply the Apache License to your work. -Copyright (c) 2014 The Rust Project Developers + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: + Copyright [yyyy] [name of copyright owner] -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. ==================================================== -borrow-or-share 0.2.2 -https://github.com/yescallop/borrow-or-share -by Scallop Ye -Traits for either borrowing or sharing data. -License: MIT-0 +clap_lex 0.6.0 +https://github.com/clap-rs/clap/tree/master/clap_lex +by +Minimal, flexible command line parser +License: MIT OR Apache-2.0 ---------------------------------------------------- -LICENSE: +LICENSE-MIT: -MIT No Attribution +The MIT License (MIT) -Copyright 2024 Scallop Ye +Copyright (c) 2015-2022 Kevin B. Knapp and Clap Contributors Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is -furnished to do so. +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, @@ -2733,255 +5345,243 @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -==================================================== -bumpalo 3.16.0 -https://github.com/fitzgen/bumpalo -by Nick Fitzgerald -A fast bump allocation arena for Rust. -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ -TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION -1. Definitions. + 1. Definitions. - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. -2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. -3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. -4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. -5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. -6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. -7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. -8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. -9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. -END OF TERMS AND CONDITIONS + END OF TERMS AND CONDITIONS -APPENDIX: How to apply the Apache License to your work. + APPENDIX: How to apply the Apache License to your work. - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. -Copyright [yyyy] [name of copyright owner] + Copyright [yyyy] [name of copyright owner] -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at - http://www.apache.org/licenses/LICENSE-2.0 + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. +==================================================== +colorchoice 1.0.3 +https://github.com/rust-cli/anstyle.git +by +Global override of color control +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: -Copyright (c) 2019 Nick Fitzgerald - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: +Copyright (c) Individual contributors -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. -==================================================== -bytecount 0.6.8 -https://github.com/llogiq/bytecount -by Andre Bogus , Joshua Landau -count occurrences of a given byte, or the number of UTF-8 code points, in a byte slice, fast -License: Apache-2.0/MIT ---------------------------------------------------- -LICENSE.Apache2: +LICENSE-APACHE: Apache License Version 2.0, January 2004 @@ -3185,208 +5785,18 @@ LICENSE.Apache2: See the License for the specific language governing permissions and limitations under the License. ----------------------------------------------------- -LICENSE.MIT: - -Copyright (c) 2017 The bytecount Developers - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. - - -==================================================== -bytemuck 1.20.0 -https://github.com/Lokathor/bytemuck -by Lokathor -A crate for mucking around with piles of bytes. -License: Zlib OR Apache-2.0 OR MIT ----------------------------------------------------- -LICENSE-APACHE: - -Apache License -Version 2.0, January 2004 -http://www.apache.org/licenses/ - -TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. - - "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. - 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. - 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. - 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: - (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and - (b) You must cause any modified files to carry prominent notices stating that You changed the files; and - (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and - (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. - - You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. - 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. - 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. - 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. - 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. - 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. - -END OF TERMS AND CONDITIONS - -APPENDIX: How to apply the Apache License to your work. - -To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. - -Copyright [yyyy] [name of copyright owner] - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - -http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. - ----------------------------------------------------- -LICENSE-MIT: - -MIT License - -Copyright (c) 2019 Daniel "Lokathor" Gee. - -Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice (including the next paragraph) shall be included in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------------------- -LICENSE-ZLIB: - -Copyright (c) 2019 Daniel "Lokathor" Gee. - -This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software. - -Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: - -1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required. - -2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. - -3. This notice may not be removed or altered from any source distribution. ==================================================== -byteorder 1.5.0 -https://github.com/BurntSushi/byteorder -by Andrew Gallant -Library for reading/writing numbers in big-endian and little-endian. -License: Unlicense OR MIT ----------------------------------------------------- -UNLICENSE: - -This is free and unencumbered software released into the public domain. - -Anyone is free to copy, modify, publish, use, compile, sell, or -distribute this software, either in source code form or as a compiled -binary, for any purpose, commercial or non-commercial, and by any -means. - -In jurisdictions that recognize copyright laws, the author or authors -of this software dedicate any and all copyright interest in the -software to the public domain. We make this dedication for the benefit -of the public at large and to the detriment of our heirs and -successors. We intend this dedication to be an overt act of -relinquishment in perpetuity of all present and future rights to this -software under copyright law. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR -OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, -ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -OTHER DEALINGS IN THE SOFTWARE. - -For more information, please refer to - ----------------------------------------------------- -COPYING: - -This project is dual-licensed under the Unlicense and MIT licenses. - -You may use this code under the terms of either license. +displaydoc 0.2.5 +https://github.com/yaahc/displaydoc +by Jane Lusby +A derive macro for implementing the display Trait via a doc comment and string interpolation +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: -The MIT License (MIT) - -Copyright (c) 2015 Andrew Gallant - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. - - -==================================================== -bytes 1.8.0 -https://github.com/tokio-rs/bytes -by Carl Lerche , Sean McArthur -Types and traits for working with bytes -License: MIT ----------------------------------------------------- -LICENSE: - -Copyright (c) 2018 Carl Lerche - Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the @@ -3411,16 +5821,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -cfg-if 1.0.0 -https://github.com/alexcrichton/cfg-if -by Alex Crichton -A macro to ergonomically define an item depending on a large number of #[cfg] -parameters. Structured like an if-else chain, the first matching branch is the -item that gets emitted. - -License: MIT/Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -3626,248 +6026,13 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ----------------------------------------------------- -LICENSE-MIT: - -Copyright (c) 2014 Alex Crichton - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. - ==================================================== -displaydoc 0.2.5 -https://github.com/yaahc/displaydoc -by Jane Lusby -A derive macro for implementing the display Trait via a doc comment and string interpolation - +dyn-clone 1.0.17 +https://github.com/dtolnay/dyn-clone +by David Tolnay +Clone trait that is object-safe License: MIT OR Apache-2.0 ----------------------------------------------------- -LICENSE-APACHE: - - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - -TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - -1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - -2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - -3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - -4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - -5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - -6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - -7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - -8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - -9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - -END OF TERMS AND CONDITIONS - -APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - -Copyright [yyyy] [name of copyright owner] - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. - ---------------------------------------------------- LICENSE-MIT: @@ -3895,13 +6060,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -dyn-clone 1.0.17 -https://github.com/dtolnay/dyn-clone -by David Tolnay -Clone trait that is object-safe -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -4082,9 +6240,19 @@ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION END OF TERMS AND CONDITIONS + +==================================================== +either 1.13.0 +https://github.com/rayon-rs/either +by bluss +The enum `Either` with variants `Left` and `Right` is a general purpose sum type with two cases. + +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: +Copyright (c) 2015 + Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the @@ -4109,14 +6277,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -either 1.13.0 -https://github.com/rayon-rs/either -by bluss -The enum `Either` with variants `Left` and `Right` is a general purpose sum type with two cases. - -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -4322,35 +6482,6 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ----------------------------------------------------- -LICENSE-MIT: - -Copyright (c) 2015 - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. - ==================================================== email_address 0.2.9 @@ -4390,6 +6521,35 @@ https://github.com/cuviper/equivalent by Traits for key comparison in maps. License: Apache-2.0 OR MIT +---------------------------------------------------- +LICENSE-MIT: + +Copyright (c) 2016--2023 + +Permission is hereby granted, free of charge, to any +person obtaining a copy of this software and associated +documentation files (the "Software"), to deal in the +Software without restriction, including without +limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software +is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice +shall be included in all copies or substantial portions +of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF +ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED +TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A +PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT +SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR +IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + ---------------------------------------------------- LICENSE-APACHE: @@ -4595,35 +6755,6 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ----------------------------------------------------- -LICENSE-MIT: - -Copyright (c) 2016--2023 - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. - ==================================================== fancy-regex 0.13.0 @@ -4663,211 +6794,6 @@ https://github.com/petgraph/fixedbitset by bluss FixedBitSet is a simple bitset collection License: MIT/Apache-2.0 ----------------------------------------------------- -LICENSE-APACHE: - - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - -TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - -1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - -2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - -3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - -4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - -5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - -6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - -7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - -8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - -9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - -END OF TERMS AND CONDITIONS - -APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - -Copyright [yyyy] [name of copyright owner] - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. - ---------------------------------------------------- LICENSE-MIT: @@ -4897,6 +6823,211 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +---------------------------------------------------- +LICENSE-APACHE: + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + +TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + +1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + +2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + +3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + +4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + +5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + +6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + +7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + +8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + +9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + +END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + ==================================================== fluent-uri 0.3.2 @@ -4935,6 +7066,35 @@ https://github.com/servo/rust-fnv by Alex Crichton Fowler–Noll–Vo hash function License: Apache-2.0 / MIT +---------------------------------------------------- +LICENSE-MIT: + +Copyright (c) 2017 Contributors + +Permission is hereby granted, free of charge, to any +person obtaining a copy of this software and associated +documentation files (the "Software"), to deal in the +Software without restriction, including without +limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software +is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice +shall be included in all copies or substantial portions +of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF +ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED +TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A +PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT +SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR +IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + ---------------------------------------------------- LICENSE-APACHE: @@ -5140,10 +7300,17 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + +==================================================== +form_urlencoded 1.2.1 +https://github.com/servo/rust-url +by The rust-url developers +Parser and serializer for the application/x-www-form-urlencoded syntax, as used by HTML forms. +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: -Copyright (c) 2017 Contributors +Copyright (c) 2013-2016 The rust-url developers Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated @@ -5169,13 +7336,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -form_urlencoded 1.2.1 -https://github.com/servo/rust-url -by The rust-url developers -Parser and serializer for the application/x-www-form-urlencoded syntax, as used by HTML forms. -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -5381,10 +7541,17 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + +==================================================== +fraction 0.15.3 +https://github.com/dnsl48/fraction.git +by dnsl48 +Lossless fractions and decimals; drop-in float replacement +License: MIT/Apache-2.0 ---------------------------------------------------- LICENSE-MIT: -Copyright (c) 2013-2016 The rust-url developers +Copyright (c) 2014 The Rust Project Developers Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated @@ -5410,13 +7577,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -fraction 0.15.3 -https://github.com/dnsl48/fraction.git -by dnsl48 -Lossless fractions and decimals; drop-in float replacement -License: MIT/Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -5622,35 +7782,6 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ----------------------------------------------------- -LICENSE-MIT: - -Copyright (c) 2014 The Rust Project Developers - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. - ==================================================== futures-channel 0.3.31 @@ -5659,212 +7790,6 @@ by Channels for asynchronous communication using futures-rs. License: MIT OR Apache-2.0 ----------------------------------------------------- -LICENSE-APACHE: - - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - -TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - -1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - -2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - -3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - -4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - -5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - -6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - -7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - -8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - -9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - -END OF TERMS AND CONDITIONS - -APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - -Copyright (c) 2016 Alex Crichton -Copyright (c) 2017 The Tokio Authors - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. - ---------------------------------------------------- LICENSE-MIT: @@ -5895,14 +7820,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -futures-core 0.3.31 -https://rust-lang.github.io/futures-rs -by -The core traits and types in for the `futures` library. - -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -6109,6 +8026,14 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + +==================================================== +futures-core 0.3.31 +https://rust-lang.github.io/futures-rs +by +The core traits and types in for the `futures` library. + +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: @@ -6139,14 +8064,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -futures-io 0.3.31 -https://rust-lang.github.io/futures-rs -by -The `AsyncRead`, `AsyncWrite`, `AsyncSeek`, and `AsyncBufRead` traits for the futures-rs library. - -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -6353,6 +8270,14 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + +==================================================== +futures-io 0.3.31 +https://rust-lang.github.io/futures-rs +by +The `AsyncRead`, `AsyncWrite`, `AsyncSeek`, and `AsyncBufRead` traits for the futures-rs library. + +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: @@ -6383,14 +8308,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -futures-sink 0.3.31 -https://rust-lang.github.io/futures-rs -by -The asynchronous `Sink` trait for the futures-rs library. - -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -6597,6 +8514,14 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + +==================================================== +futures-sink 0.3.31 +https://rust-lang.github.io/futures-rs +by +The asynchronous `Sink` trait for the futures-rs library. + +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: @@ -6627,14 +8552,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -futures-task 0.3.31 -https://rust-lang.github.io/futures-rs -by -Tools for working with tasks. - -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -6841,6 +8758,14 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + +==================================================== +futures-task 0.3.31 +https://rust-lang.github.io/futures-rs +by +Tools for working with tasks. + +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: @@ -6871,14 +8796,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -futures-util 0.3.31 -https://rust-lang.github.io/futures-rs -by -Common utilities and extension traits for the futures-rs library. - -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -7085,6 +9002,14 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + +==================================================== +futures-util 0.3.31 +https://rust-lang.github.io/futures-rs +by +Common utilities and extension traits for the futures-rs library. + +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: @@ -7115,19 +9040,12 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -getrandom 0.2.15 -https://github.com/rust-random/getrandom -by The Rand Project Developers -A small cross-platform library for retrieving random data from system source -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: Apache License Version 2.0, January 2004 - https://www.apache.org/licenses/ + http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION @@ -7313,13 +9231,14 @@ APPENDIX: How to apply the Apache License to your work. same "printed page" as the copyright notice for easier identification within third-party archives. -Copyright [yyyy] [name of copyright owner] +Copyright (c) 2016 Alex Crichton +Copyright (c) 2017 The Tokio Authors Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at - https://www.apache.org/licenses/LICENSE-2.0 + http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, @@ -7327,6 +9246,13 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + +==================================================== +getrandom 0.2.15 +https://github.com/rust-random/getrandom +by The Rand Project Developers +A small cross-platform library for retrieving random data from system source +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: @@ -7357,19 +9283,12 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -gimli 0.31.1 -https://github.com/gimli-rs/gimli -by -A library for reading and writing the DWARF debugging format. -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: Apache License Version 2.0, January 2004 - http://www.apache.org/licenses/ + https://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION @@ -7561,7 +9480,7 @@ Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at - http://www.apache.org/licenses/LICENSE-2.0 + https://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, @@ -7569,6 +9488,13 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + +==================================================== +gimli 0.31.1 +https://github.com/gimli-rs/gimli +by +A library for reading and writing the DWARF debugging format. +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: @@ -7598,13 +9524,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -hashbrown 0.15.2 -https://github.com/rust-lang/hashbrown -by Amanieu d'Antras -A Rust port of Google's SwissTable hash map -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -7810,6 +9729,13 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + +==================================================== +hashbrown 0.15.2 +https://github.com/rust-lang/hashbrown +by Amanieu d'Antras +A Rust port of Google's SwissTable hash map +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: @@ -7839,13 +9765,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -heck 0.4.1 -https://github.com/withoutboats/heck -by Without Boats -heck is a case conversion library. -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -8051,6 +9970,13 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + +==================================================== +heck 0.4.1 +https://github.com/withoutboats/heck +by Without Boats +heck is a case conversion library. +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: @@ -8080,13 +10006,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -hermit-abi 0.3.9 -https://github.com/hermit-os/hermit-rs -by Stefan Lankes -Hermit system calls definitions. -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -8292,9 +10211,19 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + +==================================================== +http 1.2.0 +https://github.com/hyperium/http +by Alex Crichton , Carl Lerche , Sean McArthur +A set of types for representing HTTP requests and responses. + +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: +Copyright (c) 2017 http-rs authors + Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the @@ -8319,14 +10248,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -http 1.1.0 -https://github.com/hyperium/http -by Alex Crichton , Carl Lerche , Sean McArthur -A set of types for representing HTTP requests and responses. - -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -8532,35 +10453,6 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ----------------------------------------------------- -LICENSE-MIT: - -Copyright (c) 2017 http-rs authors - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. - ==================================================== http-body 1.0.1 @@ -8642,6 +10534,30 @@ https://github.com/seanmonstar/httparse by Sean McArthur A tiny, safe, speedy, zero-copy HTTP/1.x parser. License: MIT OR Apache-2.0 +---------------------------------------------------- +LICENSE-MIT: + +Copyright (c) 2015-2024 Sean McArthur + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + ---------------------------------------------------- LICENSE-APACHE: @@ -8847,30 +10763,6 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ----------------------------------------------------- -LICENSE-MIT: - -Copyright (c) 2015-2024 Sean McArthur - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. - - ==================================================== hyper 1.5.1 @@ -9508,6 +11400,35 @@ https://github.com/servo/rust-url/ by The rust-url developers IDNA (Internationalizing Domain Names in Applications) and Punycode. License: MIT OR Apache-2.0 +---------------------------------------------------- +LICENSE-MIT: + +Copyright (c) 2013-2022 The rust-url developers + +Permission is hereby granted, free of charge, to any +person obtaining a copy of this software and associated +documentation files (the "Software"), to deal in the +Software without restriction, including without +limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software +is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice +shall be included in all copies or substantial portions +of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF +ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED +TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A +PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT +SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR +IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + ---------------------------------------------------- LICENSE-APACHE: @@ -9713,10 +11634,17 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + +==================================================== +idna_adapter 1.2.0 +https://docs.rs/crate/idna_adapter/latest +by The rust-url developers +Back end adapter for idna +License: Apache-2.0 OR MIT ---------------------------------------------------- LICENSE-MIT: -Copyright (c) 2013-2022 The rust-url developers +Copyright (c) The rust-url developers Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated @@ -9742,13 +11670,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -idna_adapter 1.2.0 -https://docs.rs/crate/idna_adapter/latest -by The rust-url developers -Back end adapter for idna -License: Apache-2.0 OR MIT ---------------------------------------------------- LICENSE-APACHE: @@ -9954,10 +11875,17 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + +==================================================== +indexmap 2.7.0 +https://github.com/indexmap-rs/indexmap +by +A hash table with consistent order and fast iteration. +License: Apache-2.0 OR MIT ---------------------------------------------------- LICENSE-MIT: -Copyright (c) The rust-url developers +Copyright (c) 2016--2017 Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated @@ -9983,13 +11911,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -indexmap 2.6.0 -https://github.com/indexmap-rs/indexmap -by -A hash table with consistent order and fast iteration. -License: Apache-2.0 OR MIT ---------------------------------------------------- LICENSE-APACHE: @@ -10195,11 +12116,16 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + +==================================================== +indoc 2.0.5 +https://github.com/dtolnay/indoc +by David Tolnay +Indented document literals +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: -Copyright (c) 2016--2017 - Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the @@ -10224,13 +12150,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -indoc 2.0.5 -https://github.com/dtolnay/indoc -by David Tolnay -Indented document literals -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -10411,6 +12330,13 @@ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION END OF TERMS AND CONDITIONS + +==================================================== +inventory 0.3.15 +https://github.com/dtolnay/inventory +by David Tolnay +Typed distributed plugin registration +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: @@ -10438,13 +12364,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -inventory 0.3.15 -https://github.com/dtolnay/inventory -by David Tolnay -Typed distributed plugin registration -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -10625,40 +12544,259 @@ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION END OF TERMS AND CONDITIONS + +==================================================== +ipnet 2.10.1 +https://github.com/krisprice/ipnet +by Kris Price +Provides types and useful methods for working with IPv4 and IPv6 network addresses, commonly called IP prefixes. The new `IpNet`, `Ipv4Net`, and `Ipv6Net` types build on the existing `IpAddr`, `Ipv4Addr`, and `Ipv6Addr` types already provided in Rust's standard library and align to their design to stay consistent. The module also provides useful traits that extend `Ipv4Addr` and `Ipv6Addr` with methods for `Add`, `Sub`, `BitAnd`, and `BitOr` operations. The module only uses stable feature so it is guaranteed to compile using the stable toolchain. +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: +Copyright 2017 Juniper Networks, Inc. -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +---------------------------------------------------- +LICENSE-APACHE: + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "{}" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright 2017 Juniper Networks, Inc. + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. ==================================================== -ipnet 2.10.1 -https://github.com/krisprice/ipnet -by Kris Price -Provides types and useful methods for working with IPv4 and IPv6 network addresses, commonly called IP prefixes. The new `IpNet`, `Ipv4Net`, and `Ipv6Net` types build on the existing `IpAddr`, `Ipv4Addr`, and `Ipv6Addr` types already provided in Rust's standard library and align to their design to stay consistent. The module also provides useful traits that extend `Ipv4Addr` and `Ipv6Addr` with methods for `Add`, `Sub`, `BitAnd`, and `BitOr` operations. The module only uses stable feature so it is guaranteed to compile using the stable toolchain. +is_terminal_polyfill 1.70.1 +https://github.com/polyfill-rs/is_terminal_polyfill +by +Polyfill for `is_terminal` stdlib feature for use with older MSRVs License: MIT OR Apache-2.0 +---------------------------------------------------- +LICENSE-MIT: + +Copyright (c) Individual contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + ---------------------------------------------------- LICENSE-APACHE: @@ -10850,7 +12988,7 @@ LICENSE-APACHE: same "printed page" as the copyright notice for easier identification within third-party archives. - Copyright 2017 Juniper Networks, Inc. + Copyright {yyyy} {name of copyright owner} Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -10864,16 +13002,6 @@ LICENSE-APACHE: See the License for the specific language governing permissions and limitations under the License. ----------------------------------------------------- -LICENSE-MIT: - -Copyright 2017 Juniper Networks, Inc. - -Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ==================================================== @@ -10882,6 +13010,35 @@ https://github.com/rust-itertools/itertools by bluss Extra iterator adaptors, iterator methods, free functions, and macros. License: MIT OR Apache-2.0 +---------------------------------------------------- +LICENSE-MIT: + +Copyright (c) 2015 + +Permission is hereby granted, free of charge, to any +person obtaining a copy of this software and associated +documentation files (the "Software"), to deal in the +Software without restriction, including without +limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software +is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice +shall be included in all copies or substantial portions +of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF +ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED +TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A +PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT +SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR +IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + ---------------------------------------------------- LICENSE-APACHE: @@ -11087,6 +13244,13 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + +==================================================== +itertools 0.13.0 +https://github.com/rust-itertools/itertools +by bluss +Extra iterator adaptors, iterator methods, free functions, and macros. +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: @@ -11116,13 +13280,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -itertools 0.13.0 -https://github.com/rust-itertools/itertools -by bluss -Extra iterator adaptors, iterator methods, free functions, and macros. -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -11328,222 +13485,13 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ----------------------------------------------------- -LICENSE-MIT: - -Copyright (c) 2015 - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. - ==================================================== -itoa 1.0.13 +itoa 1.0.14 https://github.com/dtolnay/itoa by David Tolnay Fast integer primitive to string conversion License: MIT OR Apache-2.0 ----------------------------------------------------- -LICENSE-APACHE: - - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - -TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - -1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - -2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - -3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - -4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - -5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - -6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - -7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - -8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - -9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - -END OF TERMS AND CONDITIONS - ---------------------------------------------------- LICENSE-MIT: @@ -11571,15 +13519,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -js-sys 0.3.72 -https://rustwasm.github.io/wasm-bindgen/ -by The wasm-bindgen Developers -Bindings for all JS global objects and functions in all JS environments like -Node.js and browsers, built on `#[wasm_bindgen]` using the `wasm-bindgen` crate. - -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -11760,31 +13699,15 @@ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION END OF TERMS AND CONDITIONS -APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - -Copyright [yyyy] [name of copyright owner] - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. +==================================================== +js-sys 0.3.74 +https://rustwasm.github.io/wasm-bindgen/ +by The wasm-bindgen Developers +Bindings for all JS global objects and functions in all JS environments like +Node.js and browsers, built on `#[wasm_bindgen]` using the `wasm-bindgen` crate. +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: @@ -11814,20 +13737,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -jsonschema 0.23.0 -https://github.com/Stranger6667/jsonschema-rs -by Dmitry Dygalo -JSON schema validaton library -License: MIT - -==================================================== -lazy_static 1.5.0 -https://github.com/rust-lang-nursery/lazy-static.rs -by Marvin Löbel -A macro for declaring lazily evaluated statics in Rust. -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -12033,6 +13942,20 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + +==================================================== +jsonschema 0.23.0 +https://github.com/Stranger6667/jsonschema-rs +by Dmitry Dygalo +JSON schema validaton library +License: MIT + +==================================================== +lazy_static 1.5.0 +https://github.com/rust-lang-nursery/lazy-static.rs +by Marvin Löbel +A macro for declaring lazily evaluated statics in Rust. +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: @@ -12062,14 +13985,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -libc 0.2.164 -https://github.com/rust-lang/libc -by The Rust Project Developers -Raw FFI bindings to platform libraries like libc. - -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -12250,6 +14165,39 @@ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION END OF TERMS AND CONDITIONS +APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + + +==================================================== +libc 0.2.167 +https://github.com/rust-lang/libc +by The Rust Project Developers +Raw FFI bindings to platform libraries like libc. + +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: @@ -12279,6 +14227,186 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +---------------------------------------------------- +LICENSE-APACHE: + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + +TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + +1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + +2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + +3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + +4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + +5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + +6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + +7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + +8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + +9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + +END OF TERMS AND CONDITIONS + ==================================================== libm 0.2.11 @@ -12612,6 +14740,35 @@ https://github.com/Amanieu/parking_lot by Amanieu d'Antras Wrappers to create fully-featured Mutex and RwLock types. Compatible with no_std. License: MIT OR Apache-2.0 +---------------------------------------------------- +LICENSE-MIT: + +Copyright (c) 2016 The Rust Project Developers + +Permission is hereby granted, free of charge, to any +person obtaining a copy of this software and associated +documentation files (the "Software"), to deal in the +Software without restriction, including without +limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software +is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice +shall be included in all copies or substantial portions +of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF +ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED +TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A +PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT +SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR +IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + ---------------------------------------------------- LICENSE-APACHE: @@ -12817,10 +14974,18 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + +==================================================== +log 0.4.22 +https://github.com/rust-lang/log +by The Rust Project Developers +A lightweight logging facade for Rust + +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: -Copyright (c) 2016 The Rust Project Developers +Copyright (c) 2014 The Rust Project Developers Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated @@ -12846,14 +15011,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -log 0.4.22 -https://github.com/rust-lang/log -by The Rust Project Developers -A lightweight logging facade for Rust - -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -13059,10 +15216,21 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + +==================================================== +matrixmultiply 0.3.9 +https://github.com/bluss/matrixmultiply/ +by bluss, R. Janis Goldschmidt +General matrix multiplication for f32 and f64 matrices. Operates on matrices with general layout (they can use arbitrary row and column stride). Detects and uses AVX or SSE2 on x86 platforms transparently for higher performance. Uses a microkernel strategy, so that the implementation is easy to parallelize and optimize. + +Supports multithreading. +License: MIT/Apache-2.0 ---------------------------------------------------- LICENSE-MIT: -Copyright (c) 2014 The Rust Project Developers +Copyright (c) 2016 - 2023 Ulrik Sverdrup "bluss" +Copyirhgt (c) 2018 R. Janis Goldschmidt +Copyright (c) 2021 DutchGhost [constparse.rs] Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated @@ -13088,15 +15256,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -matrixmultiply 0.3.9 -https://github.com/bluss/matrixmultiply/ -by bluss, R. Janis Goldschmidt -General matrix multiplication for f32 and f64 matrices. Operates on matrices with general layout (they can use arbitrary row and column stride). Detects and uses AVX or SSE2 on x86 platforms transparently for higher performance. Uses a microkernel strategy, so that the implementation is easy to parallelize and optimize. - -Supports multithreading. -License: MIT/Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -13302,37 +15461,6 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ----------------------------------------------------- -LICENSE-MIT: - -Copyright (c) 2016 - 2023 Ulrik Sverdrup "bluss" -Copyirhgt (c) 2018 R. Janis Goldschmidt -Copyright (c) 2021 DutchGhost [constparse.rs] - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. - ==================================================== memchr 2.7.4 @@ -13342,6 +15470,31 @@ Provides extremely fast (uses SIMD on x86_64, aarch64 and wasm32) routines for 1, 2 or 3 byte search and single substring search. License: Unlicense OR MIT +---------------------------------------------------- +LICENSE-MIT: + +The MIT License (MIT) + +Copyright (c) 2015 Andrew Gallant + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + ---------------------------------------------------- UNLICENSE: @@ -13377,31 +15530,6 @@ This project is dual-licensed under the Unlicense and MIT licenses. You may use this code under the terms of either license. ----------------------------------------------------- -LICENSE-MIT: - -The MIT License (MIT) - -Copyright (c) 2015 Andrew Gallant - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. - ==================================================== memoffset 0.9.1 @@ -13438,6 +15566,30 @@ https://github.com/hyperium/mime by Sean McArthur Strongly Typed Mimes License: MIT OR Apache-2.0 +---------------------------------------------------- +LICENSE-MIT: + +Copyright (c) 2014 Sean McArthur + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + ---------------------------------------------------- LICENSE-APACHE: @@ -13643,37 +15795,28 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + +==================================================== +miniz_oxide 0.8.0 +https://github.com/Frommi/miniz_oxide/tree/master/miniz_oxide +by Frommi , oyvindln +DEFLATE compression and decompression library rewritten in Rust based on miniz +License: MIT OR Zlib OR Apache-2.0 ---------------------------------------------------- -LICENSE-MIT: +LICENSE-ZLIB.md: -Copyright (c) 2014 Sean McArthur +Copyright (c) 2020 Frommi -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software. -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. +Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. +1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required. +2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. +3. This notice may not be removed or altered from any source distribution. -==================================================== -miniz_oxide 0.8.0 -https://github.com/Frommi/miniz_oxide/tree/master/miniz_oxide -by Frommi , oyvindln -DEFLATE compression and decompression library rewritten in Rust based on miniz -License: MIT OR Zlib OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE.md: @@ -13856,7 +15999,7 @@ LICENSE-APACHE.md: END OF TERMS AND CONDITIONS ---------------------------------------------------- -LICENSE: +LICENSE-MIT.md: MIT License @@ -13881,7 +16024,7 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ---------------------------------------------------- -LICENSE-MIT.md: +LICENSE: MIT License @@ -13905,24 +16048,9 @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ----------------------------------------------------- -LICENSE-ZLIB.md: - -Copyright (c) 2020 Frommi - -This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software. - -Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: - -1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required. - -2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. - -3. This notice may not be removed or altered from any source distribution. - ==================================================== -mio 1.0.2 +mio 1.0.3 https://github.com/tokio-rs/mio by Carl Lerche , Thomas de Zeeuw , Tokio Contributors Lightweight non-blocking I/O. @@ -14180,6 +16308,37 @@ https://github.com/rust-ndarray/ndarray by Ulrik Sverdrup "bluss", Jim Turner An n-dimensional array for general elements and for numerics. Lightweight array views and slicing; views support chunking and splitting. License: MIT OR Apache-2.0 +---------------------------------------------------- +LICENSE-MIT: + +Copyright (c) 2015 - 2021 Ulrik Sverdrup "bluss", + Jim Turner, + and ndarray developers + +Permission is hereby granted, free of charge, to any +person obtaining a copy of this software and associated +documentation files (the "Software"), to deal in the +Software without restriction, including without +limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software +is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice +shall be included in all copies or substantial portions +of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF +ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED +TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A +PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT +SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR +IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + ---------------------------------------------------- LICENSE-APACHE: @@ -14385,12 +16544,19 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + +==================================================== +num 0.4.3 +https://github.com/rust-num/num +by The Rust Project Developers +A collection of numeric types and traits for Rust, including bigint, +complex, rational, range iterators, generic integers, and more! + +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: -Copyright (c) 2015 - 2021 Ulrik Sverdrup "bluss", - Jim Turner, - and ndarray developers +Copyright (c) 2014 The Rust Project Developers Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated @@ -14416,15 +16582,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -num 0.4.3 -https://github.com/rust-num/num -by The Rust Project Developers -A collection of numeric types and traits for Rust, including bigint, -complex, rational, range iterators, generic integers, and more! - -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -14630,6 +16787,13 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + +==================================================== +num-bigint 0.4.6 +https://github.com/rust-num/num-bigint +by The Rust Project Developers +Big integer implementation for Rust +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: @@ -14659,13 +16823,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -num-bigint 0.4.6 -https://github.com/rust-num/num-bigint -by The Rust Project Developers -Big integer implementation for Rust -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -14871,35 +17028,6 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ----------------------------------------------------- -LICENSE-MIT: - -Copyright (c) 2014 The Rust Project Developers - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. - ==================================================== num-cmp 0.1.0 @@ -15298,221 +17426,16 @@ distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. -~~~~ - - - -==================================================== -num-complex 0.4.6 -https://github.com/rust-num/num-complex -by The Rust Project Developers -Complex numbers implementation for Rust -License: MIT OR Apache-2.0 ----------------------------------------------------- -LICENSE-APACHE: - - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - -TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - -1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - -2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - -3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - -4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - -5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - -6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - -7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - -8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - -9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - -END OF TERMS AND CONDITIONS - -APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - -Copyright [yyyy] [name of copyright owner] - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. +~~~~ + + +==================================================== +num-complex 0.4.6 +https://github.com/rust-num/num-complex +by The Rust Project Developers +Complex numbers implementation for Rust +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: @@ -15542,13 +17465,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -num-integer 0.1.46 -https://github.com/rust-num/num-integer -by The Rust Project Developers -Integer traits and functions -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -15754,6 +17670,13 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + +==================================================== +num-integer 0.1.46 +https://github.com/rust-num/num-integer +by The Rust Project Developers +Integer traits and functions +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: @@ -15783,6 +17706,211 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +---------------------------------------------------- +LICENSE-APACHE: + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + +TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + +1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + +2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + +3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + +4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + +5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + +6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + +7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + +8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + +9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + +END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + ==================================================== num-iter 0.1.45 @@ -15790,6 +17918,35 @@ https://github.com/rust-num/num-iter by The Rust Project Developers External iterators for generic mathematics License: MIT OR Apache-2.0 +---------------------------------------------------- +LICENSE-MIT: + +Copyright (c) 2014 The Rust Project Developers + +Permission is hereby granted, free of charge, to any +person obtaining a copy of this software and associated +documentation files (the "Software"), to deal in the +Software without restriction, including without +limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software +is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice +shall be included in all copies or substantial portions +of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF +ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED +TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A +PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT +SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR +IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + ---------------------------------------------------- LICENSE-APACHE: @@ -15995,6 +18152,13 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + +==================================================== +num-rational 0.4.2 +https://github.com/rust-num/num-rational +by The Rust Project Developers +Rational numbers implementation for Rust +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: @@ -16024,13 +18188,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -num-rational 0.4.2 -https://github.com/rust-num/num-rational -by The Rust Project Developers -Rational numbers implementation for Rust -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -16236,6 +18393,13 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + +==================================================== +num-traits 0.2.19 +https://github.com/rust-num/num-traits +by The Rust Project Developers +Numeric traits for generic mathematics +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: @@ -16265,13 +18429,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -num-traits 0.2.19 -https://github.com/rust-num/num-traits -by The Rust Project Developers -Numeric traits for generic mathematics -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -16477,35 +18634,6 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ----------------------------------------------------- -LICENSE-MIT: - -Copyright (c) 2014 The Rust Project Developers - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. - ==================================================== numpy 0.21.0 @@ -16549,6 +18677,35 @@ https://github.com/gimli-rs/object by A unified interface for reading and writing object file formats. License: Apache-2.0 OR MIT +---------------------------------------------------- +LICENSE-MIT: + +Copyright (c) 2015 The Gimli Developers + +Permission is hereby granted, free of charge, to any +person obtaining a copy of this software and associated +documentation files (the "Software"), to deal in the +Software without restriction, including without +limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software +is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice +shall be included in all copies or substantial portions +of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF +ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED +TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A +PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT +SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR +IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + ---------------------------------------------------- LICENSE-APACHE: @@ -16754,11 +18911,16 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + +==================================================== +once_cell 1.20.2 +https://github.com/matklad/once_cell +by Aleksey Kladov +Single assignment cells and lazy values. +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: -Copyright (c) 2015 The Gimli Developers - Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the @@ -16783,13 +18945,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -once_cell 1.20.2 -https://github.com/matklad/once_cell -by Aleksey Kladov -Single assignment cells and lazy values. -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -16995,33 +19150,6 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ----------------------------------------------------- -LICENSE-MIT: - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. - ==================================================== outref 0.5.1 @@ -17060,6 +19188,35 @@ https://github.com/Amanieu/parking_lot by Amanieu d'Antras More compact and efficient implementations of the standard synchronization primitives. License: MIT OR Apache-2.0 +---------------------------------------------------- +LICENSE-MIT: + +Copyright (c) 2016 The Rust Project Developers + +Permission is hereby granted, free of charge, to any +person obtaining a copy of this software and associated +documentation files (the "Software"), to deal in the +Software without restriction, including without +limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software +is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice +shall be included in all copies or substantial portions +of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF +ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED +TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A +PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT +SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR +IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + ---------------------------------------------------- LICENSE-APACHE: @@ -17265,6 +19422,13 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + +==================================================== +parking_lot_core 0.9.10 +https://github.com/Amanieu/parking_lot +by Amanieu d'Antras +An advanced API for creating custom synchronization primitives. +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: @@ -17294,13 +19458,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -parking_lot_core 0.9.10 -https://github.com/Amanieu/parking_lot -by Amanieu d'Antras -An advanced API for creating custom synchronization primitives. -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -17506,11 +19663,16 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + +==================================================== +paste 1.0.15 +https://github.com/dtolnay/paste +by David Tolnay +Macros for all your token pasting needs +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: -Copyright (c) 2016 The Rust Project Developers - Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the @@ -17535,13 +19697,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -paste 1.0.15 -https://github.com/dtolnay/paste -by David Tolnay -Macros for all your token pasting needs -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -17722,9 +19877,18 @@ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION END OF TERMS AND CONDITIONS + +==================================================== +percent-encoding 2.3.1 +https://github.com/servo/rust-url/ +by The rust-url developers +Percent encoding and decoding +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: +Copyright (c) 2013-2022 The rust-url developers + Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the @@ -17749,13 +19913,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -percent-encoding 2.3.1 -https://github.com/servo/rust-url/ -by The rust-url developers -Percent encoding and decoding -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -17961,10 +20118,17 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + +==================================================== +petgraph 0.6.5 +https://github.com/petgraph/petgraph +by bluss, mitchmindtree +Graph data structure library. Provides graph types and graph algorithms. +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: -Copyright (c) 2013-2022 The rust-url developers +Copyright (c) 2015 Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated @@ -17990,13 +20154,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -petgraph 0.6.5 -https://github.com/petgraph/petgraph -by bluss, mitchmindtree -Graph data structure library. Provides graph types and graph algorithms. -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -18202,11 +20359,17 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + +==================================================== +pin-project-lite 0.2.15 +https://github.com/taiki-e/pin-project-lite +by +A lightweight version of pin-project written with declarative macros. + +License: Apache-2.0 OR MIT ---------------------------------------------------- LICENSE-MIT: -Copyright (c) 2015 - Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the @@ -18231,14 +20394,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -pin-project-lite 0.2.15 -https://github.com/taiki-e/pin-project-lite -by -A lightweight version of pin-project written with declarative macros. - -License: Apache-2.0 OR MIT ---------------------------------------------------- LICENSE-APACHE: @@ -18420,9 +20575,19 @@ LICENSE-APACHE: END OF TERMS AND CONDITIONS + +==================================================== +pin-utils 0.1.0 +https://github.com/rust-lang-nursery/pin-utils +by Josef Brandl +Utilities for pinning + +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: +Copyright (c) 2018 The pin-utils authors + Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the @@ -18447,14 +20612,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -pin-utils 0.1.0 -https://github.com/rust-lang-nursery/pin-utils -by Josef Brandl -Utilities for pinning - -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -18660,11 +20817,17 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + +==================================================== +portable-atomic 1.10.0 +https://github.com/taiki-e/portable-atomic +by +Portable atomic types including support for 128-bit atomics, atomic float, etc. + +License: Apache-2.0 OR MIT ---------------------------------------------------- LICENSE-MIT: -Copyright (c) 2018 The pin-utils authors - Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the @@ -18689,14 +20852,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -portable-atomic 1.10.0 -https://github.com/taiki-e/portable-atomic -by -Portable atomic types including support for 128-bit atomics, atomic float, etc. - -License: Apache-2.0 OR MIT ---------------------------------------------------- LICENSE-APACHE: @@ -18878,9 +21033,18 @@ LICENSE-APACHE: END OF TERMS AND CONDITIONS + +==================================================== +ppv-lite86 0.2.20 +https://github.com/cryptocorrosion/cryptocorrosion +by The CryptoCorrosion Contributors +Implementation of the crypto-simd API for x86 +License: MIT/Apache-2.0 ---------------------------------------------------- LICENSE-MIT: +Copyright (c) 2019 The CryptoCorrosion Contributors + Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the @@ -18905,13 +21069,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -ppv-lite86 0.2.20 -https://github.com/cryptocorrosion/cryptocorrosion -by The CryptoCorrosion Contributors -Implementation of the crypto-simd API for x86 -License: MIT/Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -19117,11 +21274,16 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + +==================================================== +proc-macro2 1.0.92 +https://github.com/dtolnay/proc-macro2 +by David Tolnay , Alex Crichton +A substitute implementation of the compiler's `proc_macro` API to decouple token-based libraries from the procedural macro use case. +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: -Copyright (c) 2019 The CryptoCorrosion Contributors - Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the @@ -19146,13 +21308,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -proc-macro2 1.0.92 -https://github.com/dtolnay/proc-macro2 -by David Tolnay , Alex Crichton -A substitute implementation of the compiler's `proc_macro` API to decouple token-based libraries from the procedural macro use case. -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -19333,33 +21488,6 @@ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION END OF TERMS AND CONDITIONS ----------------------------------------------------- -LICENSE-MIT: - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. - ==================================================== pyo3 0.21.2 @@ -19367,199 +21495,6 @@ https://github.com/pyo3/pyo3 by PyO3 Project and Contributors Bindings to Python interpreter License: MIT OR Apache-2.0 ----------------------------------------------------- -LICENSE-APACHE: - - Copyright (c) 2017-present PyO3 Project and Contributors. https://github.com/PyO3 - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - - - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - ---------------------------------------------------- LICENSE-MIT: @@ -19589,13 +21524,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -pyo3-build-config 0.21.2 -https://github.com/pyo3/pyo3 -by PyO3 Project and Contributors -Build configuration for the PyO3 ecosystem -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -19789,6 +21717,13 @@ LICENSE-APACHE: incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. + +==================================================== +pyo3-build-config 0.21.2 +https://github.com/pyo3/pyo3 +by PyO3 Project and Contributors +Build configuration for the PyO3 ecosystem +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: @@ -19818,13 +21753,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -pyo3-ffi 0.21.2 -https://github.com/pyo3/pyo3 -by PyO3 Project and Contributors -Python-API bindings for the PyO3 ecosystem -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -20018,6 +21946,13 @@ LICENSE-APACHE: incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. + +==================================================== +pyo3-ffi 0.21.2 +https://github.com/pyo3/pyo3 +by PyO3 Project and Contributors +Python-API bindings for the PyO3 ecosystem +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: @@ -20047,6 +21982,199 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +---------------------------------------------------- +LICENSE-APACHE: + + Copyright (c) 2017-present PyO3 Project and Contributors. https://github.com/PyO3 + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + ==================================================== pyo3-macros 0.21.2 @@ -20054,6 +22182,35 @@ https://github.com/pyo3/pyo3 by PyO3 Project and Contributors Proc macros for PyO3 package License: MIT OR Apache-2.0 +---------------------------------------------------- +LICENSE-MIT: + +Copyright (c) 2023-present PyO3 Project and Contributors. https://github.com/PyO3 + +Permission is hereby granted, free of charge, to any +person obtaining a copy of this software and associated +documentation files (the "Software"), to deal in the +Software without restriction, including without +limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software +is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice +shall be included in all copies or substantial portions +of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF +ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED +TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A +PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT +SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR +IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + ---------------------------------------------------- LICENSE-APACHE: @@ -20247,6 +22404,13 @@ LICENSE-APACHE: incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. + +==================================================== +pyo3-macros-backend 0.21.2 +https://github.com/pyo3/pyo3 +by PyO3 Project and Contributors +Code generation for PyO3 package +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: @@ -20276,13 +22440,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -pyo3-macros-backend 0.21.2 -https://github.com/pyo3/pyo3 -by PyO3 Project and Contributors -Code generation for PyO3 package -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -20476,35 +22633,6 @@ LICENSE-APACHE: incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. ----------------------------------------------------- -LICENSE-MIT: - -Copyright (c) 2023-present PyO3 Project and Contributors. https://github.com/PyO3 - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. - ==================================================== qoqo 1.17.0 @@ -21359,6 +23487,33 @@ https://github.com/dtolnay/quote by David Tolnay Quasi-quoting macro quote!(...) License: MIT OR Apache-2.0 +---------------------------------------------------- +LICENSE-MIT: + +Permission is hereby granted, free of charge, to any +person obtaining a copy of this software and associated +documentation files (the "Software"), to deal in the +Software without restriction, including without +limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software +is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice +shall be included in all copies or substantial portions +of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF +ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED +TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A +PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT +SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR +IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + ---------------------------------------------------- LICENSE-APACHE: @@ -21539,9 +23694,20 @@ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION END OF TERMS AND CONDITIONS + +==================================================== +rand 0.8.5 +https://rust-random.github.io/book +by The Rand Project Developers, The Rust Project Developers +Random number generators and other randomness functionality. + +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: +Copyright 2018 Developers of the Rand project +Copyright (c) 2014 The Rust Project Developers + Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the @@ -21566,14 +23732,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -rand 0.8.5 -https://rust-random.github.io/book -by The Rand Project Developers, The Rust Project Developers -Random number generators and other randomness functionality. - -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -21754,6 +23912,14 @@ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION END OF TERMS AND CONDITIONS + +==================================================== +rand_chacha 0.3.1 +https://rust-random.github.io/book +by The Rand Project Developers, The Rust Project Developers, The CryptoCorrosion Contributors +ChaCha random number generator + +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: @@ -21784,14 +23950,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -rand_chacha 0.3.1 -https://rust-random.github.io/book -by The Rand Project Developers, The Rust Project Developers, The CryptoCorrosion Contributors -ChaCha random number generator - -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -21997,6 +24155,14 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + +==================================================== +rand_core 0.6.4 +https://rust-random.github.io/book +by The Rand Project Developers, The Rust Project Developers +Core random number generator traits and tools for implementation. + +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: @@ -22027,14 +24193,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -rand_core 0.6.4 -https://rust-random.github.io/book -by The Rand Project Developers, The Rust Project Developers -Core random number generator traits and tools for implementation. - -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -22226,11 +24384,18 @@ APPENDIX: How to apply the Apache License to your work. same "printed page" as the copyright notice for easier identification within third-party archives. + +==================================================== +rand_distr 0.4.3 +https://rust-random.github.io/book +by The Rand Project Developers +Sampling from random number distributions + +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: Copyright 2018 Developers of the Rand project -Copyright (c) 2014 The Rust Project Developers Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated @@ -22256,14 +24421,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -rand_distr 0.4.3 -https://rust-random.github.io/book -by The Rand Project Developers -Sampling from random number distributions - -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -22455,10 +24612,21 @@ APPENDIX: How to apply the Apache License to your work. same "printed page" as the copyright notice for easier identification within third-party archives. + +==================================================== +rawpointer 0.2.1 +https://github.com/bluss/rawpointer/ +by bluss +Extra methods for raw pointers and `NonNull`. + +For example `.post_inc()` and `.pre_dec()` (c.f. `ptr++` and `--ptr`), +`offset` and `add` for `NonNull`, and the function `ptrdistance`. + +License: MIT/Apache-2.0 ---------------------------------------------------- LICENSE-MIT: -Copyright 2018 Developers of the Rand project +Copyright (c) 2015 Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated @@ -22484,17 +24652,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -rawpointer 0.2.1 -https://github.com/bluss/rawpointer/ -by bluss -Extra methods for raw pointers and `NonNull`. - -For example `.post_inc()` and `.pre_dec()` (c.f. `ptr++` and `--ptr`), -`offset` and `add` for `NonNull`, and the function `ptrdistance`. - -License: MIT/Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -22700,35 +24857,6 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ----------------------------------------------------- -LICENSE-MIT: - -Copyright (c) 2015 - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. - ==================================================== redox_syscall 0.5.7 @@ -22769,6 +24897,33 @@ https://github.com/dtolnay/ref-cast by David Tolnay Safely cast &T to &U where the struct U contains a single field of type T. License: MIT OR Apache-2.0 +---------------------------------------------------- +LICENSE-MIT: + +Permission is hereby granted, free of charge, to any +person obtaining a copy of this software and associated +documentation files (the "Software"), to deal in the +Software without restriction, including without +limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software +is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice +shall be included in all copies or substantial portions +of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF +ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED +TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A +PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT +SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR +IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + ---------------------------------------------------- LICENSE-APACHE: @@ -22949,6 +25104,13 @@ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION END OF TERMS AND CONDITIONS + +==================================================== +ref-cast-impl 1.0.23 +https://github.com/dtolnay/ref-cast +by David Tolnay +Derive implementation for ref_cast::RefCast. +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: @@ -22976,13 +25138,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -ref-cast-impl 1.0.23 -https://github.com/dtolnay/ref-cast -by David Tolnay -Derive implementation for ref_cast::RefCast. -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -23163,9 +25318,27 @@ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION END OF TERMS AND CONDITIONS + +==================================================== +referencing 0.23.0 +https://github.com/Stranger6667/jsonschema-rs +by Dmitry Dygalo +An implementation-agnostic JSON reference resolution library for Rust. +License: MIT + +==================================================== +regex 1.11.1 +https://github.com/rust-lang/regex +by The Rust Project Developers, Andrew Gallant +An implementation of regular expressions for Rust. This implementation uses +finite automata and guarantees linear time matching on all inputs. + +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: +Copyright (c) 2014 The Rust Project Developers + Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the @@ -23190,22 +25363,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -referencing 0.23.0 -https://github.com/Stranger6667/jsonschema-rs -by Dmitry Dygalo -An implementation-agnostic JSON reference resolution library for Rust. -License: MIT - -==================================================== -regex 1.11.1 -https://github.com/rust-lang/regex -by The Rust Project Developers, Andrew Gallant -An implementation of regular expressions for Rust. This implementation uses -finite automata and guarantees linear time matching on all inputs. - -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -23411,6 +25568,13 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + +==================================================== +regex-automata 0.4.9 +https://github.com/rust-lang/regex/tree/master/regex-automata +by The Rust Project Developers, Andrew Gallant +Automata construction and matching using regular expressions. +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: @@ -23440,13 +25604,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -regex-automata 0.4.9 -https://github.com/rust-lang/regex/tree/master/regex-automata -by The Rust Project Developers, Andrew Gallant -Automata construction and matching using regular expressions. -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -23652,6 +25809,13 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + +==================================================== +regex-syntax 0.8.5 +https://github.com/rust-lang/regex/tree/master/regex-syntax +by The Rust Project Developers, Andrew Gallant +A regular expression parser. +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: @@ -23681,13 +25845,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -regex-syntax 0.8.5 -https://github.com/rust-lang/regex/tree/master/regex-syntax -by The Rust Project Developers, Andrew Gallant -A regular expression parser. -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -23893,42 +26050,37 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + +==================================================== +reqwest 0.12.9 +https://github.com/seanmonstar/reqwest +by Sean McArthur +higher level HTTP client library +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: -Copyright (c) 2014 The Rust Project Developers +Copyright (c) 2016 Sean McArthur -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. -==================================================== -reqwest 0.12.9 -https://github.com/seanmonstar/reqwest -by Sean McArthur -higher level HTTP client library -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -24134,30 +26286,6 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ----------------------------------------------------- -LICENSE-MIT: - -Copyright (c) 2016 Sean McArthur - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. - - ==================================================== roqoqo 1.17.0 @@ -24801,6 +26929,35 @@ by Alex Crichton Rust compiler symbol demangling. License: MIT/Apache-2.0 +---------------------------------------------------- +LICENSE-MIT: + +Copyright (c) 2014 Alex Crichton + +Permission is hereby granted, free of charge, to any +person obtaining a copy of this software and associated +documentation files (the "Software"), to deal in the +Software without restriction, including without +limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software +is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice +shall be included in all copies or substantial portions +of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF +ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED +TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A +PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT +SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR +IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + ---------------------------------------------------- LICENSE-APACHE: @@ -25006,11 +27163,16 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + +==================================================== +rustc-hash 1.1.0 +https://github.com/rust-lang-nursery/rustc-hash +by The Rust Project Developers +speed, non-cryptographic hash used in rustc +License: Apache-2.0/MIT ---------------------------------------------------- LICENSE-MIT: -Copyright (c) 2014 Alex Crichton - Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the @@ -25035,13 +27197,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -rustc-hash 1.1.0 -https://github.com/rust-lang-nursery/rustc-hash -by The Rust Project Developers -speed, non-cryptographic hash used in rustc -License: Apache-2.0/MIT ---------------------------------------------------- LICENSE-APACHE: @@ -25247,33 +27402,6 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ----------------------------------------------------- -LICENSE-MIT: - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. - ==================================================== ryu 1.0.18 @@ -25281,6 +27409,33 @@ https://github.com/dtolnay/ryu by David Tolnay Fast floating point to string conversion License: Apache-2.0 OR BSL-1.0 +---------------------------------------------------- +LICENSE-BOOST: + +Boost Software License - Version 1.0 - August 17th, 2003 + +Permission is hereby granted, free of charge, to any person or organization +obtaining a copy of the software and accompanying documentation covered by +this license (the "Software") to use, reproduce, display, distribute, +execute, and transmit the Software, and to prepare derivative works of the +Software, and to permit third-parties to whom the Software is furnished to +do so, all subject to the following: + +The copyright notices in the Software and this entire statement, including +the above license grant, this restriction and the following disclaimer, +must be included in all copies of the Software, in whole or in part, and +all derivative works of the Software, unless such copies or derivative +works are solely in the form of machine-executable object code generated by +a source language processor. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT +SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE +FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE, +ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + ---------------------------------------------------- LICENSE-APACHE: @@ -25461,33 +27616,6 @@ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION END OF TERMS AND CONDITIONS ----------------------------------------------------- -LICENSE-BOOST: - -Boost Software License - Version 1.0 - August 17th, 2003 - -Permission is hereby granted, free of charge, to any person or organization -obtaining a copy of the software and accompanying documentation covered by -this license (the "Software") to use, reproduce, display, distribute, -execute, and transmit the Software, and to prepare derivative works of the -Software, and to permit third-parties to whom the Software is furnished to -do so, all subject to the following: - -The copyright notices in the Software and this entire statement, including -the above license grant, this restriction and the following disclaimer, -must be included in all copies of the Software, in whole or in part, and -all derivative works of the Software, unless such copies or derivative -works are solely in the form of machine-executable object code generated by -a source language processor. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT -SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE -FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE, -ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. - ==================================================== safe_arch 0.7.2 @@ -25495,6 +27623,21 @@ https://github.com/Lokathor/safe_arch by Lokathor Crate that exposes `core::arch` safely via `#[cfg()]`. License: Zlib OR Apache-2.0 OR MIT +---------------------------------------------------- +LICENSE-ZLIB.md: + +Copyright (c) 2020 Daniel "Lokathor" Gee. + +This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software. + +Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required. + +2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. + +3. This notice may not be removed or altered from any source distribution. + ---------------------------------------------------- LICENSE-APACHE.md: @@ -25573,21 +27716,6 @@ The above copyright notice and this permission notice (including the next paragr THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ----------------------------------------------------- -LICENSE-ZLIB.md: - -Copyright (c) 2020 Daniel "Lokathor" Gee. - -This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software. - -Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: - -1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required. - -2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. - -3. This notice may not be removed or altered from any source distribution. - ==================================================== schemars 0.8.21 @@ -25664,6 +27792,35 @@ Defines the macros `defer!`, `defer_on_unwind!`, `defer_on_success!` as shorthands for guards with one of the implemented strategies. License: MIT OR Apache-2.0 +---------------------------------------------------- +LICENSE-MIT: + +Copyright (c) 2016-2019 Ulrik Sverdrup "bluss" and scopeguard developers + +Permission is hereby granted, free of charge, to any +person obtaining a copy of this software and associated +documentation files (the "Software"), to deal in the +Software without restriction, including without +limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software +is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice +shall be included in all copies or substantial portions +of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF +ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED +TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A +PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT +SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR +IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + ---------------------------------------------------- LICENSE-APACHE: @@ -25869,35 +28026,6 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ----------------------------------------------------- -LICENSE-MIT: - -Copyright (c) 2016-2019 Ulrik Sverdrup "bluss" and scopeguard developers - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. - ==================================================== serde 1.0.215 @@ -25905,186 +28033,6 @@ https://serde.rs by Erick Tryzelaar , David Tolnay A generic serialization/deserialization framework License: MIT OR Apache-2.0 ----------------------------------------------------- -LICENSE-APACHE: - - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - -TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - -1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - -2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - -3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - -4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - -5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - -6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - -7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - -8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - -9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - -END OF TERMS AND CONDITIONS - ---------------------------------------------------- LICENSE-MIT: @@ -26112,13 +28060,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -serde_derive 1.0.215 -https://serde.rs -by Erick Tryzelaar , David Tolnay -Macros 1.1 implementation of #[derive(Serialize, Deserialize)] -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -26299,6 +28240,13 @@ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION END OF TERMS AND CONDITIONS + +==================================================== +serde_derive 1.0.215 +https://serde.rs +by Erick Tryzelaar , David Tolnay +Macros 1.1 implementation of #[derive(Serialize, Deserialize)] +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: @@ -26326,13 +28274,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -serde_derive_internals 0.29.1 -https://serde.rs -by Erick Tryzelaar , David Tolnay -AST representation used by Serde derive macros. Unstable. -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -26513,6 +28454,13 @@ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION END OF TERMS AND CONDITIONS + +==================================================== +serde_derive_internals 0.29.1 +https://serde.rs +by Erick Tryzelaar , David Tolnay +AST representation used by Serde derive macros. Unstable. +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: @@ -26540,13 +28488,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -serde_json 1.0.133 -https://github.com/serde-rs/json -by Erick Tryzelaar , David Tolnay -A JSON serialization file format -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -26727,6 +28668,13 @@ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION END OF TERMS AND CONDITIONS + +==================================================== +serde_json 1.0.133 +https://github.com/serde-rs/json +by Erick Tryzelaar , David Tolnay +A JSON serialization file format +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: @@ -26754,13 +28702,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -serde_test 1.0.177 -https://github.com/serde-rs/test -by Erick Tryzelaar , David Tolnay -Token De/Serializer for testing De/Serialize implementations -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -26941,6 +28882,13 @@ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION END OF TERMS AND CONDITIONS + +==================================================== +serde_test 1.0.177 +https://github.com/serde-rs/test +by Erick Tryzelaar , David Tolnay +Token De/Serializer for testing De/Serialize implementations +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: @@ -26968,13 +28916,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -serde_urlencoded 0.7.1 -https://github.com/nox/serde_urlencoded -by Anthony Ramine -`x-www-form-urlencoded` meets Serde -License: MIT/Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -27155,6 +29096,13 @@ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION END OF TERMS AND CONDITIONS + +==================================================== +serde_urlencoded 0.7.1 +https://github.com/nox/serde_urlencoded +by Anthony Ramine +`x-www-form-urlencoded` meets Serde +License: MIT/Apache-2.0 ---------------------------------------------------- LICENSE-MIT: @@ -27184,6 +29132,186 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +---------------------------------------------------- +LICENSE-APACHE: + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + +TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + +1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + +2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + +3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + +4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + +5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + +6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + +7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + +8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + +9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + +END OF TERMS AND CONDITIONS + ==================================================== simba 0.9.0 @@ -27439,6 +29567,35 @@ https://github.com/servo/rust-smallvec by The Servo Project Developers 'Small vector' optimization: store up to a small number of items on the stack License: MIT OR Apache-2.0 +---------------------------------------------------- +LICENSE-MIT: + +Copyright (c) 2018 The Servo Project Developers + +Permission is hereby granted, free of charge, to any +person obtaining a copy of this software and associated +documentation files (the "Software"), to deal in the +Software without restriction, including without +limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software +is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice +shall be included in all copies or substantial portions +of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF +ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED +TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A +PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT +SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR +IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + ---------------------------------------------------- LICENSE-APACHE: @@ -27644,10 +29801,19 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + +==================================================== +socket2 0.5.8 +https://github.com/rust-lang/socket2 +by Alex Crichton , Thomas de Zeeuw +Utilities for handling networking sockets with a maximal amount of configuration +possible intended. + +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: -Copyright (c) 2018 The Servo Project Developers +Copyright (c) 2014 Alex Crichton Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated @@ -27673,15 +29839,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -socket2 0.5.7 -https://github.com/rust-lang/socket2 -by Alex Crichton , Thomas de Zeeuw -Utilities for handling networking sockets with a maximal amount of configuration -possible intended. - -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -27887,10 +30044,18 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + +==================================================== +stable_deref_trait 1.2.0 +https://github.com/storyyeller/stable_deref_trait +by Robert Grosse +An unsafe marker trait for types like Box and Rc that dereference to a stable address even when moved, and hence can be used with libraries such as owning_ref and rental. + +License: MIT/Apache-2.0 ---------------------------------------------------- LICENSE-MIT: -Copyright (c) 2014 Alex Crichton +Copyright (c) 2017 Robert Grosse Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated @@ -27915,15 +30080,6 @@ CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - - -==================================================== -stable_deref_trait 1.2.0 -https://github.com/storyyeller/stable_deref_trait -by Robert Grosse -An unsafe marker trait for types like Box and Rc that dereference to a stable address even when moved, and hence can be used with libraries such as owning_ref and rental. - -License: MIT/Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -28129,34 +30285,42 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + +==================================================== +strsim 0.10.0 +https://github.com/dguo/strsim-rs +by Danny Guo +Implementations of string similarity metrics. Includes Hamming, Levenshtein, +OSA, Damerau-Levenshtein, Jaro, Jaro-Winkler, and Sørensen-Dice. + +License: MIT ---------------------------------------------------- -LICENSE-MIT: +LICENSE: -Copyright (c) 2017 Robert Grosse +The MIT License (MIT) -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: +Copyright (c) 2015 Danny Guo +Copyright (c) 2016 Titus Wormer +Copyright (c) 2018 Akash Kurdekar -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. ==================================================== struqture 1.9.2 @@ -28798,191 +30962,11 @@ LICENSE: ==================================================== -syn 2.0.89 +syn 2.0.90 https://github.com/dtolnay/syn by David Tolnay Parser for Rust source code License: MIT OR Apache-2.0 ----------------------------------------------------- -LICENSE-APACHE: - - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - -TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - -1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - -2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - -3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - -4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - -5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - -6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - -7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - -8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - -9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - -END OF TERMS AND CONDITIONS - ---------------------------------------------------- LICENSE-MIT: @@ -29010,6 +30994,186 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +---------------------------------------------------- +LICENSE-APACHE: + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + +TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + +1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + +2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + +3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + +4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + +5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + +6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + +7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + +8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + +9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + +END OF TERMS AND CONDITIONS + ==================================================== sync_wrapper 1.0.2 @@ -29550,6 +31714,33 @@ https://github.com/dtolnay/thiserror by David Tolnay derive(Error) License: MIT OR Apache-2.0 +---------------------------------------------------- +LICENSE-MIT: + +Permission is hereby granted, free of charge, to any +person obtaining a copy of this software and associated +documentation files (the "Software"), to deal in the +Software without restriction, including without +limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software +is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice +shall be included in all copies or substantial portions +of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF +ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED +TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A +PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT +SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR +IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + ---------------------------------------------------- LICENSE-APACHE: @@ -29730,6 +31921,13 @@ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION END OF TERMS AND CONDITIONS + +==================================================== +thiserror-impl 1.0.69 +https://github.com/dtolnay/thiserror +by David Tolnay +Implementation detail of the `thiserror` crate +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: @@ -29757,13 +31955,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -thiserror-impl 1.0.69 -https://github.com/dtolnay/thiserror -by David Tolnay -Implementation detail of the `thiserror` crate -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -29944,33 +32135,6 @@ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION END OF TERMS AND CONDITIONS ----------------------------------------------------- -LICENSE-MIT: - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. - ==================================================== tinystr 0.7.6 @@ -30035,6 +32199,21 @@ https://github.com/Lokathor/tinyvec by Lokathor `tinyvec` provides 100% safe vec-like data structures. License: Zlib OR Apache-2.0 OR MIT +---------------------------------------------------- +LICENSE-ZLIB.md: + +Copyright (c) 2019 Daniel "Lokathor" Gee. + +This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software. + +Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required. + +2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. + +3. This notice may not be removed or altered from any source distribution. + ---------------------------------------------------- LICENSE-APACHE.md: @@ -30250,28 +32429,37 @@ The above copyright notice and this permission notice shall be included in all c THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +==================================================== +tinyvec_macros 0.1.1 +https://github.com/Soveu/tinyvec_macros +by Soveu +Some macros for tiny containers +License: MIT OR Apache-2.0 OR Zlib ---------------------------------------------------- LICENSE-ZLIB.md: -Copyright (c) 2019 Daniel "Lokathor" Gee. - -This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software. +zlib License -Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: +(C) 2020 Tomasz "Soveu" Marx -1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required. +This software is provided 'as-is', without any express or implied +warranty. In no event will the authors be held liable for any damages +arising from the use of this software. -2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. +Permission is granted to anyone to use this software for any purpose, +including commercial applications, and to alter it and redistribute it +freely, subject to the following restrictions: +1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. +2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. 3. This notice may not be removed or altered from any source distribution. -==================================================== -tinyvec_macros 0.1.1 -https://github.com/Soveu/tinyvec_macros -by Soveu -Some macros for tiny containers -License: MIT OR Apache-2.0 OR Zlib ---------------------------------------------------- LICENSE-APACHE.md: @@ -30503,33 +32691,9 @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ----------------------------------------------------- -LICENSE-ZLIB.md: - -zlib License - -(C) 2020 Tomasz "Soveu" Marx - -This software is provided 'as-is', without any express or implied -warranty. In no event will the authors be held liable for any damages -arising from the use of this software. - -Permission is granted to anyone to use this software for any purpose, -including commercial applications, and to alter it and redistribute it -freely, subject to the following restrictions: - -1. The origin of this software must not be misrepresented; you must not - claim that you wrote the original software. If you use this software - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. -2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original software. -3. This notice may not be removed or altered from any source distribution. - - ==================================================== -tokio 1.41.1 +tokio 1.42.0 https://tokio.rs by Tokio Contributors An event-driven, non-blocking I/O platform for writing asynchronous I/O @@ -30600,7 +32764,7 @@ DEALINGS IN THE SOFTWARE. ==================================================== -tracing 0.1.40 +tracing 0.1.41 https://tokio.rs by Eliza Weisman , Tokio Contributors Application-level tracing for Rust. @@ -30637,7 +32801,7 @@ DEALINGS IN THE SOFTWARE. ==================================================== -tracing-core 0.1.32 +tracing-core 0.1.33 https://tokio.rs by Tokio Contributors Core primitives for application-level tracing. @@ -30714,6 +32878,31 @@ Typenum is a Rust library for type-level numbers evaluated at integers. It also provides a type-level array of type-level numbers, but its implementation is incomplete. License: MIT OR Apache-2.0 +---------------------------------------------------- +LICENSE-MIT: + +The MIT License (MIT) + +Copyright (c) 2014 Paho Lurie-Gregg + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + ---------------------------------------------------- LICENSE-APACHE: @@ -30918,31 +33107,6 @@ distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ----------------------------------------------------- -LICENSE-MIT: - -The MIT License (MIT) - -Copyright (c) 2014 Paho Lurie-Gregg - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. - ---------------------------------------------------- LICENSE: @@ -30954,6 +33118,76 @@ https://github.com/dtolnay/unicode-ident by David Tolnay Determine whether characters have the XID_Start or XID_Continue properties according to Unicode Standard Annex #31 License: (MIT OR Apache-2.0) AND Unicode-3.0 +---------------------------------------------------- +LICENSE-MIT: + +Permission is hereby granted, free of charge, to any +person obtaining a copy of this software and associated +documentation files (the "Software"), to deal in the +Software without restriction, including without +limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software +is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice +shall be included in all copies or substantial portions +of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF +ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED +TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A +PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT +SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR +IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + +---------------------------------------------------- +LICENSE-UNICODE: + +UNICODE LICENSE V3 + +COPYRIGHT AND PERMISSION NOTICE + +Copyright © 1991-2023 Unicode, Inc. + +NOTICE TO USER: Carefully read the following legal agreement. BY +DOWNLOADING, INSTALLING, COPYING OR OTHERWISE USING DATA FILES, AND/OR +SOFTWARE, YOU UNEQUIVOCALLY ACCEPT, AND AGREE TO BE BOUND BY, ALL OF THE +TERMS AND CONDITIONS OF THIS AGREEMENT. IF YOU DO NOT AGREE, DO NOT +DOWNLOAD, INSTALL, COPY, DISTRIBUTE OR USE THE DATA FILES OR SOFTWARE. + +Permission is hereby granted, free of charge, to any person obtaining a +copy of data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to promote the sale, use or other +dealings in these Data Files or Software without prior written +authorization of the copyright holder. + ---------------------------------------------------- LICENSE-APACHE: @@ -31134,6 +33368,13 @@ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION END OF TERMS AND CONDITIONS + +==================================================== +unindent 0.2.3 +https://github.com/dtolnay/indoc +by David Tolnay +Remove a column of leading whitespace from a string +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: @@ -31161,56 +33402,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ----------------------------------------------------- -LICENSE-UNICODE: - -UNICODE LICENSE V3 - -COPYRIGHT AND PERMISSION NOTICE - -Copyright © 1991-2023 Unicode, Inc. - -NOTICE TO USER: Carefully read the following legal agreement. BY -DOWNLOADING, INSTALLING, COPYING OR OTHERWISE USING DATA FILES, AND/OR -SOFTWARE, YOU UNEQUIVOCALLY ACCEPT, AND AGREE TO BE BOUND BY, ALL OF THE -TERMS AND CONDITIONS OF THIS AGREEMENT. IF YOU DO NOT AGREE, DO NOT -DOWNLOAD, INSTALL, COPY, DISTRIBUTE OR USE THE DATA FILES OR SOFTWARE. - -Permission is hereby granted, free of charge, to any person obtaining a -copy of data files and any associated documentation (the "Data Files") or -software and any associated documentation (the "Software") to deal in the -Data Files or Software without restriction, including without limitation -the rights to use, copy, modify, merge, publish, distribute, and/or sell -copies of the Data Files or Software, and to permit persons to whom the -Data Files or Software are furnished to do so, provided that either (a) -this copyright and permission notice appear with all copies of the Data -Files or Software, or (b) this copyright and permission notice appear in -associated Documentation. - -THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY -KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF -THIRD PARTY RIGHTS. - -IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE -BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, -OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, -WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, -ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA -FILES OR SOFTWARE. - -Except as contained in this notice, the name of a copyright holder shall -not be used in advertising or otherwise to promote the sale, use or other -dealings in these Data Files or Software without prior written -authorization of the copyright holder. - - -==================================================== -unindent 0.2.3 -https://github.com/dtolnay/indoc -by David Tolnay -Remove a column of leading whitespace from a string -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -31391,9 +33582,18 @@ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION END OF TERMS AND CONDITIONS + +==================================================== +url 2.5.4 +https://github.com/servo/rust-url +by The rust-url developers +URL library for Rust, based on the WHATWG URL Standard +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: +Copyright (c) 2013-2022 The rust-url developers + Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the @@ -31418,13 +33618,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -url 2.5.4 -https://github.com/servo/rust-url -by The rust-url developers -URL library for Rust, based on the WHATWG URL Standard -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -31630,10 +33823,17 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + +==================================================== +utf16_iter 1.0.5 +https://docs.rs/utf16_iter/ +by Henri Sivonen +Iterator by char over potentially-invalid UTF-16 in &[u16] +License: Apache-2.0 OR MIT ---------------------------------------------------- LICENSE-MIT: -Copyright (c) 2013-2022 The rust-url developers +Copyright Mozilla Foundation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated @@ -31659,13 +33859,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -utf16_iter 1.0.5 -https://docs.rs/utf16_iter/ -by Henri Sivonen -Iterator by char over potentially-invalid UTF-16 in &[u16] -License: Apache-2.0 OR MIT ---------------------------------------------------- LICENSE-APACHE: @@ -31872,6 +34065,13 @@ LICENSE-APACHE: See the License for the specific language governing permissions and limitations under the License. + +==================================================== +utf8_iter 1.0.4 +https://docs.rs/utf8_iter/ +by Henri Sivonen +Iterator by char over potentially-invalid UTF-8 in &[u8] +License: Apache-2.0 OR MIT ---------------------------------------------------- LICENSE-MIT: @@ -31901,13 +34101,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -utf8_iter 1.0.4 -https://docs.rs/utf8_iter/ -by Henri Sivonen -Iterator by char over potentially-invalid UTF-8 in &[u8] -License: Apache-2.0 OR MIT ---------------------------------------------------- LICENSE-APACHE: @@ -32114,10 +34307,17 @@ LICENSE-APACHE: See the License for the specific language governing permissions and limitations under the License. + +==================================================== +utf8parse 0.2.2 +https://github.com/alacritty/vte +by Joe Wilm , Christian Duerr +Table-driven UTF-8 parser +License: Apache-2.0 OR MIT ---------------------------------------------------- LICENSE-MIT: -Copyright Mozilla Foundation +Copyright (c) 2016 Joe Wilm Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated @@ -32143,6 +34343,186 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +---------------------------------------------------- +LICENSE-APACHE: + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + +TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + +1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + +2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + +3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + +4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + +5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + +6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + +7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + +8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + +9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + +END OF TERMS AND CONDITIONS + ==================================================== uuid 1.11.0 @@ -32150,6 +34530,36 @@ https://github.com/uuid-rs/uuid by Ashley Mannix, Dylan DPC, Hunar Roop Kahlon A library to generate and parse UUIDs. License: Apache-2.0 OR MIT +---------------------------------------------------- +LICENSE-MIT: + +Copyright (c) 2014 The Rust Project Developers +Copyright (c) 2018 Ashley Mannix, Christopher Armstrong, Dylan DPC, Hunar Roop Kahlon + +Permission is hereby granted, free of charge, to any +person obtaining a copy of this software and associated +documentation files (the "Software"), to deal in the +Software without restriction, including without +limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software +is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice +shall be included in all copies or substantial portions +of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF +ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED +TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A +PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT +SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR +IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + ---------------------------------------------------- LICENSE-APACHE: @@ -32355,36 +34765,6 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ----------------------------------------------------- -LICENSE-MIT: - -Copyright (c) 2014 The Rust Project Developers -Copyright (c) 2018 Ashley Mannix, Christopher Armstrong, Dylan DPC, Hunar Roop Kahlon - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. - ==================================================== uuid-simd 0.8.0 @@ -32399,6 +34779,29 @@ https://github.com/SergioBenitez/version_check by Sergio Benitez Tiny crate to check the version of the installed/running rustc. License: MIT/Apache-2.0 +---------------------------------------------------- +LICENSE-MIT: + +The MIT License (MIT) +Copyright (c) 2017-2018 Sergio Benitez + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS +FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR +COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER +IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + ---------------------------------------------------- LICENSE-APACHE: @@ -32604,29 +35007,6 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ----------------------------------------------------- -LICENSE-MIT: - -The MIT License (MIT) -Copyright (c) 2017-2018 Sergio Benitez - -Permission is hereby granted, free of charge, to any person obtaining a copy of -this software and associated documentation files (the "Software"), to deal in -the Software without restriction, including without limitation the rights to -use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software is furnished to do so, -subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS -FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR -COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER -IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ==================================================== vsimd 0.8.0 @@ -32672,211 +35052,6 @@ https://github.com/bytecodealliance/wasi by The Cranelift Project Developers Experimental WASI API bindings for Rust License: Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT ----------------------------------------------------- -LICENSE-APACHE: - - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - -TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - -1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - -2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - -3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - -4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - -5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - -6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - -7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - -8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - -9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - -END OF TERMS AND CONDITIONS - -APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - -Copyright [yyyy] [name of copyright owner] - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. - ---------------------------------------------------- LICENSE-MIT: @@ -33128,14 +35303,6 @@ the License, but only in their entirety and only with respect to the Combined Software. - -==================================================== -wasm-bindgen 0.2.95 -https://rustwasm.github.io/ -by The wasm-bindgen Developers -Easy support for interacting between JS and Rust. - -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -33341,6 +35508,14 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + +==================================================== +wasm-bindgen 0.2.97 +https://rustwasm.github.io/ +by The wasm-bindgen Developers +Easy support for interacting between JS and Rust. + +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: @@ -33370,14 +35545,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -wasm-bindgen-backend 0.2.95 -https://rustwasm.github.io/wasm-bindgen/ -by The wasm-bindgen Developers -Backend code generation of the wasm-bindgen tool - -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -33583,6 +35750,14 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + +==================================================== +wasm-bindgen-backend 0.2.97 +https://rustwasm.github.io/wasm-bindgen/ +by The wasm-bindgen Developers +Backend code generation of the wasm-bindgen tool + +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: @@ -33612,13 +35787,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -wasm-bindgen-futures 0.4.45 -https://rustwasm.github.io/wasm-bindgen/ -by The wasm-bindgen Developers -Bridging the gap between Rust Futures and JavaScript Promises -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -33824,6 +35992,13 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + +==================================================== +wasm-bindgen-futures 0.4.47 +https://rustwasm.github.io/wasm-bindgen/ +by The wasm-bindgen Developers +Bridging the gap between Rust Futures and JavaScript Promises +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: @@ -33853,14 +36028,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -wasm-bindgen-macro 0.2.95 -https://rustwasm.github.io/wasm-bindgen/ -by The wasm-bindgen Developers -Definition of the `#[wasm_bindgen]` attribute, an internal dependency - -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -34066,6 +36233,14 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + +==================================================== +wasm-bindgen-macro 0.2.97 +https://rustwasm.github.io/wasm-bindgen/ +by The wasm-bindgen Developers +Definition of the `#[wasm_bindgen]` attribute, an internal dependency + +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: @@ -34095,14 +36270,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -wasm-bindgen-macro-support 0.2.95 -https://rustwasm.github.io/wasm-bindgen/ -by The wasm-bindgen Developers -The part of the implementation of the `#[wasm_bindgen]` attribute that is not in the shared backend crate - -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -34308,6 +36475,14 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + +==================================================== +wasm-bindgen-macro-support 0.2.97 +https://rustwasm.github.io/wasm-bindgen/ +by The wasm-bindgen Developers +The part of the implementation of the `#[wasm_bindgen]` attribute that is not in the shared backend crate + +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: @@ -34337,15 +36512,249 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +---------------------------------------------------- +LICENSE-APACHE: + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + +TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + +1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + +2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + +3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + +4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + +5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + +6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + +7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + +8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + +9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + +END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + ==================================================== -wasm-bindgen-shared 0.2.95 +wasm-bindgen-shared 0.2.97 https://rustwasm.github.io/wasm-bindgen/ by The wasm-bindgen Developers Shared support between wasm-bindgen and wasm-bindgen cli, an internal dependency. License: MIT OR Apache-2.0 +---------------------------------------------------- +LICENSE-MIT: + +Copyright (c) 2014 Alex Crichton + +Permission is hereby granted, free of charge, to any +person obtaining a copy of this software and associated +documentation files (the "Software"), to deal in the +Software without restriction, including without +limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software +is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice +shall be included in all copies or substantial portions +of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF +ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED +TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A +PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT +SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR +IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + ---------------------------------------------------- LICENSE-APACHE: @@ -34551,6 +36960,14 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + +==================================================== +web-sys 0.3.74 +https://rustwasm.github.io/wasm-bindgen/web-sys/index.html +by The wasm-bindgen Developers +Bindings for all Web APIs, a procedurally generated crate from WebIDL + +License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-MIT: @@ -34580,14 +36997,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==================================================== -web-sys 0.3.72 -https://rustwasm.github.io/wasm-bindgen/web-sys/index.html -by The wasm-bindgen Developers -Bindings for all Web APIs, a procedurally generated crate from WebIDL - -License: MIT OR Apache-2.0 ---------------------------------------------------- LICENSE-APACHE: @@ -34793,35 +37202,6 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ----------------------------------------------------- -LICENSE-MIT: - -Copyright (c) 2014 Alex Crichton - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. - ==================================================== wide 0.7.30 @@ -34851,6 +37231,211 @@ https://github.com/microsoft/windows-rs by Microsoft Windows registry License: MIT OR Apache-2.0 +---------------------------------------------------- +license-apache-2.0: + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright (c) Microsoft Corporation. + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + ---------------------------------------------------- license-mit: @@ -34876,6 +37461,13 @@ license-mit: OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE + +==================================================== +windows-result 0.2.0 +https://github.com/microsoft/windows-rs +by Microsoft +Windows error handling +License: MIT OR Apache-2.0 ---------------------------------------------------- license-apache-2.0: @@ -35081,13 +37673,6 @@ license-apache-2.0: See the License for the specific language governing permissions and limitations under the License. - -==================================================== -windows-result 0.2.0 -https://github.com/microsoft/windows-rs -by Microsoft -Windows error handling -License: MIT OR Apache-2.0 ---------------------------------------------------- license-mit: @@ -35113,6 +37698,13 @@ license-mit: OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE + +==================================================== +windows-strings 0.1.0 +https://github.com/microsoft/windows-rs +by Microsoft +Rust for Windows +License: MIT OR Apache-2.0 ---------------------------------------------------- license-apache-2.0: @@ -35318,13 +37910,6 @@ license-apache-2.0: See the License for the specific language governing permissions and limitations under the License. - -==================================================== -windows-strings 0.1.0 -https://github.com/microsoft/windows-rs -by Microsoft -Rust for Windows -License: MIT OR Apache-2.0 ---------------------------------------------------- license-mit: @@ -35350,6 +37935,13 @@ license-mit: OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE + +==================================================== +windows-sys 0.52.0 +https://github.com/microsoft/windows-rs +by Microsoft +Rust for Windows +License: MIT OR Apache-2.0 ---------------------------------------------------- license-apache-2.0: @@ -35555,13 +38147,6 @@ license-apache-2.0: See the License for the specific language governing permissions and limitations under the License. - -==================================================== -windows-sys 0.52.0 -https://github.com/microsoft/windows-rs -by Microsoft -Rust for Windows -License: MIT OR Apache-2.0 ---------------------------------------------------- license-mit: @@ -35587,6 +38172,13 @@ license-mit: OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE + +==================================================== +windows-sys 0.59.0 +https://github.com/microsoft/windows-rs +by Microsoft +Rust for Windows +License: MIT OR Apache-2.0 ---------------------------------------------------- license-apache-2.0: @@ -35792,6 +38384,31 @@ license-apache-2.0: See the License for the specific language governing permissions and limitations under the License. +---------------------------------------------------- +license-mit: + + MIT License + + Copyright (c) Microsoft Corporation. + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in all + copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + SOFTWARE + ==================================================== windows-targets 0.52.6 @@ -35799,6 +38416,211 @@ https://github.com/microsoft/windows-rs by Microsoft Import libs for Windows License: MIT OR Apache-2.0 +---------------------------------------------------- +license-apache-2.0: + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright (c) Microsoft Corporation. + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + ---------------------------------------------------- license-mit: @@ -35824,6 +38646,13 @@ license-mit: OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE + +==================================================== +windows_aarch64_gnullvm 0.52.6 +https://github.com/microsoft/windows-rs +by Microsoft +Import lib for Windows +License: MIT OR Apache-2.0 ---------------------------------------------------- license-apache-2.0: @@ -36029,13 +38858,6 @@ license-apache-2.0: See the License for the specific language governing permissions and limitations under the License. - -==================================================== -windows_aarch64_gnullvm 0.52.6 -https://github.com/microsoft/windows-rs -by Microsoft -Import lib for Windows -License: MIT OR Apache-2.0 ---------------------------------------------------- license-mit: @@ -36061,211 +38883,6 @@ license-mit: OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE ----------------------------------------------------- -license-apache-2.0: - - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - - END OF TERMS AND CONDITIONS - - APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - - Copyright (c) Microsoft Corporation. - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - ==================================================== windows_aarch64_msvc 0.52.6 @@ -36273,31 +38890,6 @@ https://github.com/microsoft/windows-rs by Microsoft Import lib for Windows License: MIT OR Apache-2.0 ----------------------------------------------------- -license-mit: - - MIT License - - Copyright (c) Microsoft Corporation. - - Permission is hereby granted, free of charge, to any person obtaining a copy - of this software and associated documentation files (the "Software"), to deal - in the Software without restriction, including without limitation the rights - to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - copies of the Software, and to permit persons to whom the Software is - furnished to do so, subject to the following conditions: - - The above copyright notice and this permission notice shall be included in all - copies or substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - SOFTWARE - ---------------------------------------------------- license-apache-2.0: @@ -36503,13 +39095,6 @@ license-apache-2.0: See the License for the specific language governing permissions and limitations under the License. - -==================================================== -windows_i686_gnu 0.52.6 -https://github.com/microsoft/windows-rs -by Microsoft -Import lib for Windows -License: MIT OR Apache-2.0 ---------------------------------------------------- license-mit: @@ -36535,6 +39120,13 @@ license-mit: OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE + +==================================================== +windows_i686_gnu 0.52.6 +https://github.com/microsoft/windows-rs +by Microsoft +Import lib for Windows +License: MIT OR Apache-2.0 ---------------------------------------------------- license-apache-2.0: @@ -36740,13 +39332,6 @@ license-apache-2.0: See the License for the specific language governing permissions and limitations under the License. - -==================================================== -windows_i686_gnullvm 0.52.6 -https://github.com/microsoft/windows-rs -by Microsoft -Import lib for Windows -License: MIT OR Apache-2.0 ---------------------------------------------------- license-mit: @@ -36772,6 +39357,13 @@ license-mit: OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE + +==================================================== +windows_i686_gnullvm 0.52.6 +https://github.com/microsoft/windows-rs +by Microsoft +Import lib for Windows +License: MIT OR Apache-2.0 ---------------------------------------------------- license-apache-2.0: @@ -36977,13 +39569,6 @@ license-apache-2.0: See the License for the specific language governing permissions and limitations under the License. - -==================================================== -windows_i686_msvc 0.52.6 -https://github.com/microsoft/windows-rs -by Microsoft -Import lib for Windows -License: MIT OR Apache-2.0 ---------------------------------------------------- license-mit: @@ -37009,6 +39594,13 @@ license-mit: OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE + +==================================================== +windows_i686_msvc 0.52.6 +https://github.com/microsoft/windows-rs +by Microsoft +Import lib for Windows +License: MIT OR Apache-2.0 ---------------------------------------------------- license-apache-2.0: @@ -37214,13 +39806,6 @@ license-apache-2.0: See the License for the specific language governing permissions and limitations under the License. - -==================================================== -windows_x86_64_gnu 0.52.6 -https://github.com/microsoft/windows-rs -by Microsoft -Import lib for Windows -License: MIT OR Apache-2.0 ---------------------------------------------------- license-mit: @@ -37246,6 +39831,13 @@ license-mit: OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE + +==================================================== +windows_x86_64_gnu 0.52.6 +https://github.com/microsoft/windows-rs +by Microsoft +Import lib for Windows +License: MIT OR Apache-2.0 ---------------------------------------------------- license-apache-2.0: @@ -37451,13 +40043,6 @@ license-apache-2.0: See the License for the specific language governing permissions and limitations under the License. - -==================================================== -windows_x86_64_gnullvm 0.52.6 -https://github.com/microsoft/windows-rs -by Microsoft -Import lib for Windows -License: MIT OR Apache-2.0 ---------------------------------------------------- license-mit: @@ -37483,6 +40068,13 @@ license-mit: OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE + +==================================================== +windows_x86_64_gnullvm 0.52.6 +https://github.com/microsoft/windows-rs +by Microsoft +Import lib for Windows +License: MIT OR Apache-2.0 ---------------------------------------------------- license-apache-2.0: @@ -37688,13 +40280,6 @@ license-apache-2.0: See the License for the specific language governing permissions and limitations under the License. - -==================================================== -windows_x86_64_msvc 0.52.6 -https://github.com/microsoft/windows-rs -by Microsoft -Import lib for Windows -License: MIT OR Apache-2.0 ---------------------------------------------------- license-mit: @@ -37720,6 +40305,13 @@ license-mit: OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE + +==================================================== +windows_x86_64_msvc 0.52.6 +https://github.com/microsoft/windows-rs +by Microsoft +Import lib for Windows +License: MIT OR Apache-2.0 ---------------------------------------------------- license-apache-2.0: @@ -37925,6 +40517,31 @@ license-apache-2.0: See the License for the specific language governing permissions and limitations under the License. +---------------------------------------------------- +license-mit: + + MIT License + + Copyright (c) Microsoft Corporation. + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in all + copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + SOFTWARE + ==================================================== write16 1.0.0 @@ -37932,6 +40549,35 @@ https://docs.rs/write16/ by A UTF-16 analog of the Write trait License: Apache-2.0 OR MIT +---------------------------------------------------- +LICENSE-MIT: + +Copyright Mozilla Foundation + +Permission is hereby granted, free of charge, to any +person obtaining a copy of this software and associated +documentation files (the "Software"), to deal in the +Software without restriction, including without +limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software +is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice +shall be included in all copies or substantial portions +of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF +ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED +TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A +PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT +SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR +IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + ---------------------------------------------------- LICENSE-APACHE: @@ -38138,35 +40784,6 @@ LICENSE-APACHE: See the License for the specific language governing permissions and limitations under the License. ----------------------------------------------------- -LICENSE-MIT: - -Copyright Mozilla Foundation - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. - ==================================================== writeable 0.5.5 @@ -38345,6 +40962,36 @@ https://github.com/google/zerocopy by Joshua Liebow-Feeser Utilities for zero-copy parsing and serialization License: BSD-2-Clause OR Apache-2.0 OR MIT +---------------------------------------------------- +LICENSE-MIT: + +Copyright 2023 The Fuchsia Authors + +Permission is hereby granted, free of charge, to any +person obtaining a copy of this software and associated +documentation files (the "Software"), to deal in the +Software without restriction, including without +limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software +is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice +shall be included in all copies or substantial portions +of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF +ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED +TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A +PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT +SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR +IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + + ---------------------------------------------------- LICENSE-APACHE: @@ -38551,36 +41198,6 @@ LICENSE-APACHE: limitations under the License. ----------------------------------------------------- -LICENSE-MIT: - -Copyright 2023 The Fuchsia Authors - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. - - ---------------------------------------------------- LICENSE-BSD: @@ -38616,6 +41233,36 @@ https://github.com/google/zerocopy by Joshua Liebow-Feeser Custom derive for traits from the zerocopy crate License: BSD-2-Clause OR Apache-2.0 OR MIT +---------------------------------------------------- +LICENSE-MIT: + +Copyright 2023 The Fuchsia Authors + +Permission is hereby granted, free of charge, to any +person obtaining a copy of this software and associated +documentation files (the "Software"), to deal in the +Software without restriction, including without +limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software +is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice +shall be included in all copies or substantial portions +of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF +ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED +TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A +PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT +SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR +IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + + ---------------------------------------------------- LICENSE-APACHE: @@ -38822,36 +41469,6 @@ LICENSE-APACHE: limitations under the License. ----------------------------------------------------- -LICENSE-MIT: - -Copyright 2023 The Fuchsia Authors - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. - - ---------------------------------------------------- LICENSE-BSD: diff --git a/qoqo/python/qoqo/devices.pyi b/qoqo/python/qoqo/devices.pyi index 5fdccaf92..20ab8e41f 100644 --- a/qoqo/python/qoqo/devices.pyi +++ b/qoqo/python/qoqo/devices.pyi @@ -48,8 +48,7 @@ class AllToAllDevice: number_qubits (int): Fixed number of qubits. single_qubit_gates (List[str]): A list of 'hqslang' names of single-qubit-gates supported by the device. two_qubit_gates (List[str]): A list of 'hqslang' names of basic two-qubit-gates supported by the device. - default_gate_time (float): The default startig gate time. - """ + default_gate_time (float): The default startig gate time.""" def __init__( self, @@ -59,7 +58,6 @@ class AllToAllDevice: default_gate_time: float, ): return - def set_all_two_qubit_gate_times( self, gate: str, gate_time: float ) -> AllToAllDevice: @@ -72,9 +70,7 @@ class AllToAllDevice: Returns: Self: The new device with the new properties. - """ - def set_all_single_qubit_gate_times( self, gate: str, gate_time: float ) -> AllToAllDevice: @@ -87,9 +83,7 @@ class AllToAllDevice: Returns: Self: The new device with the new properties - """ - def set_all_qubit_decoherence_rates(self, rates) -> AllToAllDevice: """ Function to set the decoherence rates for all qubits in the AllToAllDevice device. @@ -101,9 +95,7 @@ class AllToAllDevice: Self: The new device with the new properties Raises: - PyValueError: The input parameter `rates` needs to be a (3x3)-matrix. - """ - + PyValueError: The input parameter `rates` needs to be a (3x3)-matrix.""" def add_damping_all(self, damping: float) -> AllToAllDevice: """ Adds qubit damping to noise rates. @@ -112,9 +104,7 @@ class AllToAllDevice: damping (float): The damping rates. Returns: - Self: The new device with the new properties - """ - + Self: The new device with the new properties""" def add_dephasing_all(self, dephasing: float) -> AllToAllDevice: """ Adds qubit dephasing to noise rates. @@ -123,9 +113,7 @@ class AllToAllDevice: dephasing (float): The dephasing rates. Returns: - Self: The new device with the new properties - """ - + Self: The new device with the new properties""" def add_depolarising_all(self, depolarising: float) -> AllToAllDevice: """ Adds qubit depolarising to noise rates. @@ -134,41 +122,31 @@ class AllToAllDevice: depolarising (float): The depolarising rates. Returns: - Self: The new device with the new properties - """ - + Self: The new device with the new properties""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ - + str: The json schema serialized to json""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def number_qubits(self) -> int: """ Return number of qubits in device. Returns: - int: The number of qubits. - """ - + int: The number of qubits.""" def two_qubit_edges(self) -> Sequence[(int, int)]: """ Return the list of pairs of qubits linked by a native two-qubit-gate in the device. @@ -186,9 +164,7 @@ class AllToAllDevice: Returns: Sequence[(int, int)]: List of two qubit edges in the undirected connectivity graph - """ - def single_qubit_gate_time(self, hqslang: str, qubit: int) -> Optional[float]: """ Returns the gate time of a single qubit operation if the single qubit operation is available on device. @@ -201,9 +177,7 @@ class AllToAllDevice: Option[float]: None if gate is not available Raises: - PyValueError: Qubit is not in device - """ - + PyValueError: Qubit is not in device""" def two_qubit_gate_time( self, hqslang: str, control: int, target: int ) -> Optional[float]: @@ -220,9 +194,7 @@ class AllToAllDevice: Raises: PyValueError: Qubit is not in device - """ - def three_qubit_gate_time( self, hqslang: str, control_0: int, control_1: int, target: int ) -> Optional[float]: @@ -243,9 +215,7 @@ class AllToAllDevice: Raises: PyValueError: Qubit is not in device - """ - def multi_qubit_gate_time(self, hqslang: str, qubits: List[int]) -> Optional[float]: """ Returns the gate time of a multi qubit operation if the multi qubit operation is available on device. @@ -258,9 +228,7 @@ class AllToAllDevice: Option[float]: None if gate is not available Raises: - PyValueError: Qubit is not in device - """ - + PyValueError: Qubit is not in device""" def set_single_qubit_gate_time(self, gate: str, qubit: int, gate_time: float): """ Set the gate time of a single qubit gate. @@ -271,9 +239,7 @@ class AllToAllDevice: gate_time (float): The gate time for the given gate. Raises: - PyValueError: Qubit is not in device - """ - + PyValueError: Qubit is not in device""" def set_two_qubit_gate_time( self, gate: str, control: int, target: int, gate_time: float ): @@ -287,9 +253,7 @@ class AllToAllDevice: gate_time (float): The gate time for the given gate. Raises: - PyValueError: Qubit is not in device - """ - + PyValueError: Qubit is not in device""" def set_three_qubit_gate_time( self, gate: str, control_0: int, control_1: int, target: int, gate_time: float ): @@ -304,9 +268,7 @@ class AllToAllDevice: gate_time (float): The gate time for the given gate. Raises: - PyValueError: Qubit is not in device - """ - + PyValueError: Qubit is not in device""" def set_qubit_decoherence_rates(self, gate: str, qubits: int, gate_time: float): """ Set the gate time of a single qubit gate. @@ -317,9 +279,7 @@ class AllToAllDevice: gate_time (float): The gate time for the given gate. Raises: - PyValueError: Qubit is not in device - """ - + PyValueError: Qubit is not in device""" def set_multi_qubit_gate_time(self, gate: str, qubits: List[int], gate_time: float): """ Set the gate time of a single qubit gate. @@ -330,9 +290,7 @@ class AllToAllDevice: gate_time (float): The gate time for the given gate. Raises: - PyValueError: Qubits not in device - """ - + PyValueError: Qubits not in device""" def qubit_decoherence_rates(self, qubit: int) -> numpy.array: """ Return the matrix of the decoherence rates of the Lindblad equation. @@ -342,9 +300,7 @@ class AllToAllDevice: Returns: np.array: 3 by 3 numpy array of decoherence rates - """ - def add_damping(self, qubit: int, damping: float): """ Adds single qubit damping to noise rates. @@ -354,9 +310,7 @@ class AllToAllDevice: damping (float): The damping rates. Raises: - PyValueError: Qubit is not in device - """ - + PyValueError: Qubit is not in device""" def add_dephasing(self, qubit: int, dephasing: float): """ Adds single qubit dephasing to noise rates. @@ -366,9 +320,7 @@ class AllToAllDevice: dephasing (float): The dephasing rates. Raises: - PyValueError: Qubit is not in device - """ - + PyValueError: Qubit is not in device""" def add_depolarising(self, qubit: int, depolarising: float): """ Adds single qubit depolarising to noise rates. @@ -378,9 +330,7 @@ class AllToAllDevice: depolarising (float): The depolarising rates. Raises: - PyValueError: Qubit is not in device - """ - + PyValueError: Qubit is not in device""" def generic_device(self) -> GenericDevice: """ Turns Device into GenericDevice @@ -395,7 +345,6 @@ class AllToAllDevice: GenericDevice uses nested HashMaps to represent the most general device connectivity. The memory usage will be inefficient for devices with large qubit numbers. """ - def to_generic_device(self) -> GenericDevice: """ Turns Device into GenericDevice @@ -410,23 +359,18 @@ class AllToAllDevice: GenericDevice uses nested HashMaps to represent the most general device connectivity. The memory usage will be inefficient for devices with large qubit numbers. """ - def single_qubit_gate_names(self) -> List[str]: """ Returns the names of a single qubit operations available on the device. Returns: - List[str]: The list of gate names. - """ - + List[str]: The list of gate names.""" def two_qubit_gate_names(self) -> List[str]: """ Returns the names of a two qubit operations available on the device. Returns: - List[str]: The list of gate names. - """ - + List[str]: The list of gate names.""" def multi_qubit_gate_names(self) -> List[str]: """ Returns the names of a mutli qubit operations available on the device. @@ -435,9 +379,7 @@ class AllToAllDevice: Returns: List[str]: The list of gate names. - """ - def to_bincode(self) -> bytearray: """ Return the bincode representation of the Device using the bincode crate. @@ -447,9 +389,7 @@ class AllToAllDevice: Raises: ValueError: Cannot serialize Device to bytes. - """ - def to_json(self) -> str: """ Return the json representation of the Device. @@ -459,9 +399,7 @@ class AllToAllDevice: Raises: ValueError: Cannot serialize Device to json. - """ - def from_bincode(self, input: bytearray): """ Convert the bincode representation of the qoqo device to a device using the bincode crate. @@ -474,9 +412,7 @@ class AllToAllDevice: Raises: TypeError: Input cannot be converted to byte array. - ValueError: Input cannot be deserialized to selected Device. - """ - + ValueError: Input cannot be deserialized to selected Device.""" def from_json(self, input: str): """ Convert the json representation of a device to a qoqo device. @@ -488,8 +424,7 @@ class AllToAllDevice: The deserialized device. Raises: - ValueError: Input cannot be deserialized to selected Device. - """ + ValueError: Input cannot be deserialized to selected Device.""" class GenericDevice: """ @@ -500,44 +435,34 @@ class GenericDevice: Note: GenericDevice uses nested HashMaps to represent the most general device connectivity. - The memory usage will be inefficient for devices with large qubit numbers. - """ + The memory usage will be inefficient for devices with large qubit numbers.""" def __init__(self, number_qubits: int): return - def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ - + str: The json schema serialized to json""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def number_qubits(self) -> int: """ Return number of qubits in device. Returns: - int: The number of qubits. - """ - + int: The number of qubits.""" def two_qubit_edges(self) -> Sequence[(int, int)]: """ Return the list of pairs of qubits linked by a native two-qubit-gate in the device. @@ -555,9 +480,7 @@ class GenericDevice: Returns: Sequence[(int, int)]: List of two qubit edges in the undirected connectivity graph - """ - def single_qubit_gate_time(self, hqslang: str, qubit: int) -> Optional[float]: """ Returns the gate time of a single qubit operation if the single qubit operation is available on device. @@ -570,9 +493,7 @@ class GenericDevice: Option[float]: None if gate is not available Raises: - PyValueError: Qubit is not in device - """ - + PyValueError: Qubit is not in device""" def two_qubit_gate_time( self, hqslang: str, control: int, target: int ) -> Optional[float]: @@ -589,9 +510,7 @@ class GenericDevice: Raises: PyValueError: Qubit is not in device - """ - def three_qubit_gate_time( self, hqslang: str, control_0: int, control_1: int, target: int ) -> Optional[float]: @@ -612,9 +531,7 @@ class GenericDevice: Raises: PyValueError: Qubit is not in device - """ - def multi_qubit_gate_time(self, hqslang: str, qubits: List[int]) -> Optional[float]: """ Returns the gate time of a multi qubit operation if the multi qubit operation is available on device. @@ -627,9 +544,7 @@ class GenericDevice: Option[float]: None if gate is not available Raises: - PyValueError: Qubit is not in device - """ - + PyValueError: Qubit is not in device""" def set_single_qubit_gate_time(self, gate: str, qubit: int, gate_time: float): """ Set the gate time of a single qubit gate. @@ -640,9 +555,7 @@ class GenericDevice: gate_time (float): The gate time for the given gate. Raises: - PyValueError: Qubit is not in device - """ - + PyValueError: Qubit is not in device""" def set_two_qubit_gate_time( self, gate: str, control: int, target: int, gate_time: float ): @@ -656,9 +569,7 @@ class GenericDevice: gate_time (float): The gate time for the given gate. Raises: - PyValueError: Qubit is not in device - """ - + PyValueError: Qubit is not in device""" def set_three_qubit_gate_time( self, gate: str, control_0: int, control_1: int, target: int, gate_time: float ): @@ -673,9 +584,7 @@ class GenericDevice: gate_time (float): The gate time for the given gate. Raises: - PyValueError: Qubit is not in device - """ - + PyValueError: Qubit is not in device""" def set_qubit_decoherence_rates(self, gate: str, qubits: int, gate_time: float): """ Set the gate time of a single qubit gate. @@ -686,9 +595,7 @@ class GenericDevice: gate_time (float): The gate time for the given gate. Raises: - PyValueError: Qubit is not in device - """ - + PyValueError: Qubit is not in device""" def set_multi_qubit_gate_time(self, gate: str, qubits: List[int], gate_time: float): """ Set the gate time of a single qubit gate. @@ -699,9 +606,7 @@ class GenericDevice: gate_time (float): The gate time for the given gate. Raises: - PyValueError: Qubits not in device - """ - + PyValueError: Qubits not in device""" def qubit_decoherence_rates(self, qubit: int) -> numpy.array: """ Return the matrix of the decoherence rates of the Lindblad equation. @@ -711,9 +616,7 @@ class GenericDevice: Returns: np.array: 3 by 3 numpy array of decoherence rates - """ - def add_damping(self, qubit: int, damping: float): """ Adds single qubit damping to noise rates. @@ -723,9 +626,7 @@ class GenericDevice: damping (float): The damping rates. Raises: - PyValueError: Qubit is not in device - """ - + PyValueError: Qubit is not in device""" def add_dephasing(self, qubit: int, dephasing: float): """ Adds single qubit dephasing to noise rates. @@ -735,9 +636,7 @@ class GenericDevice: dephasing (float): The dephasing rates. Raises: - PyValueError: Qubit is not in device - """ - + PyValueError: Qubit is not in device""" def add_depolarising(self, qubit: int, depolarising: float): """ Adds single qubit depolarising to noise rates. @@ -747,9 +646,7 @@ class GenericDevice: depolarising (float): The depolarising rates. Raises: - PyValueError: Qubit is not in device - """ - + PyValueError: Qubit is not in device""" def generic_device(self) -> GenericDevice: """ Turns Device into GenericDevice @@ -764,7 +661,6 @@ class GenericDevice: GenericDevice uses nested HashMaps to represent the most general device connectivity. The memory usage will be inefficient for devices with large qubit numbers. """ - def to_generic_device(self) -> GenericDevice: """ Turns Device into GenericDevice @@ -779,23 +675,18 @@ class GenericDevice: GenericDevice uses nested HashMaps to represent the most general device connectivity. The memory usage will be inefficient for devices with large qubit numbers. """ - def single_qubit_gate_names(self) -> List[str]: """ Returns the names of a single qubit operations available on the device. Returns: - List[str]: The list of gate names. - """ - + List[str]: The list of gate names.""" def two_qubit_gate_names(self) -> List[str]: """ Returns the names of a two qubit operations available on the device. Returns: - List[str]: The list of gate names. - """ - + List[str]: The list of gate names.""" def multi_qubit_gate_names(self) -> List[str]: """ Returns the names of a mutli qubit operations available on the device. @@ -804,9 +695,7 @@ class GenericDevice: Returns: List[str]: The list of gate names. - """ - def to_bincode(self) -> bytearray: """ Return the bincode representation of the Device using the bincode crate. @@ -816,9 +705,7 @@ class GenericDevice: Raises: ValueError: Cannot serialize Device to bytes. - """ - def to_json(self) -> str: """ Return the json representation of the Device. @@ -828,9 +715,7 @@ class GenericDevice: Raises: ValueError: Cannot serialize Device to json. - """ - def from_bincode(self, input: bytearray): """ Convert the bincode representation of the qoqo device to a device using the bincode crate. @@ -843,9 +728,7 @@ class GenericDevice: Raises: TypeError: Input cannot be converted to byte array. - ValueError: Input cannot be deserialized to selected Device. - """ - + ValueError: Input cannot be deserialized to selected Device.""" def from_json(self, input: str): """ Convert the json representation of a device to a qoqo device. @@ -857,8 +740,7 @@ class GenericDevice: The deserialized device. Raises: - ValueError: Input cannot be deserialized to selected Device. - """ + ValueError: Input cannot be deserialized to selected Device.""" class SquareLatticeDevice: """ @@ -869,8 +751,7 @@ class SquareLatticeDevice: number_columns (int): Fixed number of columns in device. single_qubit_gates (List[str]): A list of 'hqslang' names of single-qubit-gates supported by the device. two_qubit_gates (List[str]): A list of 'hqslang' names of basic two-qubit-gates supported by the device. - default_gate_time (float): The default startig gate time. - """ + default_gate_time (float): The default startig gate time.""" def __init__( self, @@ -881,25 +762,20 @@ class SquareLatticeDevice: default_gate_time: float, ): return - def number_rows(self) -> int: """ Return the number of rows of optical tweezers in the two-dimensional grid of potential qubit positions. Returns: int: The number of rows. - """ - def number_columns(self) -> int: """ Return number of columns in device. Returns: int: The number of columns. - """ - def set_all_two_qubit_gate_times( self, gate: str, gate_time: float ) -> SquareLatticeDevice: @@ -912,9 +788,7 @@ class SquareLatticeDevice: Returns: Self: A qoqo Device with updated gate times. - """ - def set_all_single_qubit_gate_times( self, gate: str, gate_time: float ) -> SquareLatticeDevice: @@ -927,9 +801,7 @@ class SquareLatticeDevice: Returns: Self: A qoqo Device with updated gate times. - """ - def set_all_qubit_decoherence_rates(self, rates) -> SquareLatticeDevice: """ Set the decoherence rates for all qubits in the SquareLatticeDevice device. @@ -941,9 +813,7 @@ class SquareLatticeDevice: Self: The new device with the new properties Raises: - PyValueError: The input parameter `rates` needs to be a (3x3)-matrix. - """ - + PyValueError: The input parameter `rates` needs to be a (3x3)-matrix.""" def add_damping_all(self, damping: float) -> SquareLatticeDevice: """ Adds qubit damping to noise rates. @@ -952,9 +822,7 @@ class SquareLatticeDevice: damping (float): The damping rates. Returns: - Self: The new device with the new properties - """ - + Self: The new device with the new properties""" def add_dephasing_all(self, dephasing: float) -> SquareLatticeDevice: """ Adds qubit dephasing to noise rates. @@ -963,9 +831,7 @@ class SquareLatticeDevice: dephasing (float): The dephasing rates. Returns: - Self: The new device with the new properties - """ - + Self: The new device with the new properties""" def add_depolarising_all(self, depolarising: float) -> SquareLatticeDevice: """ Adds qubit depolarising to noise rates. @@ -974,41 +840,31 @@ class SquareLatticeDevice: depolarising (float): The depolarising rates. Returns: - Self: The new device with the new properties - """ - + Self: The new device with the new properties""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ - + str: The json schema serialized to json""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def number_qubits(self) -> int: """ Return number of qubits in device. Returns: - int: The number of qubits. - """ - + int: The number of qubits.""" def two_qubit_edges(self) -> Sequence[(int, int)]: """ Return the list of pairs of qubits linked by a native two-qubit-gate in the device. @@ -1026,9 +882,7 @@ class SquareLatticeDevice: Returns: Sequence[(int, int)]: List of two qubit edges in the undirected connectivity graph - """ - def single_qubit_gate_time(self, hqslang: str, qubit: int) -> Optional[float]: """ Returns the gate time of a single qubit operation if the single qubit operation is available on device. @@ -1041,9 +895,7 @@ class SquareLatticeDevice: Option[float]: None if gate is not available Raises: - PyValueError: Qubit is not in device - """ - + PyValueError: Qubit is not in device""" def two_qubit_gate_time( self, hqslang: str, control: int, target: int ) -> Optional[float]: @@ -1060,9 +912,7 @@ class SquareLatticeDevice: Raises: PyValueError: Qubit is not in device - """ - def three_qubit_gate_time( self, hqslang: str, control_0: int, control_1: int, target: int ) -> Optional[float]: @@ -1083,9 +933,7 @@ class SquareLatticeDevice: Raises: PyValueError: Qubit is not in device - """ - def multi_qubit_gate_time(self, hqslang: str, qubits: List[int]) -> Optional[float]: """ Returns the gate time of a multi qubit operation if the multi qubit operation is available on device. @@ -1098,9 +946,7 @@ class SquareLatticeDevice: Option[float]: None if gate is not available Raises: - PyValueError: Qubit is not in device - """ - + PyValueError: Qubit is not in device""" def set_single_qubit_gate_time(self, gate: str, qubit: int, gate_time: float): """ Set the gate time of a single qubit gate. @@ -1111,9 +957,7 @@ class SquareLatticeDevice: gate_time (float): The gate time for the given gate. Raises: - PyValueError: Qubit is not in device - """ - + PyValueError: Qubit is not in device""" def set_two_qubit_gate_time( self, gate: str, control: int, target: int, gate_time: float ): @@ -1127,9 +971,7 @@ class SquareLatticeDevice: gate_time (float): The gate time for the given gate. Raises: - PyValueError: Qubit is not in device - """ - + PyValueError: Qubit is not in device""" def set_three_qubit_gate_time( self, gate: str, control_0: int, control_1: int, target: int, gate_time: float ): @@ -1144,9 +986,7 @@ class SquareLatticeDevice: gate_time (float): The gate time for the given gate. Raises: - PyValueError: Qubit is not in device - """ - + PyValueError: Qubit is not in device""" def set_qubit_decoherence_rates(self, gate: str, qubits: int, gate_time: float): """ Set the gate time of a single qubit gate. @@ -1157,9 +997,7 @@ class SquareLatticeDevice: gate_time (float): The gate time for the given gate. Raises: - PyValueError: Qubit is not in device - """ - + PyValueError: Qubit is not in device""" def set_multi_qubit_gate_time(self, gate: str, qubits: List[int], gate_time: float): """ Set the gate time of a single qubit gate. @@ -1170,9 +1008,7 @@ class SquareLatticeDevice: gate_time (float): The gate time for the given gate. Raises: - PyValueError: Qubits not in device - """ - + PyValueError: Qubits not in device""" def qubit_decoherence_rates(self, qubit: int) -> numpy.array: """ Return the matrix of the decoherence rates of the Lindblad equation. @@ -1182,9 +1018,7 @@ class SquareLatticeDevice: Returns: np.array: 3 by 3 numpy array of decoherence rates - """ - def add_damping(self, qubit: int, damping: float): """ Adds single qubit damping to noise rates. @@ -1194,9 +1028,7 @@ class SquareLatticeDevice: damping (float): The damping rates. Raises: - PyValueError: Qubit is not in device - """ - + PyValueError: Qubit is not in device""" def add_dephasing(self, qubit: int, dephasing: float): """ Adds single qubit dephasing to noise rates. @@ -1206,9 +1038,7 @@ class SquareLatticeDevice: dephasing (float): The dephasing rates. Raises: - PyValueError: Qubit is not in device - """ - + PyValueError: Qubit is not in device""" def add_depolarising(self, qubit: int, depolarising: float): """ Adds single qubit depolarising to noise rates. @@ -1218,9 +1048,7 @@ class SquareLatticeDevice: depolarising (float): The depolarising rates. Raises: - PyValueError: Qubit is not in device - """ - + PyValueError: Qubit is not in device""" def generic_device(self) -> GenericDevice: """ Turns Device into GenericDevice @@ -1235,7 +1063,6 @@ class SquareLatticeDevice: GenericDevice uses nested HashMaps to represent the most general device connectivity. The memory usage will be inefficient for devices with large qubit numbers. """ - def to_generic_device(self) -> GenericDevice: """ Turns Device into GenericDevice @@ -1250,23 +1077,18 @@ class SquareLatticeDevice: GenericDevice uses nested HashMaps to represent the most general device connectivity. The memory usage will be inefficient for devices with large qubit numbers. """ - def single_qubit_gate_names(self) -> List[str]: """ Returns the names of a single qubit operations available on the device. Returns: - List[str]: The list of gate names. - """ - + List[str]: The list of gate names.""" def two_qubit_gate_names(self) -> List[str]: """ Returns the names of a two qubit operations available on the device. Returns: - List[str]: The list of gate names. - """ - + List[str]: The list of gate names.""" def multi_qubit_gate_names(self) -> List[str]: """ Returns the names of a mutli qubit operations available on the device. @@ -1275,9 +1097,7 @@ class SquareLatticeDevice: Returns: List[str]: The list of gate names. - """ - def to_bincode(self) -> bytearray: """ Return the bincode representation of the Device using the bincode crate. @@ -1287,9 +1107,7 @@ class SquareLatticeDevice: Raises: ValueError: Cannot serialize Device to bytes. - """ - def to_json(self) -> str: """ Return the json representation of the Device. @@ -1299,9 +1117,7 @@ class SquareLatticeDevice: Raises: ValueError: Cannot serialize Device to json. - """ - def from_bincode(self, input: bytearray): """ Convert the bincode representation of the qoqo device to a device using the bincode crate. @@ -1314,9 +1130,7 @@ class SquareLatticeDevice: Raises: TypeError: Input cannot be converted to byte array. - ValueError: Input cannot be deserialized to selected Device. - """ - + ValueError: Input cannot be deserialized to selected Device.""" def from_json(self, input: str): """ Convert the json representation of a device to a qoqo device. @@ -1328,5 +1142,4 @@ class SquareLatticeDevice: The deserialized device. Raises: - ValueError: Input cannot be deserialized to selected Device. - """ + ValueError: Input cannot be deserialized to selected Device.""" diff --git a/qoqo/python/qoqo/measurements.pyi b/qoqo/python/qoqo/measurements.pyi index 74529c256..7cffae519 100644 --- a/qoqo/python/qoqo/measurements.pyi +++ b/qoqo/python/qoqo/measurements.pyi @@ -42,7 +42,6 @@ class PauliZProductInput: def __init__(self, number_qubits: int, use_flipped_measurement: bool): return - def add_pauliz_product(self, readout: str, pauli_product_mask: List[int]) -> int: """ Add measured Pauli product to PauliZProductInput and returns index of Pauli product. @@ -58,9 +57,7 @@ class PauliZProductInput: int: The index of the added Pauli product in the list of all Pauli products. Raises: - RuntimeError: Failed to add pauli product. - """ - + RuntimeError: Failed to add pauli product.""" def add_linear_exp_val(self, name: str, linear: Dict[int, float]): """ Add linear definition of expectation value to measurement input. @@ -73,9 +70,7 @@ class PauliZProductInput: linear (Dict[int, float]): The linear combination of expectation values as a map between Pauli product index and coefficient. Raises: - RuntimeError: Failed to add linear expectation value. - """ - + RuntimeError: Failed to add linear expectation value.""" def add_symbolic_exp_val(self, name: str, symbolic: str): """ Add symbolic definition of expectation value to measurement input. @@ -91,9 +86,7 @@ class PauliZProductInput: RuntimeError: Failed to add symbolic expectation value. The i-th PauliProducts are hardcoded as variables pauli_product_i - in the string expression of CalculatorFloat. - """ - + in the string expression of CalculatorFloat.""" def to_json(self) -> str: """ Serialize the PauliZProductInput to json form. @@ -102,9 +95,7 @@ class PauliZProductInput: str: The serialized PauliZProductInput. Raises: - PyRuntimeError: Unexpected error serializing PauliZProductInput. - """ - + PyRuntimeError: Unexpected error serializing PauliZProductInput.""" def from_json(self) -> PauliZProductInput: """ Deserialize the PauliZProductInput from json form. @@ -113,9 +104,7 @@ class PauliZProductInput: PauliZProductInput: The deserialized PauliZProductInput. Raises: - PyRuntimeError: Cannot deserialize string to PauliZProductInput. - """ - + PyRuntimeError: Cannot deserialize string to PauliZProductInput.""" def to_bincode(self) -> bytearray: """ Return the bincode representation of the PauliZProductInput using the [bincode] crate. @@ -124,9 +113,7 @@ class PauliZProductInput: ByteArray: The serialized PauliZProductInput (in [bincode] form). Raises: - ValueError: Cannot serialize PauliZProductInput to bytes. - """ - + ValueError: Cannot serialize PauliZProductInput to bytes.""" def from_bincode(self, input: bytearray) -> PauliZProductInput: """ Convert the bincode representation of the PauliZProductInput to a PauliZProductInput using the [bincode] crate. @@ -139,32 +126,25 @@ class PauliZProductInput: Raises: TypeError: Input cannot be converted to byte array. - ValueError: Input cannot be deserialized to PauliZProductInput. - """ - + ValueError: Input cannot be deserialized to PauliZProductInput.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ - + str: The json schema serialized to json""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ + str: The minimum version of the qoqo library to deserialize this object.""" class CheatedPauliZProductInput: """ @@ -177,12 +157,10 @@ class CheatedPauliZProductInput: Returns: self: The new instance of CheatedPauliZProductInput with measured_exp_vals = an empty - HashMap and pauli_product_keys = an empty HashMap. - """ + HashMap and pauli_product_keys = an empty HashMap.""" def __init__(self): return - def add_pauliz_product(self, readout: str) -> int: """ Add measured Pauli product to CheatedPauliZProductInput and returns index of Pauli product. @@ -196,7 +174,6 @@ class CheatedPauliZProductInput: Returns: int: The index of the added Pauli product in the list of all Pauli products. """ - def add_linear_exp_val(self, name: str, linear: Dict[int, float]): """ Add linear definition of expectation value to measurement input. @@ -209,9 +186,7 @@ class CheatedPauliZProductInput: linear (Dict[int, float]): The linear combination of expectation values as a map between Pauli product index and coefficient. Raises: - RuntimeError: Failed to add linear expectation value. - """ - + RuntimeError: Failed to add linear expectation value.""" def add_symbolic_exp_val(self, name: str, symbolic: str): """ Add symbolic definition of expectation value to measurement input. @@ -228,9 +203,7 @@ class CheatedPauliZProductInput: The i-th PauliProducts are hardcoded as variables pauli_product_i in the string expression of CalculatorFloat. - """ - def to_json(self) -> str: """ Serialize the CheatedPauliZProductInput to json form. @@ -239,9 +212,7 @@ class CheatedPauliZProductInput: str: The serialized CheatedPauliZProductInput. Raises: - PyRuntimeError: Unexpected error serializing CheatedPauliZProductInput. - """ - + PyRuntimeError: Unexpected error serializing CheatedPauliZProductInput.""" def from_json(self) -> CheatedPauliZProductInput: """ Deserialize the CheatedPauliZProductInput from json form. @@ -250,9 +221,7 @@ class CheatedPauliZProductInput: CheatedPauliZProductInput: The deserialized CheatedPauliZProductInput. Raises: - PyRuntimeError: Cannot deserialize string to CheatedPauliZProductInput. - """ - + PyRuntimeError: Cannot deserialize string to CheatedPauliZProductInput.""" def to_bincode(self) -> bytearray: """ Return the bincode representation of the CheatedPauliZProductInput using the [bincode] crate. @@ -261,9 +230,7 @@ class CheatedPauliZProductInput: ByteArray: The serialized CheatedPauliZProductInput (in [bincode] form). Raises: - ValueError: Cannot serialize CheatedPauliZProductInput to bytes. - """ - + ValueError: Cannot serialize CheatedPauliZProductInput to bytes.""" def from_bincode(self, input: bytearray) -> CheatedPauliZProductInput: """ Convert the bincode representation of the CheatedPauliZProductInput to a CheatedPauliZProductInput using the [bincode] crate. @@ -276,32 +243,25 @@ class CheatedPauliZProductInput: Raises: TypeError: Input cannot be converted to byte array. - ValueError: Input cannot be deserialized to CheatedPauliZProductInput. - """ - + ValueError: Input cannot be deserialized to CheatedPauliZProductInput.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ - + str: The json schema serialized to json""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ + str: The minimum version of the qoqo library to deserialize this object.""" class CheatedInput: """ @@ -317,12 +277,10 @@ class CheatedInput: Returns: CheatedInput: The new instance of CheatedInput with the specified number of qubits in input, - and an empty dictionay of expectation values. - """ + and an empty dictionay of expectation values.""" def __init__(self, number_qubits: int): return - def add_operator_exp_val( self, name: str, operator: int, int, complex, readout: str ): @@ -338,9 +296,7 @@ class CheatedInput: readout (str): The mame of the readout register that contains the density matrix or satevector. Raises: - RuntimeError: Failed to add operator based expectation value. - """ - + RuntimeError: Failed to add operator based expectation value.""" def to_json(self) -> str: """ Serialize the CheatedInput to json form. @@ -349,9 +305,7 @@ class CheatedInput: str: The serialized CheatedInput. Raises: - PyRuntimeError: Unexpected error serializing CheatedInput. - """ - + PyRuntimeError: Unexpected error serializing CheatedInput.""" def from_json(self) -> CheatedInput: """ Deserialize the CheatedInput from json form. @@ -360,9 +314,7 @@ class CheatedInput: CheatedInput: The deserialized CheatedInput. Raises: - PyRuntimeError: Cannot deserialize string to CheatedInput. - """ - + PyRuntimeError: Cannot deserialize string to CheatedInput.""" def to_bincode(self) -> bytearray: """ Return the bincode representation of the CheatedInput using the [bincode] crate. @@ -371,9 +323,7 @@ class CheatedInput: ByteArray: The serialized CheatedInput (in [bincode] form). Raises: - ValueError: Cannot serialize CheatedInput to bytes. - """ - + ValueError: Cannot serialize CheatedInput to bytes.""" def from_bincode(self, input: bytearray) -> CheatedInput: """ Convert the bincode representation of the CheatedInput to a CheatedInput using the [bincode] crate. @@ -386,32 +336,25 @@ class CheatedInput: Raises: TypeError: Input cannot be converted to byte array. - ValueError: Input cannot be deserialized to CheatedInput. - """ - + ValueError: Input cannot be deserialized to CheatedInput.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ - + str: The json schema serialized to json""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ + str: The minimum version of the qoqo library to deserialize this object.""" class PauliZProduct: """ @@ -433,7 +376,6 @@ class PauliZProduct: input: PauliZProductInput, ): return - def evaluate( self, input_bit_registers: Dict[str, Union[List[List[int]], List[List[bool]]]], @@ -453,41 +395,31 @@ class PauliZProduct: Raises: RuntimeError: Unexpected repetition of key in bit_register. - RuntimeError: Error evaluating PauliZ product measurement. - """ - + RuntimeError: Error evaluating PauliZ product measurement.""" def circuits(self) -> List[Circuit]: """ Return the collection of quantum circuits for the separate basis rotations. Returns: - List[Circuit]: The quantum circuits. - """ - + List[Circuit]: The quantum circuits.""" def constant_circuit(self) -> Optional[Circuit]: """ Return constant circuit that is executed before any Circuit in circuits. Returns: - Optional[Circuit]: The constant Circuit (None if not defined). - """ - + Optional[Circuit]: The constant Circuit (None if not defined).""" def input(self) -> PauliZProductInput: """ Returns the measurement input data defining how to construct expectation values from measurements. Returns: - PauliZProductInput: The measurment input of PauliZProduct. - """ - + PauliZProductInput: The measurment input of PauliZProduct.""" def measurement_type(self) -> str: """ Returns the type of the measurement in string form. Returns: - str: The type of the measurement. - """ - + str: The type of the measurement.""" def substitute_parameters(self, substituted_parameters: Dict[str, float]): """ Return clone of Measurement with symbolic parameters replaced. @@ -495,7 +427,6 @@ class PauliZProduct: Args: substituted_parameters (Dict[str, float]): The dictionary containing the substitutions to use in the Circuit. """ - def _internal_to_bincode(self): """ Return the name of the measurement and the bincode representation of the Measurement using the [bincode] crate. @@ -504,9 +435,7 @@ class PauliZProduct: (str, ByteArray): Name and serialized measurement (in [bincode] form). Raises: - ValueError: Cannot serialize Measurement to bytes. - """ - + ValueError: Cannot serialize Measurement to bytes.""" def to_bincode(self) -> bytearray: """ Return the bincode representation of the PauliZProduct using the [bincode] crate. @@ -515,9 +444,7 @@ class PauliZProduct: ByteArray: The serialized PauliZProduct (in [bincode] form). Raises: - ValueError: Cannot serialize PauliZProduct to bytes. - """ - + ValueError: Cannot serialize PauliZProduct to bytes.""" def from_bincode(self, input: bytearray) -> PauliZProduct: """ Convert the bincode representation of the PauliZProduct to a PauliZProduct using the [bincode] crate. @@ -530,9 +457,7 @@ class PauliZProduct: Raises: TypeError: Input cannot be converted to byte array. - ValueError: Input cannot be deserialized to PauliZProduct. - """ - + ValueError: Input cannot be deserialized to PauliZProduct.""" def to_json(self) -> str: """ Serialize the PauliZProduct to json form using the [serde_json] crate. @@ -541,9 +466,7 @@ class PauliZProduct: str: The serialized PauliZProduct. Raises: - RuntimeError: Unexpected error serializing PauliZProduct. - """ - + RuntimeError: Unexpected error serializing PauliZProduct.""" def from_json(self) -> PauliZProduct: """ Deserialize the PauliZProduct from json form using the [serde_json] crate. @@ -552,32 +475,25 @@ class PauliZProduct: PauliZProduct: The deserialized PauliZProduct. Raises: - RuntimeError: Cannot deserialize string to PauliZProduct. - """ - + RuntimeError: Cannot deserialize string to PauliZProduct.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ - + str: The json schema serialized to json""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ + str: The minimum version of the qoqo library to deserialize this object.""" class CheatedPauliZProduct: """ @@ -599,7 +515,6 @@ class CheatedPauliZProduct: input: CheatedPauliZProductInput, ): return - def evaluate( self, input_bit_registers: Dict[str, Union[List[List[int]], List[List[bool]]]], @@ -619,41 +534,31 @@ class CheatedPauliZProduct: Raises: RuntimeError: Unexpected repetition of key in bit_register. - RuntimeError: Error evaluating cheated PauliZ product measurement. - """ - + RuntimeError: Error evaluating cheated PauliZ product measurement.""" def circuits(self) -> List[Circuit]: """ Returns the collection of quantum circuits for the separate basis rotations. Returns: - List[Circuit]: The quantum circuits. - """ - + List[Circuit]: The quantum circuits.""" def constant_circuit(self) -> Optional[Circuit]: """ Returns constant circuit that is executed before any Circuit in circuits. Returns: - Optional[Circuit]: The constant Circuit (None if not defined). - """ - + Optional[Circuit]: The constant Circuit (None if not defined).""" def input(self) -> CheatedPauliZProductInput: """ Returns the measurement input data defining how to construct expectation values from measurements. Returns: - CheatedPauliZProductInput: The measurment input of CheatedPauliZProduct. - """ - + CheatedPauliZProductInput: The measurment input of CheatedPauliZProduct.""" def measurement_type(self) -> str: """ Returns the type of the measurement in string form. Returns: - str: The type of the measurement. - """ - + str: The type of the measurement.""" def substitute_parameters(self, substituted_parameters: Dict[str, float]): """ Returns clone of Measurement with symbolic parameters replaced @@ -661,7 +566,6 @@ class CheatedPauliZProduct: Args: substituted_parameters (Dict[str, float]): The dictionary containing the substitutions to use in the Circuit. """ - def _internal_to_bincode(self): """ Return the name of the measurement and the bincode representation of the Measurement using the [bincode] crate. @@ -670,9 +574,7 @@ class CheatedPauliZProduct: (str, ByteArray): Name and serialized measurement (in [bincode] form). Raises: - ValueError: Cannot serialize Measurement to bytes. - """ - + ValueError: Cannot serialize Measurement to bytes.""" def to_bincode(self) -> bytearray: """ Return the bincode representation of the CheatedPauliZProduct using the [bincode] crate. @@ -681,9 +583,7 @@ class CheatedPauliZProduct: ByteArray: The serialized CheatedPauliZProduct (in [bincode] form). Raises: - ValueError: Cannot serialize CheatedPauliZProduct to bytes. - """ - + ValueError: Cannot serialize CheatedPauliZProduct to bytes.""" def from_bincode(self, input: bytearray) -> CheatedPauliZProduct: """ Convert the bincode representation of the CheatedPauliZProduct to a CheatedPauliZProduct using the [bincode] crate. @@ -696,9 +596,7 @@ class CheatedPauliZProduct: Raises: TypeError: Input cannot be converted to byte array. - ValueError: Input cannot be deserialized to CheatedPauliZProduct. - """ - + ValueError: Input cannot be deserialized to CheatedPauliZProduct.""" def to_json(self) -> str: """ Serializes the CheatedPauliZProduct to json form using the [serde_json] crate. @@ -707,9 +605,7 @@ class CheatedPauliZProduct: str: The serialized CheatedPauliZProduct. Raises: - RuntimeError: Unexpected error serializing CheatedPauliZProduct. - """ - + RuntimeError: Unexpected error serializing CheatedPauliZProduct.""" def from_json(self) -> CheatedPauliZProduct: """ Deserialize the CheatedPauliZProduct from json form using the [serde_json] crate. @@ -718,32 +614,25 @@ class CheatedPauliZProduct: CheatedPauliZProduct: the deserialized CheatedPauliZProduct. Raises: - RuntimeError: Cannot deserialize string to CheatedPauliZProduct. - """ - + RuntimeError: Cannot deserialize string to CheatedPauliZProduct.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ - + str: The json schema serialized to json""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ + str: The minimum version of the qoqo library to deserialize this object.""" class Cheated: """ @@ -755,8 +644,7 @@ class Cheated: input (CheatedInput): The additional input information required for measurement. Returns: - Cheated: The new measurement. - """ + Cheated: The new measurement.""" def __init__( self, @@ -765,7 +653,6 @@ class Cheated: input: CheatedInput, ): return - def evaluate( self, input_bit_registers: Dict[str, Union[List[List[int]], List[List[bool]]]], @@ -785,41 +672,31 @@ class Cheated: Raises: RuntimeError: Unexpected repetition of key in bit_register. - RuntimeError: Error evaluating cheated measurement. - """ - + RuntimeError: Error evaluating cheated measurement.""" def circuits(self) -> List[Circuit]: """ Return the collection of quantum circuits for the separate cheated measurements. Returns: - List[Circuit]: The quantum circuits. - """ - + List[Circuit]: The quantum circuits.""" def constant_circuit(self) -> Optional[Circuit]: """ Returns constant circuit that is executed before any Circuit in circuits. Returns: - Optional[Circuit]: The constant Circuit (None if not defined). - """ - + Optional[Circuit]: The constant Circuit (None if not defined).""" def input(self) -> CheatedInput: """ Returns the measurement input data defining how to construct expectation values from measurements. Returns: - CheatedInput: The input of Cheated measurement - """ - + CheatedInput: The input of Cheated measurement""" def measurement_type(self) -> str: """ Returns the type of the measurement in string form. Returns: - str: The type of the measurement. - """ - + str: The type of the measurement.""" def substitute_parameters(self): """ Return copy of Measurement with symbolic parameters replaced. @@ -828,9 +705,7 @@ class Cheated: substituted_parameters (Dict[str, float]): The dictionary containing the substitutions to use in the Circuit. Raises: - RuntimeError: Error substituting symbolic parameters. - """ - + RuntimeError: Error substituting symbolic parameters.""" def _internal_to_bincode(self): """ Return the name of the measurement and the bincode representation of the Measurement using the [bincode] crate. @@ -839,9 +714,7 @@ class Cheated: (str, ByteArray): Name and serialized measurement (in [bincode] form). Raises: - ValueError: Cannot serialize Measurement to bytes. - """ - + ValueError: Cannot serialize Measurement to bytes.""" def to_bincode(self) -> bytearray: """ Return the bincode representation of the Cheated using the [bincode] crate. @@ -850,9 +723,7 @@ class Cheated: ByteArray: The serialized Cheated (in [bincode] form). Raises: - ValueError: Cannot serialize Cheated to bytes. - """ - + ValueError: Cannot serialize Cheated to bytes.""" def from_bincode(self, input: bytearray) -> Cheated: """ Convert the bincode representation of the Cheated to a Cheated using the [bincode] crate. @@ -865,9 +736,7 @@ class Cheated: Raises: TypeError: Input cannot be converted to byte array. - ValueError: Input cannot be deserialized to Cheated. - """ - + ValueError: Input cannot be deserialized to Cheated.""" def to_json(self) -> str: """ Serialize the Cheated measurement to json form. @@ -876,9 +745,7 @@ class Cheated: str: The serialized Cheated measurement. Raises: - RuntimeError: Unexpected error serializing Cheated. - """ - + RuntimeError: Unexpected error serializing Cheated.""" def from_json(self) -> Cheated: """ Deserialize the Cheated measurement from json form. @@ -887,32 +754,25 @@ class Cheated: Cheated: The deserialized Cheated Measurement. Raises: - RuntimeError: Cannot deserialize string to Cheated. - """ - + RuntimeError: Cannot deserialize string to Cheated.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ - + str: The json schema serialized to json""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ + str: The minimum version of the qoqo library to deserialize this object.""" class ClassicalRegister: """ @@ -923,36 +783,28 @@ class ClassicalRegister: circuits (List[Circuit]): The collection of quantum circuits executed for the measurement. Returns: - ClassicalRegister: The new register. - """ + ClassicalRegister: The new register.""" def __init__(self, constant_circuit: Optional[Circuit], circuits: List[Circuit]): return - def circuits(self) -> List[Circuit]: """ Return the collection of quantum circuits that make up the total measurement. Returns: - List[Circuit]: The quantum circuits. - """ - + List[Circuit]: The quantum circuits.""" def constant_circuit(self) -> Optional[Circuit]: """ Returns constant circuit that is executed before any Circuit in circuits. Returns: - Optional[Circuit]: The constant Circuit (None if not defined). - """ - + Optional[Circuit]: The constant Circuit (None if not defined).""" def measurement_type(self) -> str: """ Returns the type of the measurement in string form. Returns: - str: The type of the measurement. - """ - + str: The type of the measurement.""" def substitute_parameters(self, substituted_parameters: Dict[str, float]): """ Return copy of Measurement with symbolic parameters replaced. @@ -961,9 +813,7 @@ class ClassicalRegister: substituted_parameters (Dict[str, float]): The dictionary containing the substitutions to use in the Circuit. Raises: - RuntimeError: Error substituting symbolic parameters. - """ - + RuntimeError: Error substituting symbolic parameters.""" def _internal_to_bincode(self): """ Return the name of the measurement and the bincode representation of the Measurement using the [bincode] crate. @@ -972,9 +822,7 @@ class ClassicalRegister: (str, ByteArray): Name and serialized measurement (in [bincode] form). Raises: - ValueError: Cannot serialize Measurement to bytes. - """ - + ValueError: Cannot serialize Measurement to bytes.""" def to_bincode(self) -> bytearray: """ Return the bincode representation of the ClassicalRegister using the [bincode] crate. @@ -983,9 +831,7 @@ class ClassicalRegister: ByteArray: The serialized ClassicalRegister (in [bincode] form). Raises: - ValueError: Cannot serialize ClassicalRegister to bytes. - """ - + ValueError: Cannot serialize ClassicalRegister to bytes.""" def from_bincode(self, input: bytearray) -> ClassicalRegister: """ Convert the bincode representation of the ClassicalRegister to a ClassicalRegister using the [bincode] crate. @@ -998,9 +844,7 @@ class ClassicalRegister: Raises: TypeError: Input cannot be converted to byte array. - ValueError: Input cannot be deserialized to ClassicalRegister. - """ - + ValueError: Input cannot be deserialized to ClassicalRegister.""" def to_json(self) -> str: """ Serialize the ClassicalRegister measurement to json form. @@ -1009,9 +853,7 @@ class ClassicalRegister: str: The serialized ClassicalRegister measurement. Raises: - PyRuntimeError: Unexpected error serializing ClassicalRegister. - """ - + PyRuntimeError: Unexpected error serializing ClassicalRegister.""" def from_json(self) -> ClassicalRegister: """ Deserialize the ClassicalRegister measurement from json form. @@ -1020,29 +862,22 @@ class ClassicalRegister: ClassicalRegister: The deserialized ClassicalRegister Measurement. Raises: - PyRuntimeError: Cannot deserialize string to ClassicalRegister. - """ - + PyRuntimeError: Cannot deserialize string to ClassicalRegister.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ - + str: The json schema serialized to json""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ + str: The minimum version of the qoqo library to deserialize this object.""" diff --git a/qoqo/python/qoqo/noise_models.pyi b/qoqo/python/qoqo/noise_models.pyi index 18cfb6e17..d30c1b5b7 100644 --- a/qoqo/python/qoqo/noise_models.pyi +++ b/qoqo/python/qoqo/noise_models.pyi @@ -51,7 +51,6 @@ class ContinuousDecoherenceModel: def __init__(self, noise_operator: PlusMinusLindbladNoiseOperator): return - def get_noise_operator(self) -> PlusMinusLindbladNoiseOperator: """ Return the internal Lindblad noise operator of the continuous noise model. @@ -59,7 +58,6 @@ class ContinuousDecoherenceModel: Returns: PlusMinusLindbladNoiseOperator: The internal Lindblad noise operator of the continuous noise """ - def from_bincode(self, input: bytearray): """ Convert the bincode representation of the Noise-Model to a device using the bincode crate. @@ -72,9 +70,7 @@ class ContinuousDecoherenceModel: Raises: TypeError: Input cannot be converted to byte array. - ValueError: Input cannot be deserialized to selected Noise-Model. - """ - + ValueError: Input cannot be deserialized to selected Noise-Model.""" def from_json(self, input: str): """ Convert the json representation of a device to a Noise-Model. @@ -86,17 +82,13 @@ class ContinuousDecoherenceModel: The deserialized device. Raises: - ValueError: Input cannot be deserialized to selected Noise-Model. - """ - + ValueError: Input cannot be deserialized to selected Noise-Model.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ - + str: The json schema serialized to json""" def add_damping_rate( self, qubits: List[int], rate: float ) -> ContinuousDecoherenceModel: @@ -108,9 +100,7 @@ class ContinuousDecoherenceModel: rate (float): The damping rate. Returns: - ContinuousDecoherenceModel: The model with the damping added. - """ - + ContinuousDecoherenceModel: The model with the damping added.""" def add_dephasing_rate( self, qubits: List[int], rate: float ) -> ContinuousDecoherenceModel: @@ -122,9 +112,7 @@ class ContinuousDecoherenceModel: rate (float): The dephasing rate. Returns: - ContinuousDecoherenceModel: The model with the dephasing added. - """ - + ContinuousDecoherenceModel: The model with the dephasing added.""" def add_depolarising_rate( self, qubits: List[int], rate: float ) -> ContinuousDecoherenceModel: @@ -136,9 +124,7 @@ class ContinuousDecoherenceModel: rate (float): The depolarising rate. Returns: - ContinuousDecoherenceModel: The model with the depolarising added. - """ - + ContinuousDecoherenceModel: The model with the depolarising added.""" def add_excitation_rate( self, qubits: List[int], rate: float ) -> ContinuousDecoherenceModel: @@ -150,9 +136,7 @@ class ContinuousDecoherenceModel: rate (float): The excitation rate. Returns: - ContinuousDecoherenceModel: The model with the excitation added. - """ - + ContinuousDecoherenceModel: The model with the excitation added.""" def to_bincode(self) -> bytearray: """ Return the bincode representation of the Noise-Model using the bincode crate. @@ -162,9 +146,7 @@ class ContinuousDecoherenceModel: Raises: ValueError: Cannot serialize Noise-Model to bytes. - """ - def to_json(self) -> str: """ Return the json representation of the Noise-Model. @@ -174,24 +156,19 @@ class ContinuousDecoherenceModel: Raises: ValueError: Cannot serialize Noise-Model to json. - """ - def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ + str: The minimum version of the qoqo library to deserialize this object.""" class ImperfectReadoutModel: """ @@ -214,12 +191,10 @@ class ImperfectReadoutModel: assert lower_prob == 0.3 higher_prob = model.prob_detect_1_as_0(2) assert higher_prob == 0.7 - ``` - """ + ```""" def __init__(self): return - def new_with_uniform_error( self, number_qubits: int, prob_detect_0_as_1: float, prob_detect_1_as_0: float ) -> ImperfectReadoutModel: @@ -235,9 +210,7 @@ class ImperfectReadoutModel: ImperfectReadoutModel: The new error model Raises: - ValueError: Raised if the error probabilities are not valid (< 0 or > 1) - """ - + ValueError: Raised if the error probabilities are not valid (< 0 or > 1)""" def from_bincode(self, input: bytearray): """ Convert the bincode representation of the Noise-Model to a device using the bincode crate. @@ -250,9 +223,7 @@ class ImperfectReadoutModel: Raises: TypeError: Input cannot be converted to byte array. - ValueError: Input cannot be deserialized to selected Noise-Model. - """ - + ValueError: Input cannot be deserialized to selected Noise-Model.""" def from_json(self, input: str): """ Convert the json representation of a device to a Noise-Model. @@ -264,17 +235,13 @@ class ImperfectReadoutModel: The deserialized device. Raises: - ValueError: Input cannot be deserialized to selected Noise-Model. - """ - + ValueError: Input cannot be deserialized to selected Noise-Model.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ - + str: The json schema serialized to json""" def set_error_probabilites( self, qubit: int, prob_detect_0_as_1: float, prob_detect_1_as_0: float ) -> ImperfectReadoutModel: @@ -290,9 +257,7 @@ class ImperfectReadoutModel: Self: The updated error model Raises: - ValueError: Raised if the error probabilities are not valid (< 0 or > 1). - """ - + ValueError: Raised if the error probabilities are not valid (< 0 or > 1).""" def prob_detect_0_as_1(self, qubit: int) -> float: """ Return probability to detect 0 as 1 for a qubit @@ -301,9 +266,7 @@ class ImperfectReadoutModel: qubit (int): The qubit for which the probability is returned. Returns: - float: The probability to detect 0 as 1 for the qubit - """ - + float: The probability to detect 0 as 1 for the qubit""" def prob_detect_1_as_0(self, qubit: int) -> float: """ Return probability to detect 1 as 0 for a qubit @@ -312,9 +275,7 @@ class ImperfectReadoutModel: qubit (int): The qubit for which the probability is returned. Returns: - float: The probability to detect 1 as 0 for the qubit - """ - + float: The probability to detect 1 as 0 for the qubit""" def to_bincode(self) -> bytearray: """ Return the bincode representation of the Noise-Model using the bincode crate. @@ -324,9 +285,7 @@ class ImperfectReadoutModel: Raises: ValueError: Cannot serialize Noise-Model to bytes. - """ - def to_json(self) -> str: """ Return the json representation of the Noise-Model. @@ -336,24 +295,19 @@ class ImperfectReadoutModel: Raises: ValueError: Cannot serialize Noise-Model to json. - """ - def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ + str: The minimum version of the qoqo library to deserialize this object.""" class DecoherenceOnGateModel: """ @@ -382,12 +336,10 @@ class DecoherenceOnGateModel: "CNOT", 0,1, lindblad_noise ) - ``` - """ + ```""" def __init__(self): return - def set_single_qubit_gate_error( self, gate: str, qubit: int, noise_operator: PlusMinusLindbladNoiseOperator ) -> DecoherenceOnGateModel: @@ -405,7 +357,6 @@ class DecoherenceOnGateModel: Raises: PyTypeError: Noise operator is not a struqture.spins.PlusMinusLindbladNoiseOperator. """ - def get_single_qubit_gate_error( self, gate: str, qubit: int ) -> Optional[PlusMinusLindbladNoiseOperator]: @@ -419,7 +370,6 @@ class DecoherenceOnGateModel: Returns: Optional[struqture_py.spins.PlusMinusLindbladNoiseOperator]: The error model applied when gate is applied. """ - def set_two_qubit_gate_error( self, gate: str, @@ -442,7 +392,6 @@ class DecoherenceOnGateModel: Raises: PyTypeError: Noise operator is not a struqture.spins.PlusMinusLindbladNoiseOperator. """ - def get_two_qubit_gate_error( self, gate: str, control: int, target: int ) -> Optional[PlusMinusLindbladNoiseOperator]: @@ -457,7 +406,6 @@ class DecoherenceOnGateModel: Returns: Optional[struqture_py.spins.PlusMinusLindbladNoiseOperator]: The error model applied when gate is applied. """ - def set_three_qubit_gate_error( self, gate: str, @@ -482,7 +430,6 @@ class DecoherenceOnGateModel: Raises: PyTypeError: Noise operator is not a struqture.spins.PlusMinusLindbladNoiseOperator. """ - def get_three_qubit_gate_error( self, gate: str, control0: int, control1: int, target: int ) -> Optional[PlusMinusLindbladNoiseOperator]: @@ -498,7 +445,6 @@ class DecoherenceOnGateModel: Returns: Optional[struqture_py.spins.PlusMinusLindbladNoiseOperator]: The error model applied when gate is applied. """ - def set_multi_qubit_gate_error( self, gate: str, qubits: list, noise_operator: PlusMinusLindbladNoiseOperator ) -> DecoherenceOnGateModel: @@ -516,7 +462,6 @@ class DecoherenceOnGateModel: Raises: PyTypeError: Noise operator is not a struqture.spins.PlusMinusLindbladNoiseOperator. """ - def get_multi_qubit_gate_error( self, gate: str, qubits: List[int] ) -> Optional[PlusMinusLindbladNoiseOperator]: @@ -530,7 +475,6 @@ class DecoherenceOnGateModel: Returns: Optional[struqture_py.spins.PlusMinusLindbladNoiseOperator]: The error model applied when gate is applied. """ - def from_bincode(self, input: bytearray): """ Convert the bincode representation of the Noise-Model to a device using the bincode crate. @@ -543,9 +487,7 @@ class DecoherenceOnGateModel: Raises: TypeError: Input cannot be converted to byte array. - ValueError: Input cannot be deserialized to selected Noise-Model. - """ - + ValueError: Input cannot be deserialized to selected Noise-Model.""" def from_json(self, input: str): """ Convert the json representation of a device to a Noise-Model. @@ -557,17 +499,13 @@ class DecoherenceOnGateModel: The deserialized device. Raises: - ValueError: Input cannot be deserialized to selected Noise-Model. - """ - + ValueError: Input cannot be deserialized to selected Noise-Model.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ - + str: The json schema serialized to json""" def to_bincode(self) -> bytearray: """ Return the bincode representation of the Noise-Model using the bincode crate. @@ -577,9 +515,7 @@ class DecoherenceOnGateModel: Raises: ValueError: Cannot serialize Noise-Model to bytes. - """ - def to_json(self) -> str: """ Return the json representation of the Noise-Model. @@ -589,24 +525,19 @@ class DecoherenceOnGateModel: Raises: ValueError: Cannot serialize Noise-Model to json. - """ - def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ + str: The minimum version of the qoqo library to deserialize this object.""" class SingleQubitOverrotationDescription: """ @@ -623,12 +554,10 @@ class SingleQubitOverrotationDescription: theta_mean = 0.0; theta_std = 1.0; noise_desc = SingleQubitOverrotationDescription(gate, theta_mean, theta_std); - ``` - """ + ```""" def __init__(self): return - def to_bincode(self) -> bytearray: """ Return the bincode representation of SingleQubitOverrotationDescription using the bincode crate. @@ -637,9 +566,7 @@ class SingleQubitOverrotationDescription: ByteArray: The serialized SingleQubitOverrotationDescription (in bincode form). Raises: - ValueError: Cannot serialize SingleQubitOverrotationDescription to bytes. - """ - + ValueError: Cannot serialize SingleQubitOverrotationDescription to bytes.""" def to_json(self) -> str: """ Return the json representation of the SingleQubitOverrotationDescription. @@ -648,9 +575,7 @@ class SingleQubitOverrotationDescription: str: The serialized form of SingleQubitOverrotationDescription. Raises: - ValueError: Cannot serialize SingleQubitOverrotationDescription. - """ - + ValueError: Cannot serialize SingleQubitOverrotationDescription.""" def from_bincode(self, input: bytearray): """ Convert the bincode representation of the overotation description to a device using the bincode crate. @@ -663,9 +588,7 @@ class SingleQubitOverrotationDescription: Raises: TypeError: Input cannot be converted to byte array. - ValueError: Input cannot be deserialized to selected Noise-Model. - """ - + ValueError: Input cannot be deserialized to selected Noise-Model.""" def from_json(self, input: str): """ Convert the json representation of a device to a overotation description. @@ -677,32 +600,25 @@ class SingleQubitOverrotationDescription: The deserialized device. Raises: - ValueError: Input cannot be deserialized to selected Noise-Model. - """ - + ValueError: Input cannot be deserialized to selected Noise-Model.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def current_version(self) -> str: """ Return the current version of the qoqo library. Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class SingleQubitOverrotationOnGate: """ @@ -723,12 +639,10 @@ class SingleQubitOverrotationOnGate: circuit_gate_with_noise = "RotateZ"; qubit = 0; noise.set_single_qubit_overrotation(circuit_gate_with_noise, qubit, noise_desc); - ``` - """ + ```""" def __init__(self): return - def set_single_qubit_overrotation( self, gate: str, qubit: int ) -> SingleQubitOverrotationOnGate: @@ -746,7 +660,6 @@ class SingleQubitOverrotationOnGate: Raises: PyTypeError: Noise description is not a SingleQubitOverrotationDescription. """ - def get_single_qubit_overrotation( self, gate: str, qubit: int ) -> Optional[SingleQubitOverrotationDescription]: @@ -760,7 +673,6 @@ class SingleQubitOverrotationOnGate: Returns: Optional[SingleQubitOverrotationDescription]: The overrotation applied when gate is applied. """ - def set_two_qubit_overrotation( self, gate: str, control: int, target: int ) -> SingleQubitOverrotationOnGate: @@ -779,7 +691,6 @@ class SingleQubitOverrotationOnGate: Raises: PyTypeError: Noise description is not a (SingleQubitOverrotationDescription, SingleQubitOverrotationDescription). """ - def get_two_qubit_overrotation( self, gate: str, control: int, target: int ) -> Optional[ @@ -796,7 +707,6 @@ class SingleQubitOverrotationOnGate: Returns: Optional[Tuple[SingleQubitOverrotationDescription, SingleQubitOverrotationDescription]]: The overrotation applied when gate is applied. """ - def from_bincode(self, input: bytearray): """ Convert the bincode representation of the Noise-Model to a device using the bincode crate. @@ -809,9 +719,7 @@ class SingleQubitOverrotationOnGate: Raises: TypeError: Input cannot be converted to byte array. - ValueError: Input cannot be deserialized to selected Noise-Model. - """ - + ValueError: Input cannot be deserialized to selected Noise-Model.""" def from_json(self, input: str): """ Convert the json representation of a device to a Noise-Model. @@ -823,17 +731,13 @@ class SingleQubitOverrotationOnGate: The deserialized device. Raises: - ValueError: Input cannot be deserialized to selected Noise-Model. - """ - + ValueError: Input cannot be deserialized to selected Noise-Model.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ - + str: The json schema serialized to json""" def to_bincode(self) -> bytearray: """ Return the bincode representation of the Noise-Model using the bincode crate. @@ -843,9 +747,7 @@ class SingleQubitOverrotationOnGate: Raises: ValueError: Cannot serialize Noise-Model to bytes. - """ - def to_json(self) -> str: """ Return the json representation of the Noise-Model. @@ -855,24 +757,19 @@ class SingleQubitOverrotationOnGate: Raises: ValueError: Cannot serialize Noise-Model to json. - """ - def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ + str: The minimum version of the qoqo library to deserialize this object.""" class DecoherenceOnIdleModel: """ @@ -905,7 +802,6 @@ class DecoherenceOnIdleModel: def __init__(self, noise_operator: PlusMinusLindbladNoiseOperator): return - def get_noise_operator(self) -> PlusMinusLindbladNoiseOperator: """ Return the internal Lindblad noise operator of the continuous noise model. @@ -913,7 +809,6 @@ class DecoherenceOnIdleModel: Returns: PlusMinusLindbladNoiseOperator: The internal Lindblad noise operator of the continuous noise """ - def from_bincode(self, input: bytearray): """ Convert the bincode representation of the Noise-Model to a device using the bincode crate. @@ -926,9 +821,7 @@ class DecoherenceOnIdleModel: Raises: TypeError: Input cannot be converted to byte array. - ValueError: Input cannot be deserialized to selected Noise-Model. - """ - + ValueError: Input cannot be deserialized to selected Noise-Model.""" def from_json(self, input: str): """ Convert the json representation of a device to a Noise-Model. @@ -940,17 +833,13 @@ class DecoherenceOnIdleModel: The deserialized device. Raises: - ValueError: Input cannot be deserialized to selected Noise-Model. - """ - + ValueError: Input cannot be deserialized to selected Noise-Model.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ - + str: The json schema serialized to json""" def add_damping_rate( self, qubits: List[int], rate: float ) -> DecoherenceOnIdleModel: @@ -962,9 +851,7 @@ class DecoherenceOnIdleModel: rate (float): The damping rate. Returns: - DecoherenceOnIdleModel: The model with the damping added. - """ - + DecoherenceOnIdleModel: The model with the damping added.""" def add_dephasing_rate( self, qubits: List[int], rate: float ) -> DecoherenceOnIdleModel: @@ -976,9 +863,7 @@ class DecoherenceOnIdleModel: rate (float): The dephasing rate. Returns: - DecoherenceOnIdleModel: The model with the dephasing added. - """ - + DecoherenceOnIdleModel: The model with the dephasing added.""" def add_depolarising_rate( self, qubits: List[int], rate: float ) -> DecoherenceOnIdleModel: @@ -990,9 +875,7 @@ class DecoherenceOnIdleModel: rate (float): The depolarising rate. Returns: - DecoherenceOnIdleModel: The model with the depolarising added. - """ - + DecoherenceOnIdleModel: The model with the depolarising added.""" def add_excitation_rate( self, qubits: List[int], rate: float ) -> DecoherenceOnIdleModel: @@ -1004,9 +887,7 @@ class DecoherenceOnIdleModel: rate (float): The excitation rate. Returns: - DecoherenceOnIdleModel: The model with the excitation added. - """ - + DecoherenceOnIdleModel: The model with the excitation added.""" def to_bincode(self) -> bytearray: """ Return the bincode representation of the Noise-Model using the bincode crate. @@ -1016,9 +897,7 @@ class DecoherenceOnIdleModel: Raises: ValueError: Cannot serialize Noise-Model to bytes. - """ - def to_json(self) -> str: """ Return the json representation of the Noise-Model. @@ -1028,21 +907,16 @@ class DecoherenceOnIdleModel: Raises: ValueError: Cannot serialize Noise-Model to json. - """ - def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ + str: The minimum version of the qoqo library to deserialize this object.""" diff --git a/qoqo/python/qoqo/operations.pyi b/qoqo/python/qoqo/operations.pyi index 18b7beb0d..547c54a88 100644 --- a/qoqo/python/qoqo/operations.pyi +++ b/qoqo/python/qoqo/operations.pyi @@ -51,31 +51,24 @@ Args: global_phase: Union[float, str], ): return - def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -92,9 +85,7 @@ Args: Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -106,9 +97,7 @@ Args: Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -116,15 +105,12 @@ Args: Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def qubit(self): """ Return the qubit the operation acts on Returns: - int - """ - + int""" def global_phase(self): """ Return the global phase :math:`g` of a unitary gate acting on one qubit @@ -140,7 +126,6 @@ Here global_phase is defined by Returns: CalculatorFloat """ - def alpha_r(self): """ Return the property alpha_r :math:`\alpha_r` of a unitary gate acting on one qubit @@ -156,7 +141,6 @@ Here alpha_r is defined by Returns: CalculatorFloat """ - def alpha_i(self): """ Return the property alpha_i :math:`\alpha_i` of a unitary gate acting on one qubit @@ -170,7 +154,6 @@ Return the property alpha_i :math:`\alpha_i` of a unitary gate acting on one qub Returns: CalculatorFloat """ - def beta_r(self): """ Return the property beta_r :math:`\beta_r` of a unitary gate acting on one qubit @@ -186,7 +169,6 @@ Here beta_r is defined by Returns: CalculatorFloat """ - def beta_i(self): """ Returns the property beta_i :math:`\beta_i` of a unitary gate acting on one qubit @@ -203,7 +185,6 @@ Here beta_i is defined by Returns: CalculatorFloat """ - def mul(self) -> Operation: """ Multiplies two compatible operations implementing OperateSingleQubitGate. @@ -226,9 +207,7 @@ Returns: multiplied = gate1.mul(gate2) print("Multiplied gate: ", multiplied) ``` - """ - def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -237,32 +216,25 @@ Returns: np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class RotateZ(Operation): """ @@ -286,36 +258,27 @@ Args: def __init__(self, qubit: int, theta: Union[float, str]): return - def theta(self): """ - Returns value of attribute theta - """ - + Returns value of attribute theta""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -332,9 +295,7 @@ Args: Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -346,9 +307,7 @@ Args: Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -356,15 +315,12 @@ Args: Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def qubit(self): """ Return the qubit the operation acts on Returns: - int - """ - + int""" def global_phase(self): """ Return the global phase :math:`g` of a unitary gate acting on one qubit @@ -380,7 +336,6 @@ Here global_phase is defined by Returns: CalculatorFloat """ - def alpha_r(self): """ Return the property alpha_r :math:`\alpha_r` of a unitary gate acting on one qubit @@ -396,7 +351,6 @@ Here alpha_r is defined by Returns: CalculatorFloat """ - def alpha_i(self): """ Return the property alpha_i :math:`\alpha_i` of a unitary gate acting on one qubit @@ -410,7 +364,6 @@ Return the property alpha_i :math:`\alpha_i` of a unitary gate acting on one qub Returns: CalculatorFloat """ - def beta_r(self): """ Return the property beta_r :math:`\beta_r` of a unitary gate acting on one qubit @@ -426,7 +379,6 @@ Here beta_r is defined by Returns: CalculatorFloat """ - def beta_i(self): """ Returns the property beta_i :math:`\beta_i` of a unitary gate acting on one qubit @@ -443,7 +395,6 @@ Here beta_i is defined by Returns: CalculatorFloat """ - def mul(self) -> Operation: """ Multiplies two compatible operations implementing OperateSingleQubitGate. @@ -466,9 +417,7 @@ Returns: multiplied = gate1.mul(gate2) print("Multiplied gate: ", multiplied) ``` - """ - def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -477,9 +426,7 @@ Returns: np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def powercf(self) -> RotateZ: """ Returns Rotated gate raised to power @@ -489,32 +436,25 @@ Returns: Returns: Self: gate raised to the power of `power` - """ - def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class RotateY(Operation): """ @@ -538,36 +478,27 @@ Args: def __init__(self, qubit: int, theta: Union[float, str]): return - def theta(self): """ - Returns value of attribute theta - """ - + Returns value of attribute theta""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -584,9 +515,7 @@ Args: Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -598,9 +527,7 @@ Args: Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -608,15 +535,12 @@ Args: Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def qubit(self): """ Return the qubit the operation acts on Returns: - int - """ - + int""" def global_phase(self): """ Return the global phase :math:`g` of a unitary gate acting on one qubit @@ -632,7 +556,6 @@ Here global_phase is defined by Returns: CalculatorFloat """ - def alpha_r(self): """ Return the property alpha_r :math:`\alpha_r` of a unitary gate acting on one qubit @@ -648,7 +571,6 @@ Here alpha_r is defined by Returns: CalculatorFloat """ - def alpha_i(self): """ Return the property alpha_i :math:`\alpha_i` of a unitary gate acting on one qubit @@ -662,7 +584,6 @@ Return the property alpha_i :math:`\alpha_i` of a unitary gate acting on one qub Returns: CalculatorFloat """ - def beta_r(self): """ Return the property beta_r :math:`\beta_r` of a unitary gate acting on one qubit @@ -678,7 +599,6 @@ Here beta_r is defined by Returns: CalculatorFloat """ - def beta_i(self): """ Returns the property beta_i :math:`\beta_i` of a unitary gate acting on one qubit @@ -695,7 +615,6 @@ Here beta_i is defined by Returns: CalculatorFloat """ - def mul(self) -> Operation: """ Multiplies two compatible operations implementing OperateSingleQubitGate. @@ -718,9 +637,7 @@ Returns: multiplied = gate1.mul(gate2) print("Multiplied gate: ", multiplied) ``` - """ - def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -729,9 +646,7 @@ Returns: np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def powercf(self) -> RotateY: """ Returns Rotated gate raised to power @@ -741,32 +656,25 @@ Returns: Returns: Self: gate raised to the power of `power` - """ - def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class RotateX(Operation): """ @@ -790,36 +698,27 @@ Args: def __init__(self, qubit: int, theta: Union[float, str]): return - def theta(self): """ - Returns value of attribute theta - """ - + Returns value of attribute theta""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -836,9 +735,7 @@ Args: Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -850,9 +747,7 @@ Args: Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -860,15 +755,12 @@ Args: Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def qubit(self): """ Return the qubit the operation acts on Returns: - int - """ - + int""" def global_phase(self): """ Return the global phase :math:`g` of a unitary gate acting on one qubit @@ -884,7 +776,6 @@ Here global_phase is defined by Returns: CalculatorFloat """ - def alpha_r(self): """ Return the property alpha_r :math:`\alpha_r` of a unitary gate acting on one qubit @@ -900,7 +791,6 @@ Here alpha_r is defined by Returns: CalculatorFloat """ - def alpha_i(self): """ Return the property alpha_i :math:`\alpha_i` of a unitary gate acting on one qubit @@ -914,7 +804,6 @@ Return the property alpha_i :math:`\alpha_i` of a unitary gate acting on one qub Returns: CalculatorFloat """ - def beta_r(self): """ Return the property beta_r :math:`\beta_r` of a unitary gate acting on one qubit @@ -930,7 +819,6 @@ Here beta_r is defined by Returns: CalculatorFloat """ - def beta_i(self): """ Returns the property beta_i :math:`\beta_i` of a unitary gate acting on one qubit @@ -947,7 +835,6 @@ Here beta_i is defined by Returns: CalculatorFloat """ - def mul(self) -> Operation: """ Multiplies two compatible operations implementing OperateSingleQubitGate. @@ -970,9 +857,7 @@ Returns: multiplied = gate1.mul(gate2) print("Multiplied gate: ", multiplied) ``` - """ - def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -981,9 +866,7 @@ Returns: np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def powercf(self) -> RotateX: """ Returns Rotated gate raised to power @@ -993,32 +876,25 @@ Returns: Returns: Self: gate raised to the power of `power` - """ - def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class RotateXY(Operation): """ @@ -1039,41 +915,30 @@ Args: def __init__(self, qubit: int, theta: Union[float, str], phi: Union[float, str]): return - def theta(self): """ - Returns value of attribute theta - """ - + Returns value of attribute theta""" def phi(self): """ - Returns value of attribute phi - """ - + Returns value of attribute phi""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -1090,9 +955,7 @@ Args: Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -1104,9 +967,7 @@ Args: Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -1114,15 +975,12 @@ Args: Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def qubit(self): """ Return the qubit the operation acts on Returns: - int - """ - + int""" def global_phase(self): """ Return the global phase :math:`g` of a unitary gate acting on one qubit @@ -1138,7 +996,6 @@ Here global_phase is defined by Returns: CalculatorFloat """ - def alpha_r(self): """ Return the property alpha_r :math:`\alpha_r` of a unitary gate acting on one qubit @@ -1154,7 +1011,6 @@ Here alpha_r is defined by Returns: CalculatorFloat """ - def alpha_i(self): """ Return the property alpha_i :math:`\alpha_i` of a unitary gate acting on one qubit @@ -1168,7 +1024,6 @@ Return the property alpha_i :math:`\alpha_i` of a unitary gate acting on one qub Returns: CalculatorFloat """ - def beta_r(self): """ Return the property beta_r :math:`\beta_r` of a unitary gate acting on one qubit @@ -1184,7 +1039,6 @@ Here beta_r is defined by Returns: CalculatorFloat """ - def beta_i(self): """ Returns the property beta_i :math:`\beta_i` of a unitary gate acting on one qubit @@ -1201,7 +1055,6 @@ Here beta_i is defined by Returns: CalculatorFloat """ - def mul(self) -> Operation: """ Multiplies two compatible operations implementing OperateSingleQubitGate. @@ -1224,9 +1077,7 @@ Returns: multiplied = gate1.mul(gate2) print("Multiplied gate: ", multiplied) ``` - """ - def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -1235,9 +1086,7 @@ Returns: np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def powercf(self) -> RotateXY: """ Returns Rotated gate raised to power @@ -1247,32 +1096,25 @@ Returns: Returns: Self: gate raised to the power of `power` - """ - def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class RotateAroundSphericalAxis(Operation): """ @@ -1311,46 +1153,33 @@ Args: spherical_phi: Union[float, str], ): return - def theta(self): """ - Returns value of attribute theta - """ - + Returns value of attribute theta""" def spherical_theta(self): """ - Returns value of attribute spherical_theta - """ - + Returns value of attribute spherical_theta""" def spherical_phi(self): """ - Returns value of attribute spherical_phi - """ - + Returns value of attribute spherical_phi""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -1367,9 +1196,7 @@ Args: Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -1381,9 +1208,7 @@ Args: Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -1391,15 +1216,12 @@ Args: Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def qubit(self): """ Return the qubit the operation acts on Returns: - int - """ - + int""" def global_phase(self): """ Return the global phase :math:`g` of a unitary gate acting on one qubit @@ -1415,7 +1237,6 @@ Here global_phase is defined by Returns: CalculatorFloat """ - def alpha_r(self): """ Return the property alpha_r :math:`\alpha_r` of a unitary gate acting on one qubit @@ -1431,7 +1252,6 @@ Here alpha_r is defined by Returns: CalculatorFloat """ - def alpha_i(self): """ Return the property alpha_i :math:`\alpha_i` of a unitary gate acting on one qubit @@ -1445,7 +1265,6 @@ Return the property alpha_i :math:`\alpha_i` of a unitary gate acting on one qub Returns: CalculatorFloat """ - def beta_r(self): """ Return the property beta_r :math:`\beta_r` of a unitary gate acting on one qubit @@ -1461,7 +1280,6 @@ Here beta_r is defined by Returns: CalculatorFloat """ - def beta_i(self): """ Returns the property beta_i :math:`\beta_i` of a unitary gate acting on one qubit @@ -1478,7 +1296,6 @@ Here beta_i is defined by Returns: CalculatorFloat """ - def mul(self) -> Operation: """ Multiplies two compatible operations implementing OperateSingleQubitGate. @@ -1501,9 +1318,7 @@ Returns: multiplied = gate1.mul(gate2) print("Multiplied gate: ", multiplied) ``` - """ - def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -1512,9 +1327,7 @@ Returns: np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def powercf(self) -> RotateAroundSphericalAxis: """ Returns Rotated gate raised to power @@ -1524,32 +1337,25 @@ Returns: Returns: Self: gate raised to the power of `power` - """ - def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class PauliZ(Operation): """ @@ -1568,31 +1374,24 @@ Args: def __init__(self, qubit: int): return - def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -1609,9 +1408,7 @@ Args: Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -1623,9 +1420,7 @@ Args: Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -1633,15 +1428,12 @@ Args: Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def qubit(self): """ Return the qubit the operation acts on Returns: - int - """ - + int""" def global_phase(self): """ Return the global phase :math:`g` of a unitary gate acting on one qubit @@ -1657,7 +1449,6 @@ Here global_phase is defined by Returns: CalculatorFloat """ - def alpha_r(self): """ Return the property alpha_r :math:`\alpha_r` of a unitary gate acting on one qubit @@ -1673,7 +1464,6 @@ Here alpha_r is defined by Returns: CalculatorFloat """ - def alpha_i(self): """ Return the property alpha_i :math:`\alpha_i` of a unitary gate acting on one qubit @@ -1687,7 +1477,6 @@ Return the property alpha_i :math:`\alpha_i` of a unitary gate acting on one qub Returns: CalculatorFloat """ - def beta_r(self): """ Return the property beta_r :math:`\beta_r` of a unitary gate acting on one qubit @@ -1703,7 +1492,6 @@ Here beta_r is defined by Returns: CalculatorFloat """ - def beta_i(self): """ Returns the property beta_i :math:`\beta_i` of a unitary gate acting on one qubit @@ -1720,7 +1508,6 @@ Here beta_i is defined by Returns: CalculatorFloat """ - def mul(self) -> Operation: """ Multiplies two compatible operations implementing OperateSingleQubitGate. @@ -1743,9 +1530,7 @@ Returns: multiplied = gate1.mul(gate2) print("Multiplied gate: ", multiplied) ``` - """ - def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -1754,32 +1539,25 @@ Returns: np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class PauliY(Operation): """ @@ -1798,31 +1576,24 @@ Args: def __init__(self, qubit: int): return - def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -1839,9 +1610,7 @@ Args: Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -1853,9 +1622,7 @@ Args: Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -1863,15 +1630,12 @@ Args: Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def qubit(self): """ Return the qubit the operation acts on Returns: - int - """ - + int""" def global_phase(self): """ Return the global phase :math:`g` of a unitary gate acting on one qubit @@ -1887,7 +1651,6 @@ Here global_phase is defined by Returns: CalculatorFloat """ - def alpha_r(self): """ Return the property alpha_r :math:`\alpha_r` of a unitary gate acting on one qubit @@ -1903,7 +1666,6 @@ Here alpha_r is defined by Returns: CalculatorFloat """ - def alpha_i(self): """ Return the property alpha_i :math:`\alpha_i` of a unitary gate acting on one qubit @@ -1917,7 +1679,6 @@ Return the property alpha_i :math:`\alpha_i` of a unitary gate acting on one qub Returns: CalculatorFloat """ - def beta_r(self): """ Return the property beta_r :math:`\beta_r` of a unitary gate acting on one qubit @@ -1933,7 +1694,6 @@ Here beta_r is defined by Returns: CalculatorFloat """ - def beta_i(self): """ Returns the property beta_i :math:`\beta_i` of a unitary gate acting on one qubit @@ -1950,7 +1710,6 @@ Here beta_i is defined by Returns: CalculatorFloat """ - def mul(self) -> Operation: """ Multiplies two compatible operations implementing OperateSingleQubitGate. @@ -1973,9 +1732,7 @@ Returns: multiplied = gate1.mul(gate2) print("Multiplied gate: ", multiplied) ``` - """ - def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -1984,32 +1741,25 @@ Returns: np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class PauliX(Operation): """ @@ -2028,31 +1778,24 @@ Args: def __init__(self, qubit: int): return - def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -2069,9 +1812,7 @@ Args: Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -2083,9 +1824,7 @@ Args: Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -2093,15 +1832,12 @@ Args: Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def qubit(self): """ Return the qubit the operation acts on Returns: - int - """ - + int""" def global_phase(self): """ Return the global phase :math:`g` of a unitary gate acting on one qubit @@ -2117,7 +1853,6 @@ Here global_phase is defined by Returns: CalculatorFloat """ - def alpha_r(self): """ Return the property alpha_r :math:`\alpha_r` of a unitary gate acting on one qubit @@ -2133,7 +1868,6 @@ Here alpha_r is defined by Returns: CalculatorFloat """ - def alpha_i(self): """ Return the property alpha_i :math:`\alpha_i` of a unitary gate acting on one qubit @@ -2147,7 +1881,6 @@ Return the property alpha_i :math:`\alpha_i` of a unitary gate acting on one qub Returns: CalculatorFloat """ - def beta_r(self): """ Return the property beta_r :math:`\beta_r` of a unitary gate acting on one qubit @@ -2163,7 +1896,6 @@ Here beta_r is defined by Returns: CalculatorFloat """ - def beta_i(self): """ Returns the property beta_i :math:`\beta_i` of a unitary gate acting on one qubit @@ -2180,7 +1912,6 @@ Here beta_i is defined by Returns: CalculatorFloat """ - def mul(self) -> Operation: """ Multiplies two compatible operations implementing OperateSingleQubitGate. @@ -2203,9 +1934,7 @@ Returns: multiplied = gate1.mul(gate2) print("Multiplied gate: ", multiplied) ``` - """ - def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -2214,32 +1943,25 @@ Returns: np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class SqrtPauliX(Operation): """ @@ -2258,31 +1980,24 @@ Args: def __init__(self, qubit: int): return - def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -2299,9 +2014,7 @@ Args: Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -2313,9 +2026,7 @@ Args: Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -2323,15 +2034,12 @@ Args: Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def qubit(self): """ Return the qubit the operation acts on Returns: - int - """ - + int""" def global_phase(self): """ Return the global phase :math:`g` of a unitary gate acting on one qubit @@ -2347,7 +2055,6 @@ Here global_phase is defined by Returns: CalculatorFloat """ - def alpha_r(self): """ Return the property alpha_r :math:`\alpha_r` of a unitary gate acting on one qubit @@ -2363,7 +2070,6 @@ Here alpha_r is defined by Returns: CalculatorFloat """ - def alpha_i(self): """ Return the property alpha_i :math:`\alpha_i` of a unitary gate acting on one qubit @@ -2377,7 +2083,6 @@ Return the property alpha_i :math:`\alpha_i` of a unitary gate acting on one qub Returns: CalculatorFloat """ - def beta_r(self): """ Return the property beta_r :math:`\beta_r` of a unitary gate acting on one qubit @@ -2393,7 +2098,6 @@ Here beta_r is defined by Returns: CalculatorFloat """ - def beta_i(self): """ Returns the property beta_i :math:`\beta_i` of a unitary gate acting on one qubit @@ -2410,7 +2114,6 @@ Here beta_i is defined by Returns: CalculatorFloat """ - def mul(self) -> Operation: """ Multiplies two compatible operations implementing OperateSingleQubitGate. @@ -2433,9 +2136,7 @@ Returns: multiplied = gate1.mul(gate2) print("Multiplied gate: ", multiplied) ``` - """ - def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -2444,32 +2145,25 @@ Returns: np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class InvSqrtPauliX(Operation): """ @@ -2488,31 +2182,24 @@ Args: def __init__(self, qubit: int): return - def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -2529,9 +2216,7 @@ Args: Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -2543,9 +2228,7 @@ Args: Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -2553,15 +2236,12 @@ Args: Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def qubit(self): """ Return the qubit the operation acts on Returns: - int - """ - + int""" def global_phase(self): """ Return the global phase :math:`g` of a unitary gate acting on one qubit @@ -2577,7 +2257,6 @@ Here global_phase is defined by Returns: CalculatorFloat """ - def alpha_r(self): """ Return the property alpha_r :math:`\alpha_r` of a unitary gate acting on one qubit @@ -2593,7 +2272,6 @@ Here alpha_r is defined by Returns: CalculatorFloat """ - def alpha_i(self): """ Return the property alpha_i :math:`\alpha_i` of a unitary gate acting on one qubit @@ -2607,7 +2285,6 @@ Return the property alpha_i :math:`\alpha_i` of a unitary gate acting on one qub Returns: CalculatorFloat """ - def beta_r(self): """ Return the property beta_r :math:`\beta_r` of a unitary gate acting on one qubit @@ -2623,7 +2300,6 @@ Here beta_r is defined by Returns: CalculatorFloat """ - def beta_i(self): """ Returns the property beta_i :math:`\beta_i` of a unitary gate acting on one qubit @@ -2640,7 +2316,6 @@ Here beta_i is defined by Returns: CalculatorFloat """ - def mul(self) -> Operation: """ Multiplies two compatible operations implementing OperateSingleQubitGate. @@ -2663,9 +2338,7 @@ Returns: multiplied = gate1.mul(gate2) print("Multiplied gate: ", multiplied) ``` - """ - def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -2674,32 +2347,25 @@ Returns: np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class Hadamard(Operation): """ @@ -2718,31 +2384,24 @@ Args: def __init__(self, qubit: int): return - def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -2759,9 +2418,7 @@ Args: Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -2773,9 +2430,7 @@ Args: Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -2783,15 +2438,12 @@ Args: Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def qubit(self): """ Return the qubit the operation acts on Returns: - int - """ - + int""" def global_phase(self): """ Return the global phase :math:`g` of a unitary gate acting on one qubit @@ -2807,7 +2459,6 @@ Here global_phase is defined by Returns: CalculatorFloat """ - def alpha_r(self): """ Return the property alpha_r :math:`\alpha_r` of a unitary gate acting on one qubit @@ -2823,7 +2474,6 @@ Here alpha_r is defined by Returns: CalculatorFloat """ - def alpha_i(self): """ Return the property alpha_i :math:`\alpha_i` of a unitary gate acting on one qubit @@ -2837,7 +2487,6 @@ Return the property alpha_i :math:`\alpha_i` of a unitary gate acting on one qub Returns: CalculatorFloat """ - def beta_r(self): """ Return the property beta_r :math:`\beta_r` of a unitary gate acting on one qubit @@ -2853,7 +2502,6 @@ Here beta_r is defined by Returns: CalculatorFloat """ - def beta_i(self): """ Returns the property beta_i :math:`\beta_i` of a unitary gate acting on one qubit @@ -2870,7 +2518,6 @@ Here beta_i is defined by Returns: CalculatorFloat """ - def mul(self) -> Operation: """ Multiplies two compatible operations implementing OperateSingleQubitGate. @@ -2893,9 +2540,7 @@ Returns: multiplied = gate1.mul(gate2) print("Multiplied gate: ", multiplied) ``` - """ - def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -2904,32 +2549,25 @@ Returns: np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class TGate(Operation): """ @@ -2948,31 +2586,24 @@ Args: def __init__(self, qubit: int): return - def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -2989,9 +2620,7 @@ Args: Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -3003,9 +2632,7 @@ Args: Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -3013,15 +2640,12 @@ Args: Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def qubit(self): """ Return the qubit the operation acts on Returns: - int - """ - + int""" def global_phase(self): """ Return the global phase :math:`g` of a unitary gate acting on one qubit @@ -3037,7 +2661,6 @@ Here global_phase is defined by Returns: CalculatorFloat """ - def alpha_r(self): """ Return the property alpha_r :math:`\alpha_r` of a unitary gate acting on one qubit @@ -3053,7 +2676,6 @@ Here alpha_r is defined by Returns: CalculatorFloat """ - def alpha_i(self): """ Return the property alpha_i :math:`\alpha_i` of a unitary gate acting on one qubit @@ -3067,7 +2689,6 @@ Return the property alpha_i :math:`\alpha_i` of a unitary gate acting on one qub Returns: CalculatorFloat """ - def beta_r(self): """ Return the property beta_r :math:`\beta_r` of a unitary gate acting on one qubit @@ -3083,7 +2704,6 @@ Here beta_r is defined by Returns: CalculatorFloat """ - def beta_i(self): """ Returns the property beta_i :math:`\beta_i` of a unitary gate acting on one qubit @@ -3100,7 +2720,6 @@ Here beta_i is defined by Returns: CalculatorFloat """ - def mul(self) -> Operation: """ Multiplies two compatible operations implementing OperateSingleQubitGate. @@ -3123,9 +2742,7 @@ Returns: multiplied = gate1.mul(gate2) print("Multiplied gate: ", multiplied) ``` - """ - def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -3134,32 +2751,25 @@ Returns: np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class SGate(Operation): """ @@ -3178,31 +2788,24 @@ Args: def __init__(self, qubit: int): return - def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -3219,9 +2822,7 @@ Args: Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -3233,9 +2834,7 @@ Args: Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -3243,15 +2842,12 @@ Args: Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def qubit(self): """ Return the qubit the operation acts on Returns: - int - """ - + int""" def global_phase(self): """ Return the global phase :math:`g` of a unitary gate acting on one qubit @@ -3267,7 +2863,6 @@ Here global_phase is defined by Returns: CalculatorFloat """ - def alpha_r(self): """ Return the property alpha_r :math:`\alpha_r` of a unitary gate acting on one qubit @@ -3283,7 +2878,6 @@ Here alpha_r is defined by Returns: CalculatorFloat """ - def alpha_i(self): """ Return the property alpha_i :math:`\alpha_i` of a unitary gate acting on one qubit @@ -3297,7 +2891,6 @@ Return the property alpha_i :math:`\alpha_i` of a unitary gate acting on one qub Returns: CalculatorFloat """ - def beta_r(self): """ Return the property beta_r :math:`\beta_r` of a unitary gate acting on one qubit @@ -3313,7 +2906,6 @@ Here beta_r is defined by Returns: CalculatorFloat """ - def beta_i(self): """ Returns the property beta_i :math:`\beta_i` of a unitary gate acting on one qubit @@ -3330,7 +2922,6 @@ Here beta_i is defined by Returns: CalculatorFloat """ - def mul(self) -> Operation: """ Multiplies two compatible operations implementing OperateSingleQubitGate. @@ -3353,9 +2944,7 @@ Returns: multiplied = gate1.mul(gate2) print("Multiplied gate: ", multiplied) ``` - """ - def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -3364,32 +2953,25 @@ Returns: np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class DefinitionUsize(Operation): """ @@ -3398,46 +2980,34 @@ class DefinitionUsize(Operation): Args: name (string): The name of the register that is defined. length (int): The length of the register that is defined, usually the number of qubits to be measured. - is_output (bool): True/False if the variable is an output to the program. - """ + is_output (bool): True/False if the variable is an output to the program.""" def __init__(self, name: str, length: int, is_output: bool): return - def length(self): """ - Get value of struct field length - """ - + Get value of struct field length""" def is_output(self): """ - Get value of struct field is_output - """ - + Get value of struct field is_output""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -3454,9 +3024,7 @@ class DefinitionUsize(Operation): Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -3468,9 +3036,7 @@ class DefinitionUsize(Operation): Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -3478,38 +3044,30 @@ class DefinitionUsize(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def name(self): """ Return name of definition operation. Returns: - str - """ - + str""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class DefinitionBit(Operation): """ @@ -3518,46 +3076,34 @@ class DefinitionBit(Operation): Args: name (string): The name of the register that is defined. length (int): The length of the register that is defined, usually the number of qubits to be measured. - is_output (bool): True/False if the variable is an output to the program. - """ + is_output (bool): True/False if the variable is an output to the program.""" def __init__(self, name: str, length: int, is_output: bool): return - def length(self): """ - Get value of struct field length - """ - + Get value of struct field length""" def is_output(self): """ - Get value of struct field is_output - """ - + Get value of struct field is_output""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -3574,9 +3120,7 @@ class DefinitionBit(Operation): Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -3588,9 +3132,7 @@ class DefinitionBit(Operation): Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -3598,38 +3140,30 @@ class DefinitionBit(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def name(self): """ Return name of definition operation. Returns: - str - """ - + str""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class DefinitionFloat(Operation): """ @@ -3638,46 +3172,34 @@ class DefinitionFloat(Operation): Args: name (string): The name of the register that is defined. length (int): The length of the register that is defined, usually the number of qubits to be measured. - is_output (bool): True/False if the variable is an output to the program. - """ + is_output (bool): True/False if the variable is an output to the program.""" def __init__(self, name: str, length: int, is_output: bool): return - def length(self): """ - Get value of struct field length - """ - + Get value of struct field length""" def is_output(self): """ - Get value of struct field is_output - """ - + Get value of struct field is_output""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -3694,9 +3216,7 @@ class DefinitionFloat(Operation): Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -3708,9 +3228,7 @@ class DefinitionFloat(Operation): Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -3718,38 +3236,30 @@ class DefinitionFloat(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def name(self): """ Return name of definition operation. Returns: - str - """ - + str""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class DefinitionComplex(Operation): """ @@ -3758,46 +3268,34 @@ class DefinitionComplex(Operation): Args: name (string): The name of the register that is defined. length (int): The length of the register that is defined, usually the number of qubits to be measured. - is_output (bool): True/False if the variable is an output to the program. - """ + is_output (bool): True/False if the variable is an output to the program.""" def __init__(self, name: str, length: int, is_output: bool): return - def length(self): """ - Get value of struct field length - """ - + Get value of struct field length""" def is_output(self): """ - Get value of struct field is_output - """ - + Get value of struct field is_output""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -3814,9 +3312,7 @@ class DefinitionComplex(Operation): Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -3828,9 +3324,7 @@ class DefinitionComplex(Operation): Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -3838,38 +3332,30 @@ class DefinitionComplex(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def name(self): """ Return name of definition operation. Returns: - str - """ - + str""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - - def json_schema(self) -> str: + str: The minimum version of the qoqo library to deserialize this object.""" + def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class InputSymbolic(Operation): """ @@ -3877,41 +3363,31 @@ class InputSymbolic(Operation): Args: name (string): The name of the register that is defined. - input (float): The float by which to replace the quantities marked as "name". - """ + input (float): The float by which to replace the quantities marked as "name".""" def __init__(self, name: str, input: float): return - def input(self): """ - Get value of struct field input - """ - + Get value of struct field input""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -3928,9 +3404,7 @@ class InputSymbolic(Operation): Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -3942,9 +3416,7 @@ class InputSymbolic(Operation): Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -3952,38 +3424,30 @@ class InputSymbolic(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def name(self): """ Return name of definition operation. Returns: - str - """ - + str""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class MeasureQubit(Operation): """ @@ -3996,46 +3460,34 @@ class MeasureQubit(Operation): qubit (int): The measured qubit. readout (string): The classical register for the readout. readout_index (int): The index in the readout the result is saved to. - """ def __init__(self, qubit: int, readout: str, readout_index: int): return - def readout(self): """ - Get value of struct field readout - """ - + Get value of struct field readout""" def readout_index(self): """ - Get value of struct field readout_index - """ - + Get value of struct field readout_index""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -4052,9 +3504,7 @@ class MeasureQubit(Operation): Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -4066,9 +3516,7 @@ class MeasureQubit(Operation): Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -4076,38 +3524,30 @@ class MeasureQubit(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def qubit(self): """ Return the qubit the operation acts on Returns: - int - """ - + int""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class PragmaGetStateVector(Operation): """ @@ -4116,46 +3556,34 @@ class PragmaGetStateVector(Operation): Args: readout (string): The name of the classical readout register. circuit (Optional[Circuit]): The measurement preparation Circuit, applied on a copy of the register before measurement. - """ def __init__(self, readout: str, circuit: Optional[Circuit]): return - def readout(self): """ - Get value of struct field readout - """ - + Get value of struct field readout""" def circuit(self): """ - Get value of struct field circuit - """ - + Get value of struct field circuit""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -4172,9 +3600,7 @@ class PragmaGetStateVector(Operation): Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -4186,9 +3612,7 @@ class PragmaGetStateVector(Operation): Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -4196,30 +3620,24 @@ class PragmaGetStateVector(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class PragmaGetDensityMatrix(Operation): """ @@ -4228,46 +3646,34 @@ class PragmaGetDensityMatrix(Operation): Args: readout (string): The name of the classical readout register. circuit (Optional[Circuit]): The measurement preparation Circuit, applied on a copy of the register before measurement. - """ def __init__(self, readout: str, circuit: Optional[Circuit]): return - def readout(self): """ - Get value of struct field readout - """ - + Get value of struct field readout""" def circuit(self): """ - Get value of struct field circuit - """ - + Get value of struct field circuit""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -4284,9 +3690,7 @@ class PragmaGetDensityMatrix(Operation): Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -4298,9 +3702,7 @@ class PragmaGetDensityMatrix(Operation): Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -4308,30 +3710,24 @@ class PragmaGetDensityMatrix(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class PragmaGetOccupationProbability(Operation): """ @@ -4343,46 +3739,34 @@ class PragmaGetOccupationProbability(Operation): Args: readout (string): The name of the classical readout register. circuit (Optional[Circuit]): The Circuit used to rotate the qureg. - """ def __init__(self, readout: str, circuit: Optional[Circuit]): return - def readout(self): """ - Get value of struct field readout - """ - + Get value of struct field readout""" def circuit(self): """ - Get value of struct field circuit - """ - + Get value of struct field circuit""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -4399,9 +3783,7 @@ class PragmaGetOccupationProbability(Operation): Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -4413,9 +3795,7 @@ class PragmaGetOccupationProbability(Operation): Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -4423,30 +3803,24 @@ class PragmaGetOccupationProbability(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class PragmaGetPauliProduct(Operation): """ @@ -4461,51 +3835,37 @@ class PragmaGetPauliProduct(Operation): {qubit: pauli}. Allowed values to be provided for 'pauli' are: 0 = identity, 1 = PauliX, 2 = PauliY, 3 = PauliZ. readout (string): The name of the classical readout register. circuit (Circuit): The measurement preparation Circuit, applied on a copy of the register before measurement. - """ def __init__(self, qubit_paulis: Dict[int, int], readout: str, circuit: Circuit): return - def qubit_paulis(self): """ - Get value of struct field qubit_paulis - """ - + Get value of struct field qubit_paulis""" def readout(self): """ - Get value of struct field readout - """ - + Get value of struct field readout""" def circuit(self): """ - Get value of struct field circuit - """ - + Get value of struct field circuit""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -4522,9 +3882,7 @@ class PragmaGetPauliProduct(Operation): Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -4536,9 +3894,7 @@ class PragmaGetPauliProduct(Operation): Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -4546,30 +3902,24 @@ class PragmaGetPauliProduct(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class PragmaRepeatedMeasurement(Operation): """ @@ -4579,53 +3929,39 @@ class PragmaRepeatedMeasurement(Operation): readout (string): The name of the classical readout register. qubit_mapping (Dict[int, int]): The mapping of qubits to indices in readout register. number_measurements (int): The number of times to repeat the measurement. - """ def __init__( self, readout: str, qubit_mapping: Dict[int, int], number_measurements: int ): return - def readout(self): """ - Get value of struct field readout - """ - + Get value of struct field readout""" def number_measurements(self): """ - Get value of struct field number_measurements - """ - + Get value of struct field number_measurements""" def qubit_mapping(self): """ - Get value of struct field qubit_mapping - """ - + Get value of struct field qubit_mapping""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -4642,9 +3978,7 @@ class PragmaRepeatedMeasurement(Operation): Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -4656,9 +3990,7 @@ class PragmaRepeatedMeasurement(Operation): Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -4666,30 +3998,24 @@ class PragmaRepeatedMeasurement(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class PragmaSetNumberOfMeasurements(Operation): """ @@ -4701,46 +4027,34 @@ class PragmaSetNumberOfMeasurements(Operation): Args: number_measurements (uint): The number of measurements. - readout (string): The register for the readout. - """ + readout (string): The register for the readout.""" def __init__(self, number_measurements: int, readout: str): return - def number_measurements(self): """ - Get value of struct field number_measurements - """ - + Get value of struct field number_measurements""" def readout(self): """ - Get value of struct field readout - """ - + Get value of struct field readout""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -4757,9 +4071,7 @@ class PragmaSetNumberOfMeasurements(Operation): Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -4771,9 +4083,7 @@ class PragmaSetNumberOfMeasurements(Operation): Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -4781,30 +4091,24 @@ class PragmaSetNumberOfMeasurements(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class PragmaSetStateVector(Operation): """ @@ -4817,28 +4121,22 @@ class PragmaSetStateVector(Operation): vector = np.array([0, 1 / np.sqrt(2), -1 / np.sqrt(2), 0]) Args: - internal (PragmaSetStateVector): The statevector that is initialized. - """ + internal (PragmaSetStateVector): The statevector that is initialized.""" def __init__(self, internal: Operation): return - def statevector(self) -> numpy.ndarray: """ Return the statevector. Returns: - np.ndarray: The statevector representing the qubit register. - """ - + np.ndarray: The statevector representing the qubit register.""" def involved_qubits(self) -> Set[int]: """ List all involved qubits (here, all). Returns: - Set[int]: The involved qubits of the PRAGMA operation. - """ - + Set[int]: The involved qubits of the PRAGMA operation.""" def tags(self) -> List[str]: """ Return tags classifying the type of the operation. @@ -4846,17 +4144,13 @@ class PragmaSetStateVector(Operation): Used for the type based dispatch in ffi interfaces. Returns: - List[str]: The tags of the operation. - """ - + List[str]: The tags of the operation.""" def hqslang(self) -> str: """ Return hqslang name of the operation. Returns: - str: The hqslang name of the operation. - """ - + str: The hqslang name of the operation.""" def is_parametrized(self) -> bool: """ Return true when the operation has symbolic parameters. @@ -4864,7 +4158,6 @@ class PragmaSetStateVector(Operation): Returns: bool: True if the operation contains symbolic parameters, False if it does not. """ - def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> PragmaSetStateVector: @@ -4878,9 +4171,7 @@ class PragmaSetStateVector(Operation): self: The PRAGMA operation operation with the parameters substituted. Raises: - RuntimeError: The parameter substitution failed. - """ - + RuntimeError: The parameter substitution failed.""" def remap_qubits(self, mapping: Dict[int, int]) -> PragmaSetStateVector: """ Remap qubits in a clone of the PRAGMA operation. @@ -4892,32 +4183,25 @@ class PragmaSetStateVector(Operation): self: The PRAGMA operation with the qubits remapped. Raises: - RuntimeError: The qubit remapping failed. - """ - + RuntimeError: The qubit remapping failed.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ - + str: The json schema serialized to json""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ + str: The minimum version of the qoqo library to deserialize this object.""" class PragmaSetDensityMatrix(Operation): """ @@ -4928,12 +4212,10 @@ class PragmaSetDensityMatrix(Operation): Args: density_matrix (a 2d array of complex numbers): The density matrix that is initialized. - """ def __init__(self, density_matrix): return - def density_matrix(self) -> numpy.ndarray: """ Return the set density matrix. @@ -4941,15 +4223,12 @@ class PragmaSetDensityMatrix(Operation): Returns: np.ndarray: The density matrix (2d array) representing the qubit register. """ - def involved_qubits(self) -> Set[int]: """ List all involved qubits (here, all). Returns: - Set[int]: The involved qubits of the PRAGMA operation. - """ - + Set[int]: The involved qubits of the PRAGMA operation.""" def tags(self) -> List[str]: """ Return tags classifying the type of the operation. @@ -4957,17 +4236,13 @@ class PragmaSetDensityMatrix(Operation): Used for type based dispatch in ffi interfaces. Returns: - List[str]: The tags of the Operation. - """ - + List[str]: The tags of the Operation.""" def hqslang(self) -> str: """ Return hqslang name of the operation. Returns: - str: The hqslang name of the operation. - """ - + str: The hqslang name of the operation.""" def is_parametrized(self) -> bool: """ Return true when the operation has symbolic parameters. @@ -4975,7 +4250,6 @@ class PragmaSetDensityMatrix(Operation): Returns: bool: True if the operation contains symbolic parameters, False if it does not. """ - def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> PragmaSetDensityMatrix: @@ -4989,9 +4263,7 @@ class PragmaSetDensityMatrix(Operation): self: The PRAGMA operation with the parameters substituted. Raises: - RuntimeError: The parameter substitution failed. - """ - + RuntimeError: The parameter substitution failed.""" def remap_qubits(self, mapping: Dict[int, int]) -> PragmaSetDensityMatrix: """ Remap qubits in a clone of the PRAGMA operation. @@ -5003,32 +4275,25 @@ class PragmaSetDensityMatrix(Operation): self: The PRAGMA operation with the qubits remapped. Raises: - RuntimeError: The qubit remapping failed. - """ - + RuntimeError: The qubit remapping failed.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ - + str: The json schema serialized to json""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ + str: The minimum version of the qoqo library to deserialize this object.""" class PragmaRepeatGate(Operation): """ @@ -5043,36 +4308,27 @@ class PragmaRepeatGate(Operation): def __init__(self, repetition_coefficient: int): return - def repetition_coefficient(self): """ - Get value of struct field repetition_coefficient - """ - + Get value of struct field repetition_coefficient""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -5089,9 +4345,7 @@ class PragmaRepeatGate(Operation): Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -5103,9 +4357,7 @@ class PragmaRepeatGate(Operation): Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -5113,30 +4365,24 @@ class PragmaRepeatGate(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class PragmaOverrotation(Operation): """ @@ -5154,51 +4400,37 @@ class PragmaOverrotation(Operation): qubits (List[int]): The qubits of the gate to overrotate. amplitude (float): The amplitude the random number is multiplied by. variance (float): The standard deviation of the normal distribution the random number is drawn from. - """ def __init__(self, gate: str, qubits: List[int], amplitude: float, variance: float): return - def gate_hqslang(self): """ - Get value of struct field gate_hqslang - """ - + Get value of struct field gate_hqslang""" def amplitude(self): """ - Get value of struct field amplitude - """ - + Get value of struct field amplitude""" def variance(self): """ - Get value of struct field variance - """ - + Get value of struct field variance""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -5215,9 +4447,7 @@ class PragmaOverrotation(Operation): Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -5229,9 +4459,7 @@ class PragmaOverrotation(Operation): Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -5239,38 +4467,30 @@ class PragmaOverrotation(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def qubits(self): """ Return list of qubits of the multi qubit operation in order of descending significance Returns: - List[int] - """ - + List[int]""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class PragmaBoostNoise(Operation): """ @@ -5282,36 +4502,27 @@ class PragmaBoostNoise(Operation): def __init__(self, noise_coefficient: Union[float, str]): return - def noise_coefficient(self): """ - Returns value of attribute noise_coefficient - """ - + Returns value of attribute noise_coefficient""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -5328,9 +4539,7 @@ class PragmaBoostNoise(Operation): Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -5342,9 +4551,7 @@ class PragmaBoostNoise(Operation): Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -5352,30 +4559,24 @@ class PragmaBoostNoise(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class PragmaStopParallelBlock(Operation): """ @@ -5388,36 +4589,27 @@ class PragmaStopParallelBlock(Operation): def __init__(self, qubits: List[int], execution_time: Union[float, str]): return - def execution_time(self): """ - Returns value of attribute execution_time - """ - + Returns value of attribute execution_time""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -5434,9 +4626,7 @@ class PragmaStopParallelBlock(Operation): Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -5448,9 +4638,7 @@ class PragmaStopParallelBlock(Operation): Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -5458,38 +4646,30 @@ class PragmaStopParallelBlock(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def qubits(self): """ Return list of qubits of the multi qubit operation in order of descending significance Returns: - List[int] - """ - + List[int]""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class PragmaGlobalPhase(Operation): """ @@ -5499,41 +4679,31 @@ class PragmaGlobalPhase(Operation): i.e. it provides information that there is a global phase to be considered. Args: - phase (CalculatorFloat): The picked up global phase. - """ + phase (CalculatorFloat): The picked up global phase.""" def __init__(self, phase: Union[float, str]): return - def phase(self): """ - Returns value of attribute phase - """ - + Returns value of attribute phase""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -5550,9 +4720,7 @@ class PragmaGlobalPhase(Operation): Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -5564,9 +4732,7 @@ class PragmaGlobalPhase(Operation): Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -5574,30 +4740,24 @@ class PragmaGlobalPhase(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class PragmaSleep(Operation): """ @@ -5613,36 +4773,27 @@ class PragmaSleep(Operation): def __init__(self, qubits: List[int], sleep_time: Union[float, str]): return - def sleep_time(self): """ - Returns value of attribute sleep_time - """ - + Returns value of attribute sleep_time""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -5659,9 +4810,7 @@ class PragmaSleep(Operation): Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -5673,9 +4822,7 @@ class PragmaSleep(Operation): Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -5683,74 +4830,58 @@ class PragmaSleep(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def qubits(self): """ Return list of qubits of the multi qubit operation in order of descending significance Returns: - List[int] - """ - + List[int]""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class PragmaActiveReset(Operation): """ This PRAGMA operation resets the chosen qubit to the zero state. Args: - qubit (int): The qubit to be reset. - """ + qubit (int): The qubit to be reset.""" def __init__(self, qubit: int): return - def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -5767,9 +4898,7 @@ class PragmaActiveReset(Operation): Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -5781,9 +4910,7 @@ class PragmaActiveReset(Operation): Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -5791,38 +4918,30 @@ class PragmaActiveReset(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def qubit(self): """ Return the qubit the operation acts on Returns: - int - """ - + int""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class PragmaStartDecompositionBlock(Operation): """ @@ -5835,36 +4954,27 @@ class PragmaStartDecompositionBlock(Operation): def __init__(self, qubits: List[int], reordering_dictionary: Dict[int, int]): return - def reordering_dictionary(self): """ - Get value of struct field reordering_dictionary - """ - + Get value of struct field reordering_dictionary""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -5881,9 +4991,7 @@ class PragmaStartDecompositionBlock(Operation): Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -5895,9 +5003,7 @@ class PragmaStartDecompositionBlock(Operation): Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -5905,74 +5011,58 @@ class PragmaStartDecompositionBlock(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def qubits(self): """ Return list of qubits of the multi qubit operation in order of descending significance Returns: - List[int] - """ - + List[int]""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class PragmaStopDecompositionBlock(Operation): """ This PRAGMA operation signals the STOP of a decomposition block. Args: - qubits (List[int]): The qubits involved in the decomposition block. - """ + qubits (List[int]): The qubits involved in the decomposition block.""" def __init__(self, qubits: List[int]): return - def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -5989,9 +5079,7 @@ class PragmaStopDecompositionBlock(Operation): Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -6003,9 +5091,7 @@ class PragmaStopDecompositionBlock(Operation): Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -6013,38 +5099,30 @@ class PragmaStopDecompositionBlock(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def qubits(self): """ Return list of qubits of the multi qubit operation in order of descending significance Returns: - List[int] - """ - + List[int]""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class PragmaDamping(Operation): """ @@ -6062,48 +5140,36 @@ class PragmaDamping(Operation): Args: qubit (int): The qubit on which to apply the damping. gate_time (CalculatorFloat): The time (in seconds) the gate takes to be applied to the qubit on the (simulated) hardware - rate (CalculatorFloat): The error rate of the damping (in 1/second). - """ + rate (CalculatorFloat): The error rate of the damping (in 1/second).""" def __init__( self, qubit: int, gate_time: Union[float, str], rate: Union[float, str] ): return - def gate_time(self): """ - Returns value of attribute gate_time - """ - + Returns value of attribute gate_time""" def rate(self): """ - Returns value of attribute rate - """ - + Returns value of attribute rate""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -6120,9 +5186,7 @@ class PragmaDamping(Operation): Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -6134,9 +5198,7 @@ class PragmaDamping(Operation): Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -6144,24 +5206,19 @@ class PragmaDamping(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def qubit(self): """ Return the qubit the operation acts on Returns: - int - """ - + int""" def superoperator(self) -> numpy.ndarray: """ Return the superoperator defining the evolution of the density matrix under the noise gate Returns: np.ndarray: superoperator of gate. - """ - def powercf(self): """ Return the power of the noise gate @@ -6171,40 +5228,31 @@ class PragmaDamping(Operation): Returns: Self - """ - def probability(self): """ Returns the probability associated with the noise operation Returns: - CalculatorFloat - """ - + CalculatorFloat""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class PragmaDepolarising(Operation): """ @@ -6215,48 +5263,36 @@ class PragmaDepolarising(Operation): Args: qubit (int): The qubit on which to apply the depolarising. gate_time (CalculatorFloat): The time (in seconds) the gate takes to be applied to the qubit on the (simulated) hardware - rate (CalculatorFloat): The error rate of the depolarisation (in 1/second). - """ + rate (CalculatorFloat): The error rate of the depolarisation (in 1/second).""" def __init__( self, qubit: int, gate_time: Union[float, str], rate: Union[float, str] ): return - def gate_time(self): """ - Returns value of attribute gate_time - """ - + Returns value of attribute gate_time""" def rate(self): """ - Returns value of attribute rate - """ - + Returns value of attribute rate""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -6273,9 +5309,7 @@ class PragmaDepolarising(Operation): Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -6287,9 +5321,7 @@ class PragmaDepolarising(Operation): Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -6297,24 +5329,19 @@ class PragmaDepolarising(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def qubit(self): """ Return the qubit the operation acts on Returns: - int - """ - + int""" def superoperator(self) -> numpy.ndarray: """ Return the superoperator defining the evolution of the density matrix under the noise gate Returns: np.ndarray: superoperator of gate. - """ - def powercf(self): """ Return the power of the noise gate @@ -6324,40 +5351,31 @@ class PragmaDepolarising(Operation): Returns: Self - """ - def probability(self): """ Returns the probability associated with the noise operation Returns: - CalculatorFloat - """ - + CalculatorFloat""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class PragmaDephasing(Operation): """ @@ -6368,48 +5386,36 @@ class PragmaDephasing(Operation): Args: qubit (int): The qubit on which to apply the dephasing. gate_time (CalculatorFloat): The time (in seconds) the gate takes to be applied to the qubit on the (simulated) hardware - rate (CalculatorFloat): The error rate of the dephasing (in 1/second). - """ + rate (CalculatorFloat): The error rate of the dephasing (in 1/second).""" def __init__( self, qubit: int, gate_time: Union[float, str], rate: Union[float, str] ): return - def gate_time(self): """ - Returns value of attribute gate_time - """ - + Returns value of attribute gate_time""" def rate(self): """ - Returns value of attribute rate - """ - + Returns value of attribute rate""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -6426,9 +5432,7 @@ class PragmaDephasing(Operation): Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -6440,9 +5444,7 @@ class PragmaDephasing(Operation): Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -6450,24 +5452,19 @@ class PragmaDephasing(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def qubit(self): """ Return the qubit the operation acts on Returns: - int - """ - + int""" def superoperator(self) -> numpy.ndarray: """ Return the superoperator defining the evolution of the density matrix under the noise gate Returns: np.ndarray: superoperator of gate. - """ - def powercf(self): """ Return the power of the noise gate @@ -6477,40 +5474,31 @@ class PragmaDephasing(Operation): Returns: Self - """ - def probability(self): """ Returns the probability associated with the noise operation Returns: - CalculatorFloat - """ - + CalculatorFloat""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class PragmaRandomNoise(Operation): """ @@ -6533,46 +5521,33 @@ class PragmaRandomNoise(Operation): dephasing_rate: Union[float, str], ): return - def gate_time(self): """ - Returns value of attribute gate_time - """ - + Returns value of attribute gate_time""" def depolarising_rate(self): """ - Returns value of attribute depolarising_rate - """ - + Returns value of attribute depolarising_rate""" def dephasing_rate(self): """ - Returns value of attribute dephasing_rate - """ - + Returns value of attribute dephasing_rate""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -6589,9 +5564,7 @@ class PragmaRandomNoise(Operation): Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -6603,9 +5576,7 @@ class PragmaRandomNoise(Operation): Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -6613,24 +5584,19 @@ class PragmaRandomNoise(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def qubit(self): """ Return the qubit the operation acts on Returns: - int - """ - + int""" def superoperator(self) -> numpy.ndarray: """ Return the superoperator defining the evolution of the density matrix under the noise gate Returns: np.ndarray: superoperator of gate. - """ - def powercf(self): """ Return the power of the noise gate @@ -6640,40 +5606,31 @@ class PragmaRandomNoise(Operation): Returns: Self - """ - def probability(self): """ Returns the probability associated with the noise operation Returns: - CalculatorFloat - """ - + CalculatorFloat""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class PragmaGeneralNoise(Operation): """ @@ -6685,52 +5642,40 @@ class PragmaGeneralNoise(Operation): qubit (int): The qubit the PRAGMA operation is applied to. gate_time (CalculatorFloat): The time (in seconds) the gate takes to be applied to the qubit on the (simulated) hardware Rates: The rates representing the general noise matrix M (a 3x3 matrix as 2d array). - """ def __init__(self, qubit: int, gate_time: Union[float, str], Rates): return - def qubit(self) -> int: """ Return the qubit on which the PRAGMA operation is applied. Returns: - int: The qubit of the PRAGMA operation. - """ - + int: The qubit of the PRAGMA operation.""" def gate_time(self) -> Union[float, str]: """ Return the `gate_time` of the PRAGMA operation. Returns: - CalculatorFloat: The gate time of the PRAGMA operation. - """ - + CalculatorFloat: The gate time of the PRAGMA operation.""" def rates(self) -> numpy.ndarray: """ Return the rates of the PRAGMA operation. Returns: - np.ndarray: The rates of the PRAGMA operation. - """ - + np.ndarray: The rates of the PRAGMA operation.""" def superoperator(self) -> numpy.ndarray: """ Return the superoperator of the PRAGMA operation. Returns: - np.ndarray: The matrix form of the superoperator of the PRAGMA operation. - """ - + np.ndarray: The matrix form of the superoperator of the PRAGMA operation.""" def involved_qubits(self) -> Set[int]: """ List all involved qubits. Returns: - Set[int]: The involved qubits of the PRAGMA operation. - """ - + Set[int]: The involved qubits of the PRAGMA operation.""" def tags(self) -> List[str]: """ Return tags classifying the type of the operation. @@ -6738,17 +5683,13 @@ class PragmaGeneralNoise(Operation): Used for the type based dispatch in ffi interfaces. Returns: - List[str]: The tags of the Operation. - """ - + List[str]: The tags of the Operation.""" def hqslang(self) -> str: """ Return hqslang name of the operation. Returns: - str: The hqslang name of the operation. - """ - + str: The hqslang name of the operation.""" def is_parametrized(self) -> bool: """ Return true when the operation has symbolic parameters. @@ -6756,7 +5697,6 @@ class PragmaGeneralNoise(Operation): Returns: bool: True if the operation contains symbolic parameters, False if it does not. """ - def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> PragmaGeneralNoise: @@ -6770,9 +5710,7 @@ class PragmaGeneralNoise(Operation): self: The PRAGMA operation with the parameters substituted. Raises: - RuntimeError: The parameter substitution failed. - """ - + RuntimeError: The parameter substitution failed.""" def remap_qubits(self, mapping: Dict[int, int]) -> PragmaGeneralNoise: """ Remap qubits in a clone of the PRAGMA operation. @@ -6784,32 +5722,25 @@ class PragmaGeneralNoise(Operation): self: The PRAGMA operation with the qubits remapped. Raises: - RuntimeError: The qubit remapping failed. - """ - + RuntimeError: The qubit remapping failed.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ - + str: The json schema serialized to json""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ + str: The minimum version of the qoqo library to deserialize this object.""" class PragmaConditional(Operation): """ @@ -6820,51 +5751,37 @@ class PragmaConditional(Operation): Args: condition_register (str): The name of the bit register containting the condition bool value. condition_index (int): - The index in the bit register containting the condition bool value. - circuit (Circuit): - The circuit executed if the condition is met. - """ + circuit (Circuit): - The circuit executed if the condition is met.""" def __init__(self, condition_register: str, condition_index: int, circuit: Circuit): return - def condition_register(self): """ - Get value of struct field condition_register - """ - + Get value of struct field condition_register""" def condition_index(self): """ - Get value of struct field condition_index - """ - + Get value of struct field condition_index""" def circuit(self): """ - Get value of struct field circuit - """ - + Get value of struct field circuit""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -6881,9 +5798,7 @@ class PragmaConditional(Operation): Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -6895,9 +5810,7 @@ class PragmaConditional(Operation): Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -6905,74 +5818,58 @@ class PragmaConditional(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class PragmaChangeDevice(Operation): """ A wrapper around backend specific PRAGMA operations capable of changing a device. This PRAGMA is a thin wrapper around device specific operations that can change - device properties. - """ + device properties.""" def __init__(self): return - def wrapped_tags(self) -> List[str]: """ Return the tags of the wrapped operations. Returns: - List[str]: The list of tags. - """ - + List[str]: The list of tags.""" def wrapped_hqslang(self) -> str: """ Return the hqslang name of the wrapped operations. Returns: - str: The name of the wrapped operation. - """ - + str: The name of the wrapped operation.""" def wrapped_operation(self) -> bytearray: """ Return the binary representation of the wrapped operations. Returns: - ByteArray: The the binary representation of the wrapped operation. - """ - + ByteArray: The the binary representation of the wrapped operation.""" def involved_qubits(self) -> Set[int]: """ List all involved qubits. Returns: - Set[int]: The involved qubits of the PRAGMA operation. - """ - + Set[int]: The involved qubits of the PRAGMA operation.""" def tags(self) -> List[str]: """ Return tags classifying the type of the operation. @@ -6980,17 +5877,13 @@ class PragmaChangeDevice(Operation): Used for the type based dispatch in ffi interfaces. Returns: - List[str]: The tags of the Operation. - """ - + List[str]: The tags of the Operation.""" def hqslang(self) -> str: """ Return hqslang name of the operation. Returns: - str: The hqslang name of the operation. - """ - + str: The hqslang name of the operation.""" def is_parametrized(self) -> bool: """ Return true when the operation has symbolic parameters. @@ -6998,7 +5891,6 @@ class PragmaChangeDevice(Operation): Returns: bool: True if the operation contains symbolic parameters, False if it does not. """ - def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> PragmaChangeDevice: @@ -7012,9 +5904,7 @@ class PragmaChangeDevice(Operation): self: The PRAGMA operation with the parameters substituted. Raises: - RuntimeError: The parameter substitution failed. - """ - + RuntimeError: The parameter substitution failed.""" def remap_qubits(self, mapping: Dict[int, int]) -> PragmaChangeDevice: """ Remap qubits in a clone of the PRAGMA operation. @@ -7026,32 +5916,25 @@ class PragmaChangeDevice(Operation): self: The PRAGMA operation with the qubits remapped. Raises: - RuntimeError: The qubit remapping failed. - """ - + RuntimeError: The qubit remapping failed.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ - + str: The json schema serialized to json""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ + str: The minimum version of the qoqo library to deserialize this object.""" class CNOT(Operation): """ @@ -7073,31 +5956,24 @@ Args: def __init__(self, control: int, target: int): return - def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -7114,9 +5990,7 @@ Args: Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -7128,9 +6002,7 @@ Args: Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -7138,17 +6010,12 @@ Args: Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def control(self): """ - Returns control qubit of the two-qubit operation - """ - + Returns control qubit of the two-qubit operation""" def target(self): """ - Returns target qubit of the two-qubit operation - """ - + Returns target qubit of the two-qubit operation""" def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -7157,32 +6024,25 @@ Args: np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class SWAP(Operation): """ @@ -7204,31 +6064,24 @@ Args: def __init__(self, control: int, target: int): return - def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -7245,9 +6098,7 @@ Args: Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -7259,9 +6110,7 @@ Args: Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -7269,17 +6118,12 @@ Args: Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def control(self): """ - Returns control qubit of the two-qubit operation - """ - + Returns control qubit of the two-qubit operation""" def target(self): """ - Returns target qubit of the two-qubit operation - """ - + Returns target qubit of the two-qubit operation""" def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -7288,32 +6132,25 @@ Args: np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class FSwap(Operation): """ @@ -7335,31 +6172,24 @@ Args: def __init__(self, control: int, target: int): return - def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -7376,9 +6206,7 @@ Args: Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -7390,9 +6218,7 @@ Args: Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -7400,17 +6226,12 @@ Args: Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def control(self): """ - Returns control qubit of the two-qubit operation - """ - + Returns control qubit of the two-qubit operation""" def target(self): """ - Returns target qubit of the two-qubit operation - """ - + Returns target qubit of the two-qubit operation""" def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -7419,32 +6240,25 @@ Args: np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class ISwap(Operation): """ @@ -7466,31 +6280,24 @@ Args: def __init__(self, control: int, target: int): return - def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -7507,9 +6314,7 @@ Args: Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -7521,9 +6326,7 @@ Args: Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -7531,17 +6334,12 @@ Args: Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def control(self): """ - Returns control qubit of the two-qubit operation - """ - + Returns control qubit of the two-qubit operation""" def target(self): """ - Returns target qubit of the two-qubit operation - """ - + Returns target qubit of the two-qubit operation""" def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -7550,32 +6348,25 @@ Args: np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class SqrtISwap(Operation): """ @@ -7597,31 +6388,24 @@ Args: def __init__(self, control: int, target: int): return - def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -7638,9 +6422,7 @@ Args: Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -7652,9 +6434,7 @@ Args: Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -7662,17 +6442,12 @@ Args: Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def control(self): """ - Returns control qubit of the two-qubit operation - """ - + Returns control qubit of the two-qubit operation""" def target(self): """ - Returns target qubit of the two-qubit operation - """ - + Returns target qubit of the two-qubit operation""" def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -7681,32 +6456,25 @@ Args: np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class InvSqrtISwap(Operation): """ @@ -7728,31 +6496,24 @@ Args: def __init__(self, control: int, target: int): return - def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -7769,9 +6530,7 @@ Args: Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -7783,9 +6542,7 @@ Args: Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -7793,17 +6550,12 @@ Args: Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def control(self): """ - Returns control qubit of the two-qubit operation - """ - + Returns control qubit of the two-qubit operation""" def target(self): """ - Returns target qubit of the two-qubit operation - """ - + Returns target qubit of the two-qubit operation""" def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -7812,32 +6564,25 @@ Args: np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class XY(Operation): """ @@ -7860,36 +6605,27 @@ Args: def __init__(self, control: int, target: int, theta: Union[float, str]): return - def theta(self): """ - Returns value of attribute theta - """ - + Returns value of attribute theta""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -7905,10 +6641,8 @@ Args: Returns: Operation: The operation with the parameters substituted - Raises: - RuntimeError: Parameter Substitution failed - """ - + Raises: + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -7920,9 +6654,7 @@ Args: Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -7930,17 +6662,12 @@ Args: Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def control(self): """ - Returns control qubit of the two-qubit operation - """ - + Returns control qubit of the two-qubit operation""" def target(self): """ - Returns target qubit of the two-qubit operation - """ - + Returns target qubit of the two-qubit operation""" def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -7949,9 +6676,7 @@ Args: np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def powercf(self) -> XY: """ Returns Rotated gate raised to power @@ -7961,32 +6686,25 @@ Args: Returns: Self: gate raised to the power of `power` - """ - def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class ControlledPhaseShift(Operation): """ @@ -8009,36 +6727,27 @@ Args: def __init__(self, control: int, target: int, theta: Union[float, str]): return - def theta(self): """ - Returns value of attribute theta - """ - + Returns value of attribute theta""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -8055,9 +6764,7 @@ Args: Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -8069,9 +6776,7 @@ Args: Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -8079,17 +6784,12 @@ Args: Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def control(self): """ - Returns control qubit of the two-qubit operation - """ - + Returns control qubit of the two-qubit operation""" def target(self): """ - Returns target qubit of the two-qubit operation - """ - + Returns target qubit of the two-qubit operation""" def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -8098,9 +6798,7 @@ Args: np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def powercf(self) -> ControlledPhaseShift: """ Returns Rotated gate raised to power @@ -8110,32 +6808,25 @@ Args: Returns: Self: gate raised to the power of `power` - """ - def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class ControlledPauliY(Operation): """ @@ -8157,31 +6848,24 @@ Args: def __init__(self, control: int, target: int): return - def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -8198,9 +6882,7 @@ Args: Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -8212,9 +6894,7 @@ Args: Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -8222,17 +6902,12 @@ Args: Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def control(self): """ - Returns control qubit of the two-qubit operation - """ - + Returns control qubit of the two-qubit operation""" def target(self): """ - Returns target qubit of the two-qubit operation - """ - + Returns target qubit of the two-qubit operation""" def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -8241,32 +6916,25 @@ Args: np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class ControlledPauliZ(Operation): """ @@ -8288,31 +6956,24 @@ Args: def __init__(self, control: int, target: int): return - def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -8329,9 +6990,7 @@ Args: Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -8343,9 +7002,7 @@ Args: Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -8353,17 +7010,12 @@ Args: Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def control(self): """ - Returns control qubit of the two-qubit operation - """ - + Returns control qubit of the two-qubit operation""" def target(self): """ - Returns target qubit of the two-qubit operation - """ - + Returns target qubit of the two-qubit operation""" def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -8372,32 +7024,25 @@ Args: np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class MolmerSorensenXX(Operation): """ @@ -8419,31 +7064,24 @@ Args: def __init__(self, control: int, target: int): return - def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -8460,9 +7098,7 @@ Args: Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -8474,9 +7110,7 @@ Args: Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -8484,17 +7118,12 @@ Args: Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def control(self): """ - Returns control qubit of the two-qubit operation - """ - + Returns control qubit of the two-qubit operation""" def target(self): """ - Returns target qubit of the two-qubit operation - """ - + Returns target qubit of the two-qubit operation""" def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -8503,32 +7132,25 @@ Args: np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class VariableMSXX(Operation): """ @@ -8551,36 +7173,27 @@ Args: def __init__(self, control: int, target: int, theta: Union[float, str]): return - def theta(self): """ - Returns value of attribute theta - """ - + Returns value of attribute theta""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -8597,9 +7210,7 @@ Args: Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -8611,9 +7222,7 @@ Args: Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -8621,17 +7230,12 @@ Args: Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def control(self): """ - Returns control qubit of the two-qubit operation - """ - + Returns control qubit of the two-qubit operation""" def target(self): """ - Returns target qubit of the two-qubit operation - """ - + Returns target qubit of the two-qubit operation""" def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -8640,9 +7244,7 @@ Args: np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def powercf(self) -> VariableMSXX: """ Returns Rotated gate raised to power @@ -8652,32 +7254,25 @@ Args: Returns: Self: gate raised to the power of `power` - """ - def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class GivensRotation(Operation): """ @@ -8710,41 +7305,30 @@ Args: phase: Union[float, str], ): return - def theta(self): """ - Returns value of attribute theta - """ - + Returns value of attribute theta""" def phi(self): """ - Returns value of attribute phi - """ - + Returns value of attribute phi""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -8761,9 +7345,7 @@ Args: Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -8775,9 +7357,7 @@ Args: Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -8785,17 +7365,12 @@ Args: Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def control(self): """ - Returns control qubit of the two-qubit operation - """ - + Returns control qubit of the two-qubit operation""" def target(self): """ - Returns target qubit of the two-qubit operation - """ - + Returns target qubit of the two-qubit operation""" def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -8804,9 +7379,7 @@ Args: np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def powercf(self) -> GivensRotation: """ Returns Rotated gate raised to power @@ -8816,32 +7389,25 @@ Args: Returns: Self: gate raised to the power of `power` - """ - def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class GivensRotationLittleEndian(Operation): """ @@ -8874,41 +7440,30 @@ Args: phase: Union[float, str], ): return - def theta(self): """ - Returns value of attribute theta - """ - + Returns value of attribute theta""" def phi(self): """ - Returns value of attribute phi - """ - + Returns value of attribute phi""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -8925,9 +7480,7 @@ Args: Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -8939,9 +7492,7 @@ Args: Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -8949,17 +7500,12 @@ Args: Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def control(self): """ - Returns control qubit of the two-qubit operation - """ - + Returns control qubit of the two-qubit operation""" def target(self): """ - Returns target qubit of the two-qubit operation - """ - + Returns target qubit of the two-qubit operation""" def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -8968,9 +7514,7 @@ Args: np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def powercf(self) -> GivensRotationLittleEndian: """ Returns Rotated gate raised to power @@ -8980,32 +7524,25 @@ Args: Returns: Self: gate raised to the power of `power` - """ - def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class Qsim(Operation): """ @@ -9037,46 +7574,33 @@ Args: z: Union[float, str], ): return - def x(self): """ - Returns value of attribute x - """ - + Returns value of attribute x""" def y(self): """ - Returns value of attribute y - """ - + Returns value of attribute y""" def z(self): """ - Returns value of attribute z - """ - + Returns value of attribute z""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -9093,9 +7617,7 @@ Args: Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -9107,9 +7629,7 @@ Args: Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -9117,17 +7637,12 @@ Args: Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def control(self): """ - Returns control qubit of the two-qubit operation - """ - + Returns control qubit of the two-qubit operation""" def target(self): """ - Returns target qubit of the two-qubit operation - """ - + Returns target qubit of the two-qubit operation""" def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -9136,32 +7651,25 @@ Args: np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class Fsim(Operation): """ @@ -9197,46 +7705,33 @@ in which the gate is valid as a two-qubit gate (due to the Jordan-Wigner transfo delta: Union[float, str], ): return - def t(self): """ - Returns value of attribute t - """ - + Returns value of attribute t""" def u(self): """ - Returns value of attribute u - """ - + Returns value of attribute u""" def delta(self): """ - Returns value of attribute delta - """ - + Returns value of attribute delta""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -9253,9 +7748,7 @@ in which the gate is valid as a two-qubit gate (due to the Jordan-Wigner transfo Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -9267,9 +7760,7 @@ in which the gate is valid as a two-qubit gate (due to the Jordan-Wigner transfo Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -9277,17 +7768,12 @@ in which the gate is valid as a two-qubit gate (due to the Jordan-Wigner transfo Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def control(self): """ - Returns control qubit of the two-qubit operation - """ - + Returns control qubit of the two-qubit operation""" def target(self): """ - Returns target qubit of the two-qubit operation - """ - + Returns target qubit of the two-qubit operation""" def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -9296,32 +7782,25 @@ in which the gate is valid as a two-qubit gate (due to the Jordan-Wigner transfo np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. - Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + Returns: + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class SpinInteraction(Operation): """ @@ -9338,7 +7817,6 @@ class SpinInteraction(Operation): x (CalculatorFloat): The prefactor of the XX interaction. y (CalculatorFloat): The prefactor of the YY interaction. z (CalculatorFloat): The prefactor of the ZZ interaction. - """ def __init__( @@ -9350,46 +7828,33 @@ class SpinInteraction(Operation): z: Union[float, str], ): return - def x(self): """ - Returns value of attribute x - """ - + Returns value of attribute x""" def y(self): """ - Returns value of attribute y - """ - + Returns value of attribute y""" def z(self): """ - Returns value of attribute z - """ - + Returns value of attribute z""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -9406,9 +7871,7 @@ class SpinInteraction(Operation): Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -9420,9 +7883,7 @@ class SpinInteraction(Operation): Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -9430,17 +7891,12 @@ class SpinInteraction(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def control(self): """ - Returns control qubit of the two-qubit operation - """ - + Returns control qubit of the two-qubit operation""" def target(self): """ - Returns target qubit of the two-qubit operation - """ - + Returns target qubit of the two-qubit operation""" def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -9449,32 +7905,25 @@ class SpinInteraction(Operation): np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class Bogoliubov(Operation): """ @@ -9511,41 +7960,30 @@ Args: delta_imag: Union[float, str], ): return - def delta_real(self): """ - Returns value of attribute delta_real - """ - + Returns value of attribute delta_real""" def delta_imag(self): """ - Returns value of attribute delta_imag - """ - + Returns value of attribute delta_imag""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -9562,9 +8000,7 @@ Args: Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -9576,9 +8012,7 @@ Args: Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -9586,17 +8020,12 @@ Args: Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def control(self): """ - Returns control qubit of the two-qubit operation - """ - + Returns control qubit of the two-qubit operation""" def target(self): """ - Returns target qubit of the two-qubit operation - """ - + Returns target qubit of the two-qubit operation""" def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -9605,32 +8034,25 @@ Args: np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class PMInteraction(Operation): """ @@ -9645,41 +8067,31 @@ class PMInteraction(Operation): control (int): The index of the most significant qubit in the unitary representation. target (int):: The index of the least significant qubit in the unitary representation. t (CalculatorFloat): The strength of the rotation :math:`\theta`. - """ def __init__(self, control: int, target: int, t: Union[float, str]): return - def t(self): """ - Returns value of attribute t - """ - + Returns value of attribute t""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -9696,9 +8108,7 @@ class PMInteraction(Operation): Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -9710,9 +8120,7 @@ class PMInteraction(Operation): Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -9720,17 +8128,12 @@ class PMInteraction(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def control(self): """ - Returns control qubit of the two-qubit operation - """ - + Returns control qubit of the two-qubit operation""" def target(self): """ - Returns target qubit of the two-qubit operation - """ - + Returns target qubit of the two-qubit operation""" def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -9739,32 +8142,25 @@ class PMInteraction(Operation): np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class ComplexPMInteraction(Operation): """ @@ -9780,7 +8176,6 @@ class ComplexPMInteraction(Operation): target (int):: The index of the least significant qubit in the unitary representation. t_real (CalculatorFloat): The real part of the strength of the rotation :math:`Re(\theta)`. t_imag (CalculatorFloat): The imaginary part of the strength of the rotation :math:`Im(\theta)`. - """ def __init__( @@ -9791,41 +8186,30 @@ class ComplexPMInteraction(Operation): t_imag: Union[float, str], ): return - def t_real(self): """ - Returns value of attribute t_real - """ - + Returns value of attribute t_real""" def t_imag(self): """ - Returns value of attribute t_imag - """ - + Returns value of attribute t_imag""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -9842,9 +8226,7 @@ class ComplexPMInteraction(Operation): Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -9856,9 +8238,7 @@ class ComplexPMInteraction(Operation): Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -9866,17 +8246,12 @@ class ComplexPMInteraction(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def control(self): """ - Returns control qubit of the two-qubit operation - """ - + Returns control qubit of the two-qubit operation""" def target(self): """ - Returns target qubit of the two-qubit operation - """ - + Returns target qubit of the two-qubit operation""" def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -9885,32 +8260,25 @@ class ComplexPMInteraction(Operation): np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class PhaseShiftedControlledZ(Operation): """ @@ -9937,36 +8305,27 @@ Args: def __init__(self, control: int, target: int, phi: Union[float, str]): return - def phi(self): """ - Returns value of attribute phi - """ - + Returns value of attribute phi""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -9983,9 +8342,7 @@ Args: Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -9997,9 +8354,7 @@ Args: Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -10007,17 +8362,12 @@ Args: Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def control(self): """ - Returns control qubit of the two-qubit operation - """ - + Returns control qubit of the two-qubit operation""" def target(self): """ - Returns target qubit of the two-qubit operation - """ - + Returns target qubit of the two-qubit operation""" def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -10026,32 +8376,25 @@ Args: np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class PhaseShiftState0(Operation): """ @@ -10073,36 +8416,27 @@ Args: def __init__(self, qubit: int, theta: Union[float, str]): return - def theta(self): """ - Returns value of attribute theta - """ - + Returns value of attribute theta""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -10119,9 +8453,7 @@ Args: Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -10133,9 +8465,7 @@ Args: Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -10143,15 +8473,12 @@ Args: Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def qubit(self): """ Return the qubit the operation acts on Returns: - int - """ - + int""" def global_phase(self): """ Return the global phase :math:`g` of a unitary gate acting on one qubit @@ -10167,7 +8494,6 @@ Here global_phase is defined by Returns: CalculatorFloat """ - def alpha_r(self): """ Return the property alpha_r :math:`\alpha_r` of a unitary gate acting on one qubit @@ -10183,7 +8509,6 @@ Here alpha_r is defined by Returns: CalculatorFloat """ - def alpha_i(self): """ Return the property alpha_i :math:`\alpha_i` of a unitary gate acting on one qubit @@ -10197,7 +8522,6 @@ Return the property alpha_i :math:`\alpha_i` of a unitary gate acting on one qub Returns: CalculatorFloat """ - def beta_r(self): """ Return the property beta_r :math:`\beta_r` of a unitary gate acting on one qubit @@ -10213,7 +8537,6 @@ Here beta_r is defined by Returns: CalculatorFloat """ - def beta_i(self): """ Returns the property beta_i :math:`\beta_i` of a unitary gate acting on one qubit @@ -10230,7 +8553,6 @@ Here beta_i is defined by Returns: CalculatorFloat """ - def mul(self) -> Operation: """ Multiplies two compatible operations implementing OperateSingleQubitGate. @@ -10253,9 +8575,7 @@ Returns: multiplied = gate1.mul(gate2) print("Multiplied gate: ", multiplied) ``` - """ - def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -10264,9 +8584,7 @@ Returns: np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def powercf(self) -> PhaseShiftState0: """ Returns Rotated gate raised to power @@ -10276,32 +8594,25 @@ Returns: Returns: Self: gate raised to the power of `power` - """ - def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class PhaseShiftState1(Operation): """ @@ -10323,36 +8634,27 @@ Args: def __init__(self, qubit: int, theta: Union[float, str]): return - def theta(self): """ - Returns value of attribute theta - """ - + Returns value of attribute theta""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -10369,9 +8671,7 @@ Args: Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -10383,9 +8683,7 @@ Args: Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -10393,15 +8691,12 @@ Args: Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def qubit(self): """ Return the qubit the operation acts on Returns: - int - """ - + int""" def global_phase(self): """ Return the global phase :math:`g` of a unitary gate acting on one qubit @@ -10417,7 +8712,6 @@ Here global_phase is defined by Returns: CalculatorFloat """ - def alpha_r(self): """ Return the property alpha_r :math:`\alpha_r` of a unitary gate acting on one qubit @@ -10433,7 +8727,6 @@ Here alpha_r is defined by Returns: CalculatorFloat """ - def alpha_i(self): """ Return the property alpha_i :math:`\alpha_i` of a unitary gate acting on one qubit @@ -10447,7 +8740,6 @@ Return the property alpha_i :math:`\alpha_i` of a unitary gate acting on one qub Returns: CalculatorFloat """ - def beta_r(self): """ Return the property beta_r :math:`\beta_r` of a unitary gate acting on one qubit @@ -10463,7 +8755,6 @@ Here beta_r is defined by Returns: CalculatorFloat """ - def beta_i(self): """ Returns the property beta_i :math:`\beta_i` of a unitary gate acting on one qubit @@ -10480,7 +8771,6 @@ Here beta_i is defined by Returns: CalculatorFloat """ - def mul(self) -> Operation: """ Multiplies two compatible operations implementing OperateSingleQubitGate. @@ -10503,9 +8793,7 @@ Returns: multiplied = gate1.mul(gate2) print("Multiplied gate: ", multiplied) ``` - """ - def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -10514,9 +8802,7 @@ Returns: np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def powercf(self) -> PhaseShiftState1: """ Returns Rotated gate raised to power @@ -10526,32 +8812,25 @@ Returns: Returns: Self: gate raised to the power of `power` - """ - def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class MultiQubitMS(Operation): """ @@ -10563,36 +8842,27 @@ class MultiQubitMS(Operation): def __init__(self): return - def theta(self): """ - Returns value of attribute theta - """ - + Returns value of attribute theta""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -10609,9 +8879,7 @@ class MultiQubitMS(Operation): Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -10623,9 +8891,7 @@ class MultiQubitMS(Operation): Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -10633,23 +8899,18 @@ class MultiQubitMS(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def qubits(self): """ Return list of qubits of the multi qubit operation in order of descending significance Returns: - List[int] - """ - + List[int]""" def circuit(self): """ Return circuit implementing MultiQubitGateOperation Returns: - Circuit - """ - + Circuit""" def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -10658,9 +8919,7 @@ class MultiQubitMS(Operation): np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def powercf(self) -> MultiQubitMS: """ Returns Rotated gate raised to power @@ -10670,32 +8929,25 @@ class MultiQubitMS(Operation): Returns: Self: gate raised to the power of `power` - """ - def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class MultiQubitZZ(Operation): """ @@ -10707,36 +8959,27 @@ class MultiQubitZZ(Operation): def __init__(self): return - def theta(self): """ - Returns value of attribute theta - """ - + Returns value of attribute theta""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -10753,9 +8996,7 @@ class MultiQubitZZ(Operation): Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -10767,9 +9008,7 @@ class MultiQubitZZ(Operation): Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -10777,23 +9016,18 @@ class MultiQubitZZ(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def qubits(self): """ Return list of qubits of the multi qubit operation in order of descending significance Returns: - List[int] - """ - + List[int]""" def circuit(self): """ Return circuit implementing MultiQubitGateOperation Returns: - Circuit - """ - + Circuit""" def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -10802,9 +9036,7 @@ class MultiQubitZZ(Operation): np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def powercf(self) -> MultiQubitZZ: """ Returns Rotated gate raised to power @@ -10814,32 +9046,25 @@ class MultiQubitZZ(Operation): Returns: Self: gate raised to the power of `power` - """ - def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. - Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + Returns: + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class InputBit(Operation): """ @@ -10848,46 +9073,34 @@ class InputBit(Operation): Args: name (string): The name of the register that is defined. index (int): The index in the register that is set. - value (int): The value the bit is set to. - """ + value (int): The value the bit is set to.""" def __init__(self, name: str, index: int, value: int): return - def index(self): """ - Get value of struct field index - """ - + Get value of struct field index""" def value(self): """ - Get value of struct field value - """ - + Get value of struct field value""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -10904,9 +9117,7 @@ class InputBit(Operation): Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -10918,9 +9129,7 @@ class InputBit(Operation): Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -10928,38 +9137,30 @@ class InputBit(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def name(self): """ Return name of definition operation. Returns: - str - """ - + str""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class PragmaLoop(Operation): """ @@ -10968,46 +9169,34 @@ class PragmaLoop(Operation): Args: repetitions (CalculatorFloat): The number of repetitions as a symbolic float. At evaluation the floor of any float value is taken circuit (Circuit): The Circuit that is looped. - """ def __init__(self, repetitions: Union[float, str], circuit: Circuit): return - def repetitions(self): """ - Returns value of attribute repetitions - """ - + Returns value of attribute repetitions""" def circuit(self): """ - Get value of struct field circuit - """ - + Get value of struct field circuit""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -11024,9 +9213,7 @@ class PragmaLoop(Operation): Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -11038,9 +9225,7 @@ class PragmaLoop(Operation): Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -11048,30 +9233,24 @@ class PragmaLoop(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class PhaseShiftedControlledPhase(Operation): """ @@ -11103,41 +9282,30 @@ Args: phi: Union[float, str], ): return - def theta(self): """ - Returns value of attribute theta - """ - + Returns value of attribute theta""" def phi(self): """ - Returns value of attribute phi - """ - + Returns value of attribute phi""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -11154,9 +9322,7 @@ Args: Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -11168,9 +9334,7 @@ Args: Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -11178,17 +9342,12 @@ Args: Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def control(self): """ - Returns control qubit of the two-qubit operation - """ - + Returns control qubit of the two-qubit operation""" def target(self): """ - Returns target qubit of the two-qubit operation - """ - + Returns target qubit of the two-qubit operation""" def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -11197,9 +9356,7 @@ Args: np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def powercf(self) -> PhaseShiftedControlledPhase: """ Returns Rotated gate raised to power @@ -11209,32 +9366,25 @@ Args: Returns: Self: gate raised to the power of `power` - """ - def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class ControlledRotateX(Operation): """ @@ -11258,36 +9408,27 @@ Args: def __init__(self, control: int, target: int, theta: Union[float, str]): return - def theta(self): """ - Returns value of attribute theta - """ - + Returns value of attribute theta""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -11304,9 +9445,7 @@ Args: Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -11318,9 +9457,7 @@ Args: Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -11328,17 +9465,12 @@ Args: Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def control(self): """ - Returns control qubit of the two-qubit operation - """ - + Returns control qubit of the two-qubit operation""" def target(self): """ - Returns target qubit of the two-qubit operation - """ - + Returns target qubit of the two-qubit operation""" def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -11347,9 +9479,7 @@ Args: np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def powercf(self) -> ControlledRotateX: """ Returns Rotated gate raised to power @@ -11359,32 +9489,25 @@ Args: Returns: Self: gate raised to the power of `power` - """ - def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class ControlledRotateXY(Operation): """ @@ -11415,41 +9538,30 @@ Args: phi: Union[float, str], ): return - def theta(self): """ - Returns value of attribute theta - """ - + Returns value of attribute theta""" def phi(self): """ - Returns value of attribute phi - """ - + Returns value of attribute phi""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -11466,9 +9578,7 @@ Args: Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -11480,9 +9590,7 @@ Args: Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -11490,17 +9598,12 @@ Args: Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def control(self): """ - Returns control qubit of the two-qubit operation - """ - + Returns control qubit of the two-qubit operation""" def target(self): """ - Returns target qubit of the two-qubit operation - """ - + Returns target qubit of the two-qubit operation""" def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -11509,9 +9612,7 @@ Args: np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def powercf(self) -> ControlledRotateXY: """ Returns Rotated gate raised to power @@ -11521,32 +9622,25 @@ Args: Returns: Self: gate raised to the power of `power` - """ - def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class ControlledControlledPauliZ(Operation): """ @@ -11572,31 +9666,24 @@ Args: def __init__(self, control_0: int, control_1: int, target: int): return - def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -11613,9 +9700,7 @@ Args: Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -11627,9 +9712,7 @@ Args: Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -11637,30 +9720,21 @@ Args: Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def control_0(self): """ - Returns control_0 qubit of the three-qubit operation - """ - + Returns control_0 qubit of the three-qubit operation""" def control_1(self): """ - Returns control_1 qubit of the three-qubit operation - """ - + Returns control_1 qubit of the three-qubit operation""" def target(self): """ - Returns target qubit of the three-qubit operation - """ - + Returns target qubit of the three-qubit operation""" def circuit(self): """ Returns circuit implementing the ThreeQubitGateOperation Returns: - Circuit - """ - + Circuit""" def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -11669,32 +9743,25 @@ Args: np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class ControlledControlledPhaseShift(Operation): """ @@ -11721,36 +9788,27 @@ Args: def __init__(self, control_0: int, control_1: int, target: int, theta: float): return - def theta(self): """ - Returns value of attribute theta - """ - + Returns value of attribute theta""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -11767,9 +9825,7 @@ Args: Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -11781,9 +9837,7 @@ Args: Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -11791,30 +9845,21 @@ Args: Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def control_0(self): """ - Returns control_0 qubit of the three-qubit operation - """ - + Returns control_0 qubit of the three-qubit operation""" def control_1(self): """ - Returns control_1 qubit of the three-qubit operation - """ - + Returns control_1 qubit of the three-qubit operation""" def target(self): """ - Returns target qubit of the three-qubit operation - """ - + Returns target qubit of the three-qubit operation""" def circuit(self): """ Returns circuit implementing the ThreeQubitGateOperation Returns: - Circuit - """ - + Circuit""" def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -11823,9 +9868,7 @@ Args: np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def powercf(self) -> ControlledControlledPhaseShift: """ Returns Rotated gate raised to power @@ -11835,32 +9878,25 @@ Args: Returns: Self: gate raised to the power of `power` - """ - def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class Toffoli(Operation): """ @@ -11886,31 +9922,24 @@ Args: def __init__(self, control_0: int, control_1: int, target: int): return - def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -11927,9 +9956,7 @@ Args: Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -11941,9 +9968,7 @@ Args: Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -11951,30 +9976,21 @@ Args: Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def control_0(self): """ - Returns control_0 qubit of the three-qubit operation - """ - + Returns control_0 qubit of the three-qubit operation""" def control_1(self): """ - Returns control_1 qubit of the three-qubit operation - """ - + Returns control_1 qubit of the three-qubit operation""" def target(self): """ - Returns target qubit of the three-qubit operation - """ - + Returns target qubit of the three-qubit operation""" def circuit(self): """ Returns circuit implementing the ThreeQubitGateOperation Returns: - Circuit - """ - + Circuit""" def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -11983,32 +9999,25 @@ Args: np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class GPi(Operation): """ @@ -12028,36 +10037,27 @@ Args: def __init__(self, qubit: int, theta: Union[float, str]): return - def theta(self): """ - Returns value of attribute theta - """ - + Returns value of attribute theta""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -12074,9 +10074,7 @@ Args: Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -12088,9 +10086,7 @@ Args: Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -12098,15 +10094,12 @@ Args: Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def qubit(self): """ Return the qubit the operation acts on Returns: - int - """ - + int""" def global_phase(self): """ Return the global phase :math:`g` of a unitary gate acting on one qubit @@ -12122,7 +10115,6 @@ Here global_phase is defined by Returns: CalculatorFloat """ - def alpha_r(self): """ Return the property alpha_r :math:`\alpha_r` of a unitary gate acting on one qubit @@ -12138,7 +10130,6 @@ Here alpha_r is defined by Returns: CalculatorFloat """ - def alpha_i(self): """ Return the property alpha_i :math:`\alpha_i` of a unitary gate acting on one qubit @@ -12152,7 +10143,6 @@ Return the property alpha_i :math:`\alpha_i` of a unitary gate acting on one qub Returns: CalculatorFloat """ - def beta_r(self): """ Return the property beta_r :math:`\beta_r` of a unitary gate acting on one qubit @@ -12168,7 +10158,6 @@ Here beta_r is defined by Returns: CalculatorFloat """ - def beta_i(self): """ Returns the property beta_i :math:`\beta_i` of a unitary gate acting on one qubit @@ -12185,7 +10174,6 @@ Here beta_i is defined by Returns: CalculatorFloat """ - def mul(self) -> Operation: """ Multiplies two compatible operations implementing OperateSingleQubitGate. @@ -12208,9 +10196,7 @@ Returns: multiplied = gate1.mul(gate2) print("Multiplied gate: ", multiplied) ``` - """ - def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -12219,9 +10205,7 @@ Returns: np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def powercf(self) -> GPi: """ Returns Rotated gate raised to power @@ -12231,32 +10215,25 @@ Returns: Returns: Self: gate raised to the power of `power` - """ - def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class GPi2(Operation): """ @@ -12276,36 +10253,27 @@ Args: def __init__(self, qubit: int, theta: Union[float, str]): return - def theta(self): """ - Returns value of attribute theta - """ - + Returns value of attribute theta""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters - Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + Returns: + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -12322,9 +10290,7 @@ Args: Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -12336,9 +10302,7 @@ Args: Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -12346,15 +10310,12 @@ Args: Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def qubit(self): """ Return the qubit the operation acts on Returns: - int - """ - + int""" def global_phase(self): """ Return the global phase :math:`g` of a unitary gate acting on one qubit @@ -12370,7 +10331,6 @@ Here global_phase is defined by Returns: CalculatorFloat """ - def alpha_r(self): """ Return the property alpha_r :math:`\alpha_r` of a unitary gate acting on one qubit @@ -12386,7 +10346,6 @@ Here alpha_r is defined by Returns: CalculatorFloat """ - def alpha_i(self): """ Return the property alpha_i :math:`\alpha_i` of a unitary gate acting on one qubit @@ -12400,7 +10359,6 @@ Return the property alpha_i :math:`\alpha_i` of a unitary gate acting on one qub Returns: CalculatorFloat """ - def beta_r(self): """ Return the property beta_r :math:`\beta_r` of a unitary gate acting on one qubit @@ -12416,7 +10374,6 @@ Here beta_r is defined by Returns: CalculatorFloat """ - def beta_i(self): """ Returns the property beta_i :math:`\beta_i` of a unitary gate acting on one qubit @@ -12433,7 +10390,6 @@ Here beta_i is defined by Returns: CalculatorFloat """ - def mul(self) -> Operation: """ Multiplies two compatible operations implementing OperateSingleQubitGate. @@ -12456,9 +10412,7 @@ Returns: multiplied = gate1.mul(gate2) print("Multiplied gate: ", multiplied) ``` - """ - def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -12467,9 +10421,7 @@ Returns: np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def powercf(self) -> GPi2: """ Returns Rotated gate raised to power @@ -12479,32 +10431,25 @@ Returns: Returns: Self: gate raised to the power of `power` - """ - def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class PragmaControlledCircuit(Operation): """ @@ -12517,46 +10462,34 @@ class PragmaControlledCircuit(Operation): Args: controlling_qubit (int): - The qubit controlling circuit application. - circuit (Circuit): - The circuit executed if the condition is met. - """ + circuit (Circuit): - The circuit executed if the condition is met.""" def __init__(self, controlling_qubit: int, circuit: Circuit): return - def controlling_qubit(self): """ - Get value of struct field controlling_qubit - """ - + Get value of struct field controlling_qubit""" def circuit(self): """ - Get value of struct field circuit - """ - + Get value of struct field circuit""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -12573,9 +10506,7 @@ class PragmaControlledCircuit(Operation): Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -12587,9 +10518,7 @@ class PragmaControlledCircuit(Operation): Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -12597,30 +10526,24 @@ class PragmaControlledCircuit(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class Squeezing(Operation): """ @@ -12640,41 +10563,30 @@ class Squeezing(Operation): self, mode: int, squeezing: Union[float, str], phase: Union[float, str] ): return - def squeezing(self): """ - Returns value of attribute squeezing - """ - + Returns value of attribute squeezing""" def phase(self): """ - Returns value of attribute phase - """ - + Returns value of attribute phase""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -12691,9 +10603,7 @@ class Squeezing(Operation): Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -12705,9 +10615,7 @@ class Squeezing(Operation): Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -12715,7 +10623,6 @@ class Squeezing(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def involved_modes(self) -> Union[Set[int], str]: """ List of modes the operation acts on. @@ -12723,7 +10630,6 @@ class Squeezing(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def remap_modes(self, mapping: Dict[int, int]): """ Remap the bosonic modes in copy of the operation. @@ -12735,40 +10641,31 @@ class Squeezing(Operation): self Raises: - PyValueError: Remapping could not be performed - """ - + PyValueError: Remapping could not be performed""" def mode(self): """ Return `mode` the bosonic Operation acts on. Returns: - int - """ - + int""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class PhaseShift(Operation): """ @@ -12778,41 +10675,31 @@ class PhaseShift(Operation): Args: mode (int): The mode the phase-shift gate is applied to. - phase (CalculatorFloat): The phase by which to shift the mode. - """ + phase (CalculatorFloat): The phase by which to shift the mode.""" def __init__(self, mode: int, phase: Union[float, str]): return - def phase(self): """ - Returns value of attribute phase - """ - + Returns value of attribute phase""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -12829,9 +10716,7 @@ class PhaseShift(Operation): Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -12843,9 +10728,7 @@ class PhaseShift(Operation): Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -12853,7 +10736,6 @@ class PhaseShift(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def involved_modes(self) -> Union[Set[int], str]: """ List of modes the operation acts on. @@ -12861,7 +10743,6 @@ class PhaseShift(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def remap_modes(self, mapping: Dict[int, int]): """ Remap the bosonic modes in copy of the operation. @@ -12873,40 +10754,31 @@ class PhaseShift(Operation): self Raises: - PyValueError: Remapping could not be performed - """ - + PyValueError: Remapping could not be performed""" def mode(self): """ Return `mode` the bosonic Operation acts on. Returns: - int - """ - + int""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class BeamSplitter(Operation): """ @@ -12916,48 +10788,36 @@ class BeamSplitter(Operation): mode_0 (int): The first mode the beam-splitter is applied to. mode_1 (int): The second mode the beam-splitter is applied to. theta (CalculatorFloat): The transmittivity angle of the beam-splitter. - phi (CalculatorFloat): The phase angle of the beam-splitter. - """ + phi (CalculatorFloat): The phase angle of the beam-splitter.""" def __init__( self, mode_0: int, mode_1: int, theta: Union[float, str], phi: Union[float, str] ): return - def theta(self): """ - Returns value of attribute theta - """ - + Returns value of attribute theta""" def phi(self): """ - Returns value of attribute phi - """ - + Returns value of attribute phi""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -12974,9 +10834,7 @@ class BeamSplitter(Operation): Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -12988,9 +10846,7 @@ class BeamSplitter(Operation): Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -12998,7 +10854,6 @@ class BeamSplitter(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def involved_modes(self) -> Union[Set[int], str]: """ List of modes the operation acts on. @@ -13006,7 +10861,6 @@ class BeamSplitter(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def remap_modes(self, mapping: Dict[int, int]): """ Remap the bosonic modes in copy of the operation. @@ -13018,48 +10872,37 @@ class BeamSplitter(Operation): self Raises: - PyValueError: Remapping could not be performed - """ - + PyValueError: Remapping could not be performed""" def mode_0(self): """ Return `mode_0` bosonic mode of two bosonic mode Operation. Returns: - int - """ - + int""" def mode_1(self): """ Return `mode_1` bosonic mode of two bosonic mode Operation. Returns: - int - """ - + int""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class PhotonDetection(Operation): """ @@ -13071,46 +10914,34 @@ class PhotonDetection(Operation): Args: mode (int): The mode the detector (measurement) is applied to. readout (str): The register for the readout. - readout_index (int): The index in the readout the result is saved to. - """ + readout_index (int): The index in the readout the result is saved to.""" def __init__(self, mode: int, readout: str, readout_index: int): return - def readout(self): """ - Get value of struct field readout - """ - + Get value of struct field readout""" def readout_index(self): """ - Get value of struct field readout_index - """ - + Get value of struct field readout_index""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -13127,9 +10958,7 @@ class PhotonDetection(Operation): Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -13141,9 +10970,7 @@ class PhotonDetection(Operation): Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -13151,7 +10978,6 @@ class PhotonDetection(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def involved_modes(self) -> Union[Set[int], str]: """ List of modes the operation acts on. @@ -13159,7 +10985,6 @@ class PhotonDetection(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def remap_modes(self, mapping: Dict[int, int]): """ Remap the bosonic modes in copy of the operation. @@ -13171,40 +10996,31 @@ class PhotonDetection(Operation): self Raises: - PyValueError: Remapping could not be performed - """ - + PyValueError: Remapping could not be performed""" def mode(self): """ Return `mode` the bosonic Operation acts on. Returns: - int - """ - + int""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class Identity(Operation): """ @@ -13222,31 +11038,24 @@ Args: def __init__(self, qubit: int): return - def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -13263,9 +11072,7 @@ Args: Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -13277,9 +11084,7 @@ Args: Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -13287,15 +11092,12 @@ Args: Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def qubit(self): """ Return the qubit the operation acts on Returns: - int - """ - + int""" def global_phase(self): """ Return the global phase :math:`g` of a unitary gate acting on one qubit @@ -13311,7 +11113,6 @@ Here global_phase is defined by Returns: CalculatorFloat """ - def alpha_r(self): """ Return the property alpha_r :math:`\alpha_r` of a unitary gate acting on one qubit @@ -13327,7 +11128,6 @@ Here alpha_r is defined by Returns: CalculatorFloat """ - def alpha_i(self): """ Return the property alpha_i :math:`\alpha_i` of a unitary gate acting on one qubit @@ -13341,7 +11141,6 @@ Return the property alpha_i :math:`\alpha_i` of a unitary gate acting on one qub Returns: CalculatorFloat """ - def beta_r(self): """ Return the property beta_r :math:`\beta_r` of a unitary gate acting on one qubit @@ -13357,7 +11156,6 @@ Here beta_r is defined by Returns: CalculatorFloat """ - def beta_i(self): """ Returns the property beta_i :math:`\beta_i` of a unitary gate acting on one qubit @@ -13374,7 +11172,6 @@ Here beta_i is defined by Returns: CalculatorFloat """ - def mul(self) -> Operation: """ Multiplies two compatible operations implementing OperateSingleQubitGate. @@ -13397,9 +11194,7 @@ Returns: multiplied = gate1.mul(gate2) print("Multiplied gate: ", multiplied) ``` - """ - def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -13408,32 +11203,25 @@ Returns: np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class PhaseDisplacement(Operation): """ @@ -13442,48 +11230,36 @@ class PhaseDisplacement(Operation): Args: mode (int): The mode the phase-shift gate is applied to. displacement (CalculatorFloat): The magnitude by which to displace the mode. - phase (CalculatorFloat): The angle by which to displace the mode. - """ + phase (CalculatorFloat): The angle by which to displace the mode.""" def __init__( self, mode: int, displacement: Union[float, str], phase: Union[float, str] ): return - def displacement(self): """ - Returns value of attribute displacement - """ - + Returns value of attribute displacement""" def phase(self): """ - Returns value of attribute phase - """ - + Returns value of attribute phase""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -13500,9 +11276,7 @@ class PhaseDisplacement(Operation): Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -13514,9 +11288,7 @@ class PhaseDisplacement(Operation): Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -13524,7 +11296,6 @@ class PhaseDisplacement(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def involved_modes(self) -> Union[Set[int], str]: """ List of modes the operation acts on. @@ -13532,7 +11303,6 @@ class PhaseDisplacement(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def remap_modes(self, mapping: Dict[int, int]): """ Remap the bosonic modes in copy of the operation. @@ -13544,40 +11314,31 @@ class PhaseDisplacement(Operation): self Raises: - PyValueError: Remapping could not be performed - """ - + PyValueError: Remapping could not be performed""" def mode(self): """ Return `mode` the bosonic Operation acts on. Returns: - int - """ - + int""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class EchoCrossResonance(Operation): """ @@ -13608,31 +11369,24 @@ Args: phi: Union[float, str], ): return - def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -13649,9 +11403,7 @@ Args: Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -13663,9 +11415,7 @@ Args: Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -13673,17 +11423,12 @@ Args: Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def control(self): """ - Returns control qubit of the two-qubit operation - """ - + Returns control qubit of the two-qubit operation""" def target(self): """ - Returns target qubit of the two-qubit operation - """ - + Returns target qubit of the two-qubit operation""" def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -13692,32 +11437,25 @@ Args: np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class PragmaAnnotatedOp(Operation): """ @@ -13725,36 +11463,28 @@ class PragmaAnnotatedOp(Operation): Args: operation (Operation): - The Operation to be annotated. - annotation (str): - The annotation. - """ + annotation (str): - The annotation.""" def __init__(self, operation: Operation, annotation: str): return - def operation(self) -> Operation: """ Return the internal Operation. Returns: - Operation: The annotated Operation. - """ - + Operation: The annotated Operation.""" def annotation(self) -> str: """ Return the annotation. Returns: - str: The annotation. - """ - + str: The annotation.""" def involved_qubits(self) -> Set[int]: """ List all involved qubits. Returns: - Set[int]: The involved qubits of the PRAGMA operation. - """ - + Set[int]: The involved qubits of the PRAGMA operation.""" def tags(self) -> List[str]: """ Return tags classifying the type of the operation. @@ -13762,17 +11492,13 @@ class PragmaAnnotatedOp(Operation): Used for the type based dispatch in ffi interfaces. Returns: - List[str]: The tags of the Operation. - """ - + List[str]: The tags of the Operation.""" def hqslang(self) -> str: """ Return hqslang name of the operation. Returns: - str: The hqslang name of the operation. - """ - + str: The hqslang name of the operation.""" def is_parametrized(self) -> bool: """ Return true when the operation has symbolic parameters. @@ -13780,7 +11506,6 @@ class PragmaAnnotatedOp(Operation): Returns: bool: True if the operation contains symbolic parameters, False if it does not. """ - def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> PragmaAnnotatedOp: @@ -13794,9 +11519,7 @@ class PragmaAnnotatedOp(Operation): self: The PRAGMA operation with the parameters substituted. Raises: - RuntimeError: The parameter substitution failed. - """ - + RuntimeError: The parameter substitution failed.""" def remap_qubits(self, mapping: Dict[int, int]) -> PragmaAnnotatedOp: """ Remap qubits in a clone of the PRAGMA operation. @@ -13808,32 +11531,25 @@ class PragmaAnnotatedOp(Operation): self: The PRAGMA operation with the qubits remapped. Raises: - RuntimeError: The qubit remapping failed. - """ - + RuntimeError: The qubit remapping failed.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. - Returns: - str: The json schema serialized to json - """ - + Returns: + str: The json schema serialized to json""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ + str: The minimum version of the qoqo library to deserialize this object.""" class QuantumRabi(Operation): """ @@ -13842,41 +11558,31 @@ class QuantumRabi(Operation): Args: qubit (int): The qubit the gate is applied to. mode (int): The mode the gate is applied to. - theta (CalculatorFloat): The strength of the interaction. - """ + theta (CalculatorFloat): The strength of the interaction.""" def __init__(self, qubit: int, mode: int, theta: Union[float, str]): return - def theta(self): """ - Returns value of attribute theta - """ - + Returns value of attribute theta""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -13893,9 +11599,7 @@ class QuantumRabi(Operation): Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -13907,9 +11611,7 @@ class QuantumRabi(Operation): Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -13917,15 +11619,12 @@ class QuantumRabi(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def qubit(self): """ Return the qubit the operation acts on Returns: - int - """ - + int""" def involved_modes(self) -> Union[Set[int], str]: """ List of modes the operation acts on. @@ -13933,7 +11632,6 @@ class QuantumRabi(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def remap_modes(self, mapping: Dict[int, int]): """ Remap the bosonic modes in copy of the operation. @@ -13945,40 +11643,31 @@ class QuantumRabi(Operation): self Raises: - PyValueError: Remapping could not be performed - """ - + PyValueError: Remapping could not be performed""" def mode(self): """ Return `mode` the bosonic Operation acts on. Returns: - int - """ - + int""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class LongitudinalCoupling(Operation): """ @@ -13987,41 +11676,31 @@ class LongitudinalCoupling(Operation): Args: qubit (int): The qubit the gate is applied to. mode (int): The mode the gate is applied to. - theta (CalculatorFloat): The strength of the interaction. - """ + theta (CalculatorFloat): The strength of the interaction.""" def __init__(self, qubit: int, mode: int, theta: Union[float, str]): return - def theta(self): """ - Returns value of attribute theta - """ - + Returns value of attribute theta""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -14038,9 +11717,7 @@ class LongitudinalCoupling(Operation): Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -14052,9 +11729,7 @@ class LongitudinalCoupling(Operation): Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -14062,15 +11737,12 @@ class LongitudinalCoupling(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def qubit(self): """ Return the qubit the operation acts on Returns: - int - """ - + int""" def involved_modes(self) -> Union[Set[int], str]: """ List of modes the operation acts on. @@ -14078,7 +11750,6 @@ class LongitudinalCoupling(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def remap_modes(self, mapping: Dict[int, int]): """ Remap the bosonic modes in copy of the operation. @@ -14090,40 +11761,31 @@ class LongitudinalCoupling(Operation): self Raises: - PyValueError: Remapping could not be performed - """ - + PyValueError: Remapping could not be performed""" def mode(self): """ Return `mode` the bosonic Operation acts on. Returns: - int - """ - + int""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class JaynesCummings(Operation): """ @@ -14132,41 +11794,31 @@ class JaynesCummings(Operation): Args: qubit (int): The qubit the gate is applied to. mode (int): The mode the gate is applied to. - theta (CalculatorFloat): The strength of the interaction. - """ + theta (CalculatorFloat): The strength of the interaction.""" def __init__(self, qubit: int, mode: int, theta: Union[float, str]): return - def theta(self): """ - Returns value of attribute theta - """ - + Returns value of attribute theta""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -14183,9 +11835,7 @@ class JaynesCummings(Operation): Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -14197,9 +11847,7 @@ class JaynesCummings(Operation): Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -14207,15 +11855,12 @@ class JaynesCummings(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def qubit(self): """ Return the qubit the operation acts on Returns: - int - """ - + int""" def involved_modes(self) -> Union[Set[int], str]: """ List of modes the operation acts on. @@ -14223,7 +11868,6 @@ class JaynesCummings(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def remap_modes(self, mapping: Dict[int, int]): """ Remap the bosonic modes in copy of the operation. @@ -14235,40 +11879,31 @@ class JaynesCummings(Operation): self Raises: - PyValueError: Remapping could not be performed - """ - + PyValueError: Remapping could not be performed""" def mode(self): """ Return `mode` the bosonic Operation acts on. Returns: - int - """ - + int""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class SingleExcitationStore(Operation): """ @@ -14279,36 +11914,28 @@ class SingleExcitationStore(Operation): Args: qubit (int): The qubit the gate is applied to. - mode (int): The mode the gate is applied to. - """ + mode (int): The mode the gate is applied to.""" def __init__(self, qubit: int, mode: int): return - def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -14325,9 +11952,7 @@ class SingleExcitationStore(Operation): Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -14339,9 +11964,7 @@ class SingleExcitationStore(Operation): Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -14349,15 +11972,12 @@ class SingleExcitationStore(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def qubit(self): """ Return the qubit the operation acts on Returns: - int - """ - + int""" def involved_modes(self) -> Union[Set[int], str]: """ List of modes the operation acts on. @@ -14365,7 +11985,6 @@ class SingleExcitationStore(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def remap_modes(self, mapping: Dict[int, int]): """ Remap the bosonic modes in copy of the operation. @@ -14377,40 +11996,31 @@ class SingleExcitationStore(Operation): self Raises: - PyValueError: Remapping could not be performed - """ - + PyValueError: Remapping could not be performed""" def mode(self): """ Return `mode` the bosonic Operation acts on. Returns: - int - """ - + int""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class SingleExcitationLoad(Operation): """ @@ -14421,36 +12031,28 @@ class SingleExcitationLoad(Operation): Args: qubit (int): The qubit the gate is applied to. - mode (int): The mode the gate is applied to. - """ + mode (int): The mode the gate is applied to.""" def __init__(self, qubit: int, mode: int): return - def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -14467,9 +12069,7 @@ class SingleExcitationLoad(Operation): Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -14481,9 +12081,7 @@ class SingleExcitationLoad(Operation): Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -14491,15 +12089,12 @@ class SingleExcitationLoad(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def qubit(self): """ Return the qubit the operation acts on Returns: - int - """ - + int""" def involved_modes(self) -> Union[Set[int], str]: """ List of modes the operation acts on. @@ -14507,7 +12102,6 @@ class SingleExcitationLoad(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def remap_modes(self, mapping: Dict[int, int]): """ Remap the bosonic modes in copy of the operation. @@ -14519,40 +12113,31 @@ class SingleExcitationLoad(Operation): self Raises: - PyValueError: Remapping could not be performed - """ - + PyValueError: Remapping could not be performed""" def mode(self): """ Return `mode` the bosonic Operation acts on. Returns: - int - """ - + int""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class CZQubitResonator(Operation): """ @@ -14562,36 +12147,28 @@ class CZQubitResonator(Operation): Args: qubit (int): The qubit the gate is applied to. - mode (int): The mode the gate is applied to. - """ + mode (int): The mode the gate is applied to.""" def __init__(self, qubit: int, mode: int): return - def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -14608,9 +12185,7 @@ class CZQubitResonator(Operation): Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -14622,9 +12197,7 @@ class CZQubitResonator(Operation): Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -14632,15 +12205,12 @@ class CZQubitResonator(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def qubit(self): """ Return the qubit the operation acts on Returns: - int - """ - + int""" def involved_modes(self) -> Union[Set[int], str]: """ List of modes the operation acts on. @@ -14648,7 +12218,6 @@ class CZQubitResonator(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def remap_modes(self, mapping: Dict[int, int]): """ Remap the bosonic modes in copy of the operation. @@ -14660,40 +12229,31 @@ class CZQubitResonator(Operation): self Raises: - PyValueError: Remapping could not be performed - """ - + PyValueError: Remapping could not be performed""" def mode(self): """ Return `mode` the bosonic Operation acts on. Returns: - int - """ - + int""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class SqrtPauliY(Operation): """ @@ -14712,31 +12272,24 @@ Args: def __init__(self, qubit: int): return - def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -14753,9 +12306,7 @@ Args: Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -14767,9 +12318,7 @@ Args: Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -14777,15 +12326,12 @@ Args: Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def qubit(self): """ Return the qubit the operation acts on Returns: - int - """ - + int""" def global_phase(self): """ Return the global phase :math:`g` of a unitary gate acting on one qubit @@ -14801,7 +12347,6 @@ Here global_phase is defined by Returns: CalculatorFloat """ - def alpha_r(self): """ Return the property alpha_r :math:`\alpha_r` of a unitary gate acting on one qubit @@ -14817,7 +12362,6 @@ Here alpha_r is defined by Returns: CalculatorFloat """ - def alpha_i(self): """ Return the property alpha_i :math:`\alpha_i` of a unitary gate acting on one qubit @@ -14831,7 +12375,6 @@ Return the property alpha_i :math:`\alpha_i` of a unitary gate acting on one qub Returns: CalculatorFloat """ - def beta_r(self): """ Return the property beta_r :math:`\beta_r` of a unitary gate acting on one qubit @@ -14847,7 +12390,6 @@ Here beta_r is defined by Returns: CalculatorFloat """ - def beta_i(self): """ Returns the property beta_i :math:`\beta_i` of a unitary gate acting on one qubit @@ -14864,7 +12406,6 @@ Here beta_i is defined by Returns: CalculatorFloat """ - def mul(self) -> Operation: """ Multiplies two compatible operations implementing OperateSingleQubitGate. @@ -14887,9 +12428,7 @@ Returns: multiplied = gate1.mul(gate2) print("Multiplied gate: ", multiplied) ``` - """ - def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -14898,32 +12437,25 @@ Returns: np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class InvSqrtPauliY(Operation): """ @@ -14942,31 +12474,24 @@ Args: def __init__(self, qubit: int): return - def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -14983,9 +12508,7 @@ Args: Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -14997,9 +12520,7 @@ Args: Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -15007,15 +12528,12 @@ Args: Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def qubit(self): """ Return the qubit the operation acts on Returns: - int - """ - + int""" def global_phase(self): """ Return the global phase :math:`g` of a unitary gate acting on one qubit @@ -15031,7 +12549,6 @@ Here global_phase is defined by Returns: CalculatorFloat """ - def alpha_r(self): """ Return the property alpha_r :math:`\alpha_r` of a unitary gate acting on one qubit @@ -15047,7 +12564,6 @@ Here alpha_r is defined by Returns: CalculatorFloat """ - def alpha_i(self): """ Return the property alpha_i :math:`\alpha_i` of a unitary gate acting on one qubit @@ -15061,7 +12577,6 @@ Return the property alpha_i :math:`\alpha_i` of a unitary gate acting on one qub Returns: CalculatorFloat """ - def beta_r(self): """ Return the property beta_r :math:`\beta_r` of a unitary gate acting on one qubit @@ -15077,7 +12592,6 @@ Here beta_r is defined by Returns: CalculatorFloat """ - def beta_i(self): """ Returns the property beta_i :math:`\beta_i` of a unitary gate acting on one qubit @@ -15094,7 +12608,6 @@ Here beta_i is defined by Returns: CalculatorFloat """ - def mul(self) -> Operation: """ Multiplies two compatible operations implementing OperateSingleQubitGate. @@ -15117,9 +12630,7 @@ Returns: multiplied = gate1.mul(gate2) print("Multiplied gate: ", multiplied) ``` - """ - def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -15128,32 +12639,25 @@ Returns: np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class InvSGate(Operation): """ @@ -15172,31 +12676,24 @@ Args: def __init__(self, qubit: int): return - def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -15213,9 +12710,7 @@ Args: Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -15227,9 +12722,7 @@ Args: Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -15237,15 +12730,12 @@ Args: Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def qubit(self): """ Return the qubit the operation acts on Returns: - int - """ - + int""" def global_phase(self): """ Return the global phase :math:`g` of a unitary gate acting on one qubit @@ -15261,7 +12751,6 @@ Here global_phase is defined by Returns: CalculatorFloat """ - def alpha_r(self): """ Return the property alpha_r :math:`\alpha_r` of a unitary gate acting on one qubit @@ -15277,7 +12766,6 @@ Here alpha_r is defined by Returns: CalculatorFloat """ - def alpha_i(self): """ Return the property alpha_i :math:`\alpha_i` of a unitary gate acting on one qubit @@ -15291,7 +12779,6 @@ Return the property alpha_i :math:`\alpha_i` of a unitary gate acting on one qub Returns: CalculatorFloat """ - def beta_r(self): """ Return the property beta_r :math:`\beta_r` of a unitary gate acting on one qubit @@ -15307,7 +12794,6 @@ Here beta_r is defined by Returns: CalculatorFloat """ - def beta_i(self): """ Returns the property beta_i :math:`\beta_i` of a unitary gate acting on one qubit @@ -15324,7 +12810,6 @@ Here beta_i is defined by Returns: CalculatorFloat """ - def mul(self) -> Operation: """ Multiplies two compatible operations implementing OperateSingleQubitGate. @@ -15347,9 +12832,7 @@ Returns: multiplied = gate1.mul(gate2) print("Multiplied gate: ", multiplied) ``` - """ - def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -15358,32 +12841,25 @@ Returns: np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class InvTGate(Operation): """ @@ -15402,31 +12878,24 @@ Args: def __init__(self, qubit: int): return - def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -15443,9 +12912,7 @@ Args: Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -15457,9 +12924,7 @@ Args: Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -15467,15 +12932,12 @@ Args: Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def qubit(self): """ Return the qubit the operation acts on Returns: - int - """ - + int""" def global_phase(self): """ Return the global phase :math:`g` of a unitary gate acting on one qubit @@ -15491,7 +12953,6 @@ Here global_phase is defined by Returns: CalculatorFloat """ - def alpha_r(self): """ Return the property alpha_r :math:`\alpha_r` of a unitary gate acting on one qubit @@ -15507,7 +12968,6 @@ Here alpha_r is defined by Returns: CalculatorFloat """ - def alpha_i(self): """ Return the property alpha_i :math:`\alpha_i` of a unitary gate acting on one qubit @@ -15521,7 +12981,6 @@ Return the property alpha_i :math:`\alpha_i` of a unitary gate acting on one qub Returns: CalculatorFloat """ - def beta_r(self): """ Return the property beta_r :math:`\beta_r` of a unitary gate acting on one qubit @@ -15537,7 +12996,6 @@ Here beta_r is defined by Returns: CalculatorFloat """ - def beta_i(self): """ Returns the property beta_i :math:`\beta_i` of a unitary gate acting on one qubit @@ -15554,7 +13012,6 @@ Here beta_i is defined by Returns: CalculatorFloat """ - def mul(self) -> Operation: """ Multiplies two compatible operations implementing OperateSingleQubitGate. @@ -15577,9 +13034,7 @@ Returns: multiplied = gate1.mul(gate2) print("Multiplied gate: ", multiplied) ``` - """ - def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -15588,32 +13043,25 @@ Returns: np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class SXGate(Operation): """ @@ -15632,31 +13080,24 @@ Args: def __init__(self, qubit: int): return - def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -15673,9 +13114,7 @@ Args: Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -15687,9 +13126,7 @@ Args: Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -15697,15 +13134,12 @@ Args: Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def qubit(self): """ Return the qubit the operation acts on Returns: - int - """ - + int""" def global_phase(self): """ Return the global phase :math:`g` of a unitary gate acting on one qubit @@ -15721,7 +13155,6 @@ Here global_phase is defined by Returns: CalculatorFloat """ - def alpha_r(self): """ Return the property alpha_r :math:`\alpha_r` of a unitary gate acting on one qubit @@ -15737,7 +13170,6 @@ Here alpha_r is defined by Returns: CalculatorFloat """ - def alpha_i(self): """ Return the property alpha_i :math:`\alpha_i` of a unitary gate acting on one qubit @@ -15751,7 +13183,6 @@ Return the property alpha_i :math:`\alpha_i` of a unitary gate acting on one qub Returns: CalculatorFloat """ - def beta_r(self): """ Return the property beta_r :math:`\beta_r` of a unitary gate acting on one qubit @@ -15767,7 +13198,6 @@ Here beta_r is defined by Returns: CalculatorFloat """ - def beta_i(self): """ Returns the property beta_i :math:`\beta_i` of a unitary gate acting on one qubit @@ -15784,7 +13214,6 @@ Here beta_i is defined by Returns: CalculatorFloat """ - def mul(self) -> Operation: """ Multiplies two compatible operations implementing OperateSingleQubitGate. @@ -15807,9 +13236,7 @@ Returns: multiplied = gate1.mul(gate2) print("Multiplied gate: ", multiplied) ``` - """ - def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -15818,32 +13245,25 @@ Returns: np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class InvSXGate(Operation): """ @@ -15862,31 +13282,24 @@ Args: def __init__(self, qubit: int): return - def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -15903,9 +13316,7 @@ Args: Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -15917,9 +13328,7 @@ Args: Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -15927,15 +13336,12 @@ Args: Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def qubit(self): """ Return the qubit the operation acts on Returns: - int - """ - + int""" def global_phase(self): """ Return the global phase :math:`g` of a unitary gate acting on one qubit @@ -15951,7 +13357,6 @@ Here global_phase is defined by Returns: CalculatorFloat """ - def alpha_r(self): """ Return the property alpha_r :math:`\alpha_r` of a unitary gate acting on one qubit @@ -15967,7 +13372,6 @@ Here alpha_r is defined by Returns: CalculatorFloat """ - def alpha_i(self): """ Return the property alpha_i :math:`\alpha_i` of a unitary gate acting on one qubit @@ -15981,7 +13385,6 @@ Return the property alpha_i :math:`\alpha_i` of a unitary gate acting on one qub Returns: CalculatorFloat """ - def beta_r(self): """ Return the property beta_r :math:`\beta_r` of a unitary gate acting on one qubit @@ -15997,7 +13400,6 @@ Here beta_r is defined by Returns: CalculatorFloat """ - def beta_i(self): """ Returns the property beta_i :math:`\beta_i` of a unitary gate acting on one qubit @@ -16014,7 +13416,6 @@ Here beta_i is defined by Returns: CalculatorFloat """ - def mul(self) -> Operation: """ Multiplies two compatible operations implementing OperateSingleQubitGate. @@ -16037,9 +13438,7 @@ Returns: multiplied = gate1.mul(gate2) print("Multiplied gate: ", multiplied) ``` - """ - def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -16048,66 +13447,51 @@ Returns: np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class TripleControlledPauliX(Operation): """ The triple-controlled PauliX gate. - """ def __init__(self): return - def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -16124,9 +13508,7 @@ class TripleControlledPauliX(Operation): Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -16138,9 +13520,7 @@ class TripleControlledPauliX(Operation): Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -16148,35 +13528,24 @@ class TripleControlledPauliX(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def control_0(self): """ - Returns control_0 qubit of the four-qubit operation - """ - + Returns control_0 qubit of the four-qubit operation""" def control_1(self): """ - Returns control_1 qubit of the four-qubit operation - """ - + Returns control_1 qubit of the four-qubit operation""" def control_2(self): """ - Returns control_2 qubit of the four-qubit operation - """ - + Returns control_2 qubit of the four-qubit operation""" def target(self): """ - Returns target qubit of the four-qubit operation - """ - + Returns target qubit of the four-qubit operation""" def circuit(self): """ Returns circuit implementing the FourQubitGateOperation Returns: - Circuit - """ - + Circuit""" def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -16185,66 +13554,51 @@ class TripleControlledPauliX(Operation): np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class TripleControlledPauliZ(Operation): """ The triple-controlled PauliZ gate. - """ def __init__(self): return - def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -16261,9 +13615,7 @@ class TripleControlledPauliZ(Operation): Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -16275,9 +13627,7 @@ class TripleControlledPauliZ(Operation): Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -16285,35 +13635,24 @@ class TripleControlledPauliZ(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def control_0(self): """ - Returns control_0 qubit of the four-qubit operation - """ - + Returns control_0 qubit of the four-qubit operation""" def control_1(self): """ - Returns control_1 qubit of the four-qubit operation - """ - + Returns control_1 qubit of the four-qubit operation""" def control_2(self): """ - Returns control_2 qubit of the four-qubit operation - """ - + Returns control_2 qubit of the four-qubit operation""" def target(self): """ - Returns target qubit of the four-qubit operation - """ - + Returns target qubit of the four-qubit operation""" def circuit(self): """ Returns circuit implementing the FourQubitGateOperation Returns: - Circuit - """ - + Circuit""" def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -16322,71 +13661,54 @@ class TripleControlledPauliZ(Operation): np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class TripleControlledPhaseShift(Operation): """ The triple-controlled PhaseShift gate. - """ def __init__(self): return - def theta(self): """ - Returns value of attribute theta - """ - + Returns value of attribute theta""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -16403,9 +13725,7 @@ class TripleControlledPhaseShift(Operation): Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -16417,9 +13737,7 @@ class TripleControlledPhaseShift(Operation): Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -16427,35 +13745,24 @@ class TripleControlledPhaseShift(Operation): Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def control_0(self): """ - Returns control_0 qubit of the four-qubit operation - """ - + Returns control_0 qubit of the four-qubit operation""" def control_1(self): """ - Returns control_1 qubit of the four-qubit operation - """ - + Returns control_1 qubit of the four-qubit operation""" def control_2(self): """ - Returns control_2 qubit of the four-qubit operation - """ - + Returns control_2 qubit of the four-qubit operation""" def target(self): """ - Returns target qubit of the four-qubit operation - """ - + Returns target qubit of the four-qubit operation""" def circuit(self): """ Returns circuit implementing the FourQubitGateOperation Returns: - Circuit - """ - + Circuit""" def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -16464,32 +13771,25 @@ class TripleControlledPhaseShift(Operation): np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class ControlledSWAP(Operation): """ @@ -16515,31 +13815,24 @@ Args: def __init__(self, control: int, target_0: int, target_1: int): return - def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -16556,9 +13849,7 @@ Args: Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits in the ControlledSWAP operation @@ -16570,9 +13861,7 @@ Args: Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved qubits in the ControlledSWAP operation. @@ -16580,30 +13869,21 @@ Args: Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def control(self): """ - Returns control qubit of the three-qubit operation - """ - + Returns control qubit of the three-qubit operation""" def target_0(self): """ - Returns target_0 qubit of the three-qubit operation - """ - + Returns target_0 qubit of the three-qubit operation""" def target_1(self): """ - Returns target_1 qubit of the three-qubit operation - """ - + Returns target_1 qubit of the three-qubit operation""" def circuit(self): """ Returns circuit implementing the ThreeQubitGateOperation Returns: - Circuit - """ - + Circuit""" def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -16612,32 +13892,25 @@ Args: np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class PhaseShiftedControlledControlledZ(Operation): """ @@ -16669,36 +13942,27 @@ Args: self, control_0: int, control_1: int, target: int, phi: Union[float, str] ): return - def phi(self): """ - Returns value of attribute phi - """ - + Returns value of attribute phi""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -16715,9 +13979,7 @@ Args: Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -16729,9 +13991,7 @@ Args: Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -16739,30 +13999,21 @@ Args: Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def control_0(self): """ - Returns control_0 qubit of the three-qubit operation - """ - + Returns control_0 qubit of the three-qubit operation""" def control_1(self): """ - Returns control_1 qubit of the three-qubit operation - """ - + Returns control_1 qubit of the three-qubit operation""" def target(self): """ - Returns target qubit of the three-qubit operation - """ - + Returns target qubit of the three-qubit operation""" def circuit(self): """ Returns circuit implementing the ThreeQubitGateOperation Returns: - Circuit - """ - + Circuit""" def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -16771,32 +14022,25 @@ Args: np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" class PhaseShiftedControlledControlledPhase(Operation): """ @@ -16834,41 +14078,30 @@ Args: theta: Union[float, str], ): return - def theta(self): """ - Returns value of attribute theta - """ - + Returns value of attribute theta""" def phi(self): """ - Returns value of attribute phi - """ - + Returns value of attribute phi""" def is_parametrized(self) -> bool: """ Returns true if operation contains symbolic parameters Returns: - bool: Whether or not the operation contains symbolic parameters. - """ - + bool: Whether or not the operation contains symbolic parameters.""" def tags(self) -> List[str]: """ Returns tags identifying the Operation Returns: - List[str]: The tags identifying the operation - """ - + List[str]: The tags identifying the operation""" def hqslang(self) -> str: """ Returns hqslang name of Operation Returns: - str: The name - """ - + str: The name""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Operation: @@ -16885,9 +14118,7 @@ Args: Operation: The operation with the parameters substituted Raises: - RuntimeError: Parameter Substitution failed - """ - + RuntimeError: Parameter Substitution failed""" def remap_qubits(self, mapping: Dict[int, int]) -> Operation: """ Remap qubits @@ -16899,9 +14130,7 @@ Args: Operation: The operation with the remapped qubits Raises: - RuntimeError: Qubit remapping failed - """ - + RuntimeError: Qubit remapping failed""" def involved_qubits(self) -> Union[Set[int], str]: """ List all involved Qubits @@ -16909,30 +14138,21 @@ Args: Returns: Union[Set[int], str]: The involved qubits as a set or 'ALL' if all qubits are involved """ - def control_0(self): """ - Returns control_0 qubit of the three-qubit operation - """ - + Returns control_0 qubit of the three-qubit operation""" def control_1(self): """ - Returns control_1 qubit of the three-qubit operation - """ - + Returns control_1 qubit of the three-qubit operation""" def target(self): """ - Returns target qubit of the three-qubit operation - """ - + Returns target qubit of the three-qubit operation""" def circuit(self): """ Returns circuit implementing the ThreeQubitGateOperation Returns: - Circuit - """ - + Circuit""" def unitary_matrix(self) -> numpy.ndarray: """ Return unitary matrix of gate. @@ -16941,9 +14161,7 @@ Args: np.ndarray: matrix of gate. Raises: - ValueError: Error symbolic operation cannot return float unitary matrix - """ - + ValueError: Error symbolic operation cannot return float unitary matrix""" def powercf(self) -> PhaseShiftedControlledControlledPhase: """ Returns Rotated gate raised to power @@ -16953,29 +14171,22 @@ Args: Returns: Self: gate raised to the power of `power` - """ - def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ + str: The json schema serialized to json""" diff --git a/qoqo/python/qoqo/qoqo.pyi b/qoqo/python/qoqo/qoqo.pyi index 99e723b83..466bfdb26 100644 --- a/qoqo/python/qoqo/qoqo.pyi +++ b/qoqo/python/qoqo/qoqo.pyi @@ -29,12 +29,10 @@ class Circuit: """ Circuit of Operations. - A quantum program is represented as a linear sequence of Operations. - """ + A quantum program is represented as a linear sequence of Operations.""" def __init__(self): return - def __add__(self, rhs: Operation | Circuit) -> Circuit: """ Implement the `+` (__add__) magic method to add two Circuits. @@ -47,9 +45,7 @@ class Circuit: Raises: TypeError: Left hand side can not be converted to Circuit. - TypeError: Right hand side cannot be converted to Operation or Circuit. - """ - + TypeError: Right hand side cannot be converted to Operation or Circuit.""" def __iadd__(self, other: Operation | Circuit) -> Circuit: """ Implement the `+=` (__iadd__) magic method to add a Operation to a Circuit. @@ -61,9 +57,7 @@ class Circuit: Circuit: self + other the two Circuits added together as the first one. Raises: - TypeError: Right hand side cannot be converted to Operation or Circuit. - """ - + TypeError: Right hand side cannot be converted to Operation or Circuit.""" def substitute_parameters( self, substitution_parameters: Dict[str, float] ) -> Circuit: @@ -77,9 +71,7 @@ class Circuit: self: The Circuit with the parameters substituted. Raises: - RuntimeError: The parameter substitution failed. - """ - + RuntimeError: The parameter substitution failed.""" def remap_qubits(self, mapping: Dict[int, int]) -> Circuit: """ Remap qubits in operations in clone of Circuit. @@ -91,9 +83,7 @@ class Circuit: self: The Circuit with the qubits remapped. Raises: - RuntimeError: The qubit remapping failed. - """ - + RuntimeError: The qubit remapping failed.""" def overrotate(self) -> Circuit: """ Return clone of the circuit with all overrotation Pragmas applied. @@ -114,9 +104,7 @@ class Circuit: >>> circuit_overrotated = circuit.overrotate() print(circuit) print(circuit_overrotated) - """ - def count_occurences(self, operations: List[str]) -> int: """ Count the number of occurences of a set of operation tags in the circuit. @@ -125,25 +113,19 @@ class Circuit: operations (List[str]): List of operation tags that should be counted. Returns: - int: The number of occurences of these operation tags. - """ - + int: The number of occurences of these operation tags.""" def get_operation_types(self) -> Set[str]: """ Return a list of the hqslang names of all operations occuring in the circuit. Returns: - Set[str]: The operation types in the Circuit. - """ - + Set[str]: The operation types in the Circuit.""" def _qoqo_versions(self) -> Tuple[str, str]: """ Return the roqoqo and qoqo versions from when the code was compiled. Returns: - Tuple[str, str]: The roqoqo and qoqo versions. - """ - + Tuple[str, str]: The roqoqo and qoqo versions.""" def to_bincode(self) -> bytearray: """ Return the bincode representation of the Circuit using the [bincode] crate. @@ -152,9 +134,7 @@ class Circuit: ByteArray: The serialized Circuit (in [bincode] form). Raises: - ValueError: Cannot serialize Circuit to bytes. - """ - + ValueError: Cannot serialize Circuit to bytes.""" def from_bincode(self, input: bytearray) -> Circuit: """ Convert the bincode representation of the Circuit to a Circuit using the [bincode] crate. @@ -167,9 +147,7 @@ class Circuit: Raises: TypeError: Input cannot be converted to byte array. - ValueError: Input cannot be deserialized to Circuit. - """ - + ValueError: Input cannot be deserialized to Circuit.""" def to_json(self) -> str: """ Return the json representation of the Circuit. @@ -178,33 +156,25 @@ class Circuit: str: The serialized form of Circuit. Raises: - ValueError: Cannot serialize Circuit to json. - """ - + ValueError: Cannot serialize Circuit to json.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ - + str: The json schema serialized to json""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ - + str: The minimum version of the qoqo library to deserialize this object.""" def from_json(self, input: str) -> Circuit: """ Convert the json representation of a Circuit to a Circuit. @@ -216,9 +186,7 @@ class Circuit: Circuit: The deserialized Circuit. Raises: - ValueError: Input cannot be deserialized to Circuit. - """ - + ValueError: Input cannot be deserialized to Circuit.""" def get(self, index: int) -> Operation: """ Return a copy of the Operation at a certain index of the Circuit. @@ -230,9 +198,7 @@ class Circuit: Operation: The operation at the given index (if it exists). Raises: - IndexError: Index out of range. - """ - + IndexError: Index out of range.""" def get_slice(self, start: Optional[int], stop: Optional[int]) -> Circuit: """ Return the copy of a slice of the Circuit. @@ -247,9 +213,7 @@ class Circuit: Raises: IndexError: Stop index smaller than start index. IndexError: Stop index out of range. - IndexError: Start index out of range. - """ - + IndexError: Start index out of range.""" def definitions(self) -> List[Operation]: """ Return a list of definitions in the Circuit. @@ -257,17 +221,13 @@ class Circuit: Definitions need to be unique. Returns: - List[Operation]: A vector of the definitions in the Circuit. - """ - + List[Operation]: A vector of the definitions in the Circuit.""" def operations(self) -> List[Operation]: """ Return a list of all operations in the Circuit. Returns: - List[Operation]: A vector of the operations in the Circuit. - """ - + List[Operation]: A vector of the operations in the Circuit.""" def filter_by_tag(self, tag: str) -> List[Operation]: """ Return a list of operations with given tag. @@ -278,14 +238,12 @@ class Circuit: Returns: List[Operation]: A vector of the operations with the specified tag in the Circuit. """ - def add(self, op: Operation): """ Add an Operation to Circuit. Args: - op (Operation): The Operation to add to the Circuit. - """ + op (Operation): The Operation to add to the Circuit.""" class QuantumProgram: """ @@ -301,29 +259,23 @@ class QuantumProgram: The QuantumProgram should correspond as closely as possible to a normal multi-parameter function in classical computing that can be called with a set of parameters and returns a result. It is the intended way to interface between normal program code and roqoqo based quantum programs. - """ def __init__(self): return - def measurement(self): """ Returns the measurement attribute of the QuantumProgram as Python object. Returns: PyObject corresponding to the qoqo measurement type of the QuantumProgram, - i.e. PauliZProduct, CheatedPauliZProduct, Cheated or ClassicalRegister. - """ - + i.e. PauliZProduct, CheatedPauliZProduct, Cheated or ClassicalRegister.""" def input_parameter_names(self): """ Returns the input_parameter_names attribute of the qoqo QuantumProgram. Returns: - List of input parameter names. - """ - + List of input parameter names.""" def run(self, backend: Backend, parameters: Optional[List[float]]): """ Runs the QuantumProgram and returns expectation values. @@ -335,7 +287,6 @@ class QuantumProgram: backend (Backend): The backend the program is executed on. parameters (Optional[List[float]]): List of float parameters of the function call in order of `input_parameter_names` """ - def run_registers(self, backend: Backend, parameters: Optional[List[float]]): """ Runs the QuantumProgram and returns the classical registers of the quantum program. @@ -350,15 +301,12 @@ class QuantumProgram: backend (Backend): The backend the program is executed on. parameters (Optional[List[float]]): List of float parameters of the function call in order of `input_parameter_names` """ - def _qoqo_versions(self) -> Tuple[str, str]: """ Return the roqoqo and qoqo versions from when the code was compiled. Returns: - Tuple[str, str]: The roqoqo and qoqo versions. - """ - + Tuple[str, str]: The roqoqo and qoqo versions.""" def to_bincode(self) -> bytearray: """ Return the bincode representation of the QuantumProgram using the [bincode] crate. @@ -367,9 +315,7 @@ class QuantumProgram: ByteArray: The serialized QuantumProgram (in [bincode] form). Raises: - ValueError: Cannot serialize QuantumProgram to bytes. - """ - + ValueError: Cannot serialize QuantumProgram to bytes.""" def from_bincode(self, input: bytearray) -> QuantumProgram: """ Convert the bincode representation of the QuantumProgram to a QuantumProgram using the [bincode] crate. @@ -382,9 +328,7 @@ class QuantumProgram: Raises: TypeError: Input cannot be converted to byte array. - ValueError: Input cannot be deserialized to QuantumProgram. - """ - + ValueError: Input cannot be deserialized to QuantumProgram.""" def to_json(self) -> str: """ Return the json representation of the QuantumProgram. @@ -393,9 +337,7 @@ class QuantumProgram: str: The serialized form of QuantumProgram. Raises: - ValueError: Cannot serialize QuantumProgram to json. - """ - + ValueError: Cannot serialize QuantumProgram to json.""" def from_json(self, input: str) -> QuantumProgram: """ Convert the json representation of a QuantumProgram to a QuantumProgram. @@ -407,42 +349,33 @@ class QuantumProgram: QuantumProgram: The deserialized QuantumProgram. Raises: - ValueError: Input cannot be deserialized to QuantumProgram. - """ - + ValueError: Input cannot be deserialized to QuantumProgram.""" def json_schema(self) -> str: """ Return the JsonSchema for the json serialisation of the class. Returns: - str: The json schema serialized to json - """ - + str: The json schema serialized to json""" def current_version(self) -> str: """ Returns the current version of the qoqo library . Returns: - str: The current version of the library. - """ - + str: The current version of the library.""" def min_supported_version(self) -> str: """ Return the minimum version of qoqo that supports this object. Returns: - str: The minimum version of the qoqo library to deserialize this object. - """ + str: The minimum version of the qoqo library to deserialize this object.""" class CircuitDag: """ Represents the Direct Acyclic Graph (DAG) of a Circuit. - """ def __init__(self): return - def from_circuit(self, circuit: Circuit) -> CircuitDag: """ Create a CircuitDag from a given Circuit; @@ -451,15 +384,11 @@ class CircuitDag: circuit (Circuit): The Circuit to build the new CircuitDag from. Returns: - self: The new CircuitDag. - """ - + self: The new CircuitDag.""" def to_circuit(self): """ Transforms the CircuitDag into a Circuit. - """ - def add_to_back(self, op: Operation): """ Add an Operation to the back of the CircuitDag, if necessary. @@ -468,9 +397,7 @@ class CircuitDag: op (Operation): The Operation to add to the back of the CircuitDag. Raises: - TypeError: The Python Object cannot be converted to Operation. - """ - + TypeError: The Python Object cannot be converted to Operation.""" def add_to_front(self, op: Operation): """ Add an Operation to the front of the CircuitDag, if necessary. @@ -479,9 +406,7 @@ class CircuitDag: op (Operation): The Operation to add to the front of the CircuitDag. Raises: - TypeError: The Python Object cannot be converted to Operation. - """ - + TypeError: The Python Object cannot be converted to Operation.""" def execution_blocked( self, already_executed: List[int], to_be_executed: int ) -> List[int]: @@ -493,9 +418,7 @@ class CircuitDag: to_be_executed (int): NodeIndex of the operation that should be executed next. Returns: - List[int]: List containing the sorted blocking elements. - """ - + List[int]: List containing the sorted blocking elements.""" def blocking_predecessors( self, already_executed: List[int], to_be_executed: int ) -> List[int]: @@ -512,9 +435,7 @@ class CircuitDag: to_be_executed (int): NodeIndex of the Operation that should be executed next. Returns: - List[int]: List containing the sorted blocking elements. - """ - + List[int]: List containing the sorted blocking elements.""" def new_front_layer( self, already_executed: List[int], @@ -531,15 +452,12 @@ class CircuitDag: current_front_layer (List[int]): List of NodeIndices in the current front layer ready to be executed if physically possible. to_be_executed (int): NodeIndex of the operation that should be executed next. """ - def parallel_blocks(self): """ Returns an iterator over the possible parallel blocks in circuit that can be executed simultaneously Returns an Iterator over Vectors of references to the NodeIndices in the parallel block as well - as references to the Operation in the blocks - """ - + as references to the Operation in the blocks""" def get(self, index: int) -> Operation: """ Given a NodeIndex, returns the Operation contained in the node of @@ -552,17 +470,13 @@ class CircuitDag: Operation: The Operation at the given index (if it exists). Raises: - IndexError: Index out of range. - """ - + IndexError: Index out of range.""" def _qoqo_versions(self) -> Tuple[str, str]: """ Return the roqoqo and qoqo versions from when the code was compiled. Returns: - Tuple[str, str]: The roqoqo and qoqo versions. - """ - + Tuple[str, str]: The roqoqo and qoqo versions.""" def to_bincode(self) -> bytearray: """ Return the bincode representation of the CircuitDag using the [bincode] crate. @@ -571,9 +485,7 @@ class CircuitDag: ByteArray: The serialized CircuitDag (in [bincode] form). Raises: - ValueError: Cannot serialize CircuitDag to bytes. - """ - + ValueError: Cannot serialize CircuitDag to bytes.""" def from_bincode(self, input: bytearray) -> CircuitDag: """ Convert the bincode representation of the CircuitDag to a CircuitDag using the [bincode] crate. @@ -586,57 +498,43 @@ class CircuitDag: Raises: TypeError: Input cannot be converted to byte array. - ValueError: Input cannot be deserialized to CircuitDag. - """ - + ValueError: Input cannot be deserialized to CircuitDag.""" def successors(self): """ Returns the list of the successors of a given node in the CircuitDag. - """ - def commuting_operations(self) -> List[int]: """ Returns the list of nodes of commuting operations in CircuitDag. Returns: - List[int]: The list of nodes of commuting operations. - """ - + List[int]: The list of nodes of commuting operations.""" def first_parallel_block(self) -> Set[int]: """ Returns a set containing the nodes in the first parallel block. Returns: - Set[int]: The set of nodes in the first parallel block. - """ - + Set[int]: The set of nodes in the first parallel block.""" def last_parallel_block(self) -> Set[int]: """ Returns a set containing the nodes in the last parallel block. Returns: - Set[int]: The set of nodes in the last parallel block. - """ - + Set[int]: The set of nodes in the last parallel block.""" def first_operation_involving_qubit(self) -> Dict[int, int]: """ Returns a dictionary where a key represents a qubit and its value represents the first node that involves that qubit. Returns: - Dict[int, int]: The dictionary of {qubit: node} elements. - """ - + Dict[int, int]: The dictionary of {qubit: node} elements.""" def last_operation_involving_qubit(self) -> Dict[int, int]: """ Returns a dictionary where a key represents a qubit and its value represents the last node that involves that qubit. Returns: - Dict[int, int]: The dictionary of {qubit: node} elements. - """ - + Dict[int, int]: The dictionary of {qubit: node} elements.""" def first_operation_involving_classical(self) -> Dict[(str, int), int]: """ Returns a dictionary where a key is composed by the name and the size @@ -644,9 +542,7 @@ class CircuitDag: register. Returns: - Dict[(str, int), int]: The dictionary of {(str, int), int} elements. - """ - + Dict[(str, int), int]: The dictionary of {(str, int), int} elements.""" def last_operation_involving_classical(self) -> Dict[(str, int), int]: """ Returns a dictionary where a key is composed by the name and the size @@ -654,8 +550,7 @@ class CircuitDag: register. Returns: - Dict[(str, int), int]: The dictionary of {(str, int), int} elements. - """ + Dict[(str, int), int]: The dictionary of {(str, int), int} elements.""" class Operation: """ @@ -670,7 +565,6 @@ class Operation: PRAGMAs are operations that can be used when running a simulation of a quantum computing program. Measurement Operations are operations that perform a measurement either on a quantum computing device (MeasureQubit) or on a simulation of a quantum computing program (PRAGMA measurement operations). - """ def __init__(self): diff --git a/qoqo/src/circuit.rs b/qoqo/src/circuit.rs index 54b91d17c..29370954b 100644 --- a/qoqo/src/circuit.rs +++ b/qoqo/src/circuit.rs @@ -274,7 +274,7 @@ impl CircuitWrapper { #[staticmethod] pub fn from_bincode(input: &Bound) -> PyResult { let bytes = input - .as_gil_ref() + .as_ref() .extract::>() .map_err(|_| PyTypeError::new_err("Input cannot be converted to byte array"))?; @@ -379,6 +379,7 @@ impl CircuitWrapper { /// IndexError: Stop index smaller than start index. /// IndexError: Stop index out of range. /// IndexError: Start index out of range. + #[pyo3(signature = (start=None, stop=None))] pub fn get_slice(&self, start: Option, stop: Option) -> PyResult { let start = start.unwrap_or_default(); let stop = match stop { diff --git a/qoqo/src/circuitdag.rs b/qoqo/src/circuitdag.rs index ac9a7522a..75604ef97 100644 --- a/qoqo/src/circuitdag.rs +++ b/qoqo/src/circuitdag.rs @@ -352,7 +352,7 @@ impl CircuitDagWrapper { #[pyo3(text_signature = "(input)")] pub fn from_bincode(input: &Bound) -> PyResult { let bytes = input - .as_gil_ref() + .as_ref() .extract::>() .map_err(|_| PyTypeError::new_err("Input cannot be converted to byte array"))?; @@ -456,7 +456,7 @@ impl CircuitDagWrapper { /// /// Fallible conversion of generic python object to [roqoqo::CircuitDag]. pub fn convert_into_circuitdag(input: &Bound) -> Result { - if let Ok(try_downcast) = input.as_gil_ref().extract::() { + if let Ok(try_downcast) = input.as_ref().extract::() { return Ok(try_downcast.internal); } // Everything that follows tries to extract the circuitdag when two separately diff --git a/qoqo/src/devices/mod.rs b/qoqo/src/devices/mod.rs index 86700b02d..74c8e9513 100644 --- a/qoqo/src/devices/mod.rs +++ b/qoqo/src/devices/mod.rs @@ -36,7 +36,7 @@ pub use all_to_all::AllToAllDeviceWrapper; /// A wrapper around a python object that implements the ChainWithEnvironment trait. /// /// Can be used to avoid deserializain the python object. -#[derive(Clone, Debug)] +#[derive(Debug)] pub struct ChainWithEnvironmentCapsule { internal: Py, } diff --git a/qoqo/src/measurements/basis_rotation_measurement.rs b/qoqo/src/measurements/basis_rotation_measurement.rs index 4940bbecd..ddd94c676 100644 --- a/qoqo/src/measurements/basis_rotation_measurement.rs +++ b/qoqo/src/measurements/basis_rotation_measurement.rs @@ -258,7 +258,7 @@ impl PauliZProductWrapper { #[staticmethod] pub fn from_bincode(input: &Bound) -> PyResult { let bytes = input - .as_gil_ref() + .as_ref() .extract::>() .map_err(|_| PyTypeError::new_err("Input cannot be converted to byte array"))?; diff --git a/qoqo/src/measurements/cheated_basis_rotation_measurement.rs b/qoqo/src/measurements/cheated_basis_rotation_measurement.rs index 65de0ff48..f4799e11b 100644 --- a/qoqo/src/measurements/cheated_basis_rotation_measurement.rs +++ b/qoqo/src/measurements/cheated_basis_rotation_measurement.rs @@ -258,7 +258,7 @@ impl CheatedPauliZProductWrapper { #[staticmethod] pub fn from_bincode(input: &Bound) -> PyResult { let bytes = input - .as_gil_ref() + .as_ref() .extract::>() .map_err(|_| PyTypeError::new_err("Input cannot be converted to byte array"))?; diff --git a/qoqo/src/measurements/cheated_measurement.rs b/qoqo/src/measurements/cheated_measurement.rs index 821028493..daaa49e20 100644 --- a/qoqo/src/measurements/cheated_measurement.rs +++ b/qoqo/src/measurements/cheated_measurement.rs @@ -257,7 +257,7 @@ impl CheatedWrapper { #[staticmethod] pub fn from_bincode(input: &Bound) -> PyResult { let bytes = input - .as_gil_ref() + .as_ref() .extract::>() .map_err(|_| PyTypeError::new_err("Input cannot be converted to byte array"))?; diff --git a/qoqo/src/measurements/classical_register_measurement.rs b/qoqo/src/measurements/classical_register_measurement.rs index 79a754bfb..6daac14d2 100644 --- a/qoqo/src/measurements/classical_register_measurement.rs +++ b/qoqo/src/measurements/classical_register_measurement.rs @@ -189,7 +189,7 @@ impl ClassicalRegisterWrapper { #[staticmethod] pub fn from_bincode(input: &Bound) -> PyResult { let bytes = input - .as_gil_ref() + .as_ref() .extract::>() .map_err(|_| PyTypeError::new_err("Input cannot be converted to byte array"))?; diff --git a/qoqo/src/measurements/measurement_auxiliary_data_input.rs b/qoqo/src/measurements/measurement_auxiliary_data_input.rs index b0611c473..64f6062a8 100644 --- a/qoqo/src/measurements/measurement_auxiliary_data_input.rs +++ b/qoqo/src/measurements/measurement_auxiliary_data_input.rs @@ -195,7 +195,7 @@ impl PauliZProductInputWrapper { #[staticmethod] pub fn from_bincode(input: &Bound) -> PyResult { let bytes = input - .as_gil_ref() + .as_ref() .extract::>() .map_err(|_| PyTypeError::new_err("Input cannot be converted to byte array"))?; @@ -427,7 +427,7 @@ impl CheatedPauliZProductInputWrapper { #[staticmethod] pub fn from_bincode(input: &Bound) -> PyResult { let bytes = input - .as_gil_ref() + .as_ref() .extract::>() .map_err(|_| PyTypeError::new_err("Input cannot be converted to byte array"))?; @@ -628,7 +628,7 @@ impl CheatedInputWrapper { #[staticmethod] pub fn from_bincode(input: &Bound) -> PyResult { let bytes = input - .as_gil_ref() + .as_ref() .extract::>() .map_err(|_| PyTypeError::new_err("Input cannot be converted to byte array"))?; diff --git a/qoqo/src/noise_models/continuous_decoherence.rs b/qoqo/src/noise_models/continuous_decoherence.rs index db83a4c35..a380944ec 100644 --- a/qoqo/src/noise_models/continuous_decoherence.rs +++ b/qoqo/src/noise_models/continuous_decoherence.rs @@ -54,6 +54,7 @@ pub struct ContinuousDecoherenceModelWrapper { impl ContinuousDecoherenceModelWrapper { /// Create a new ContinuousDecoherenceModel #[new] + #[pyo3(signature = (noise_operator=None))] pub fn new(noise_operator: Option<&Bound>) -> PyResult { if let Some(lindblad_operator) = noise_operator { let noise_operator: struqture::spins::PlusMinusLindbladNoiseOperator = @@ -100,7 +101,7 @@ impl ContinuousDecoherenceModelWrapper { #[staticmethod] #[pyo3(text_signature = "(input)")] pub fn from_bincode(input: &Bound) -> PyResult { - let bytes = input.as_gil_ref().extract::>().map_err(|_| { + let bytes = input.as_ref().extract::>().map_err(|_| { pyo3::exceptions::PyTypeError::new_err("Input cannot be converted to byte array") })?; let noise_model: NoiseModel = bincode::deserialize(&bytes[..]).map_err(|_| { diff --git a/qoqo/src/noise_models/decoherence_on_gate.rs b/qoqo/src/noise_models/decoherence_on_gate.rs index 2ac00f38e..897727b7a 100644 --- a/qoqo/src/noise_models/decoherence_on_gate.rs +++ b/qoqo/src/noise_models/decoherence_on_gate.rs @@ -324,7 +324,7 @@ impl DecoherenceOnGateModelWrapper { #[staticmethod] #[pyo3(text_signature = "(input)")] pub fn from_bincode(input: &Bound) -> PyResult { - let bytes = input.as_gil_ref().extract::>().map_err(|_| { + let bytes = input.as_ref().extract::>().map_err(|_| { pyo3::exceptions::PyTypeError::new_err("Input cannot be converted to byte array") })?; let noise_model: NoiseModel = bincode::deserialize(&bytes[..]).map_err(|_| { diff --git a/qoqo/src/noise_models/decoherence_on_idle.rs b/qoqo/src/noise_models/decoherence_on_idle.rs index 1c4b8ddab..9d84dfa08 100644 --- a/qoqo/src/noise_models/decoherence_on_idle.rs +++ b/qoqo/src/noise_models/decoherence_on_idle.rs @@ -53,6 +53,7 @@ pub struct DecoherenceOnIdleModelWrapper { impl DecoherenceOnIdleModelWrapper { /// Create a new DecoherenceOnIdleModel #[new] + #[pyo3(signature = (noise_operator=None))] pub fn new(noise_operator: Option<&Bound>) -> PyResult { if let Some(lindblad_operator) = noise_operator { let noise_operator = @@ -93,7 +94,7 @@ impl DecoherenceOnIdleModelWrapper { #[staticmethod] #[pyo3(text_signature = "(input)")] pub fn from_bincode(input: &Bound) -> PyResult { - let bytes = input.as_gil_ref().extract::>().map_err(|_| { + let bytes = input.as_ref().extract::>().map_err(|_| { pyo3::exceptions::PyTypeError::new_err("Input cannot be converted to byte array") })?; let noise_model: NoiseModel = bincode::deserialize(&bytes[..]).map_err(|_| { diff --git a/qoqo/src/noise_models/imperfect_readout.rs b/qoqo/src/noise_models/imperfect_readout.rs index b0b5aade8..a15a55b9d 100644 --- a/qoqo/src/noise_models/imperfect_readout.rs +++ b/qoqo/src/noise_models/imperfect_readout.rs @@ -93,7 +93,7 @@ impl ImperfectReadoutModelWrapper { #[staticmethod] #[pyo3(text_signature = "(input)")] pub fn from_bincode(input: &Bound) -> PyResult { - let bytes = input.as_gil_ref().extract::>().map_err(|_| { + let bytes = input.as_ref().extract::>().map_err(|_| { pyo3::exceptions::PyTypeError::new_err("Input cannot be converted to byte array") })?; let noise_model: NoiseModel = bincode::deserialize(&bytes[..]).map_err(|_| { diff --git a/qoqo/src/noise_models/overrotation.rs b/qoqo/src/noise_models/overrotation.rs index 0f197363d..650137704 100644 --- a/qoqo/src/noise_models/overrotation.rs +++ b/qoqo/src/noise_models/overrotation.rs @@ -143,7 +143,7 @@ impl SingleQubitOverrotationDescriptionWrapper { pub fn from_bincode( input: &Bound, ) -> PyResult { - let bytes = input.as_gil_ref().extract::>().map_err(|_| { + let bytes = input.as_ref().extract::>().map_err(|_| { pyo3::exceptions::PyTypeError::new_err("Input cannot be converted to byte array") })?; let noise_description: SingleQubitOverrotationDescription = @@ -443,7 +443,7 @@ impl SingleQubitOverrotationOnGateWrapper { #[staticmethod] #[pyo3(text_signature = "(input)")] pub fn from_bincode(input: &Bound) -> PyResult { - let bytes = input.as_gil_ref().extract::>().map_err(|_| { + let bytes = input.as_ref().extract::>().map_err(|_| { pyo3::exceptions::PyTypeError::new_err("Input cannot be converted to byte array") })?; let noise_model: NoiseModel = bincode::deserialize(&bytes[..]).map_err(|_| { diff --git a/qoqo/src/operations/measurement_operations.rs b/qoqo/src/operations/measurement_operations.rs index ed4ba5d00..d1556ae76 100644 --- a/qoqo/src/operations/measurement_operations.rs +++ b/qoqo/src/operations/measurement_operations.rs @@ -102,8 +102,8 @@ struct PragmaGetPauliProduct { /// /// Args: /// readout (string): The name of the classical readout register. -/// qubit_mapping (Dict[int, int]): The mapping of qubits to indices in readout register. /// number_measurements (int): The number of times to repeat the measurement. +/// qubit_mapping (Dict[int, int]): The mapping of qubits to indices in readout register. /// struct PragmaRepeatedMeasurement { readout: String, diff --git a/qoqo/src/operations/multi_qubit_gate_operations.rs b/qoqo/src/operations/multi_qubit_gate_operations.rs index 8b01d5efa..3b4724f66 100644 --- a/qoqo/src/operations/multi_qubit_gate_operations.rs +++ b/qoqo/src/operations/multi_qubit_gate_operations.rs @@ -95,9 +95,9 @@ insert_pyany_to_operation!( let params = op.call_method0("free_parameters") .map_err(|_| QoqoError::ConversionError)?; - let param_vec: &pyo3::types::PyList = params.extract().map_err(|_| QoqoError::ConversionError)?; + let param_vec: Bound = params.extract().map_err(|_| QoqoError::ConversionError)?; let mut free_parameters: Vec = vec![]; - for param in param_vec.iter() { + for param in pyo3::types::PyListMethods::iter(¶m_vec) { free_parameters.push(convert_into_calculator_float(¶m.as_borrowed()).map_err(|_| QoqoError::ConversionError)?); } Ok(CallDefinedGate::new(gate_name, qubits, free_parameters).into()) diff --git a/qoqo/src/operations/pragma_operations.rs b/qoqo/src/operations/pragma_operations.rs index aabff8330..ec6245369 100644 --- a/qoqo/src/operations/pragma_operations.rs +++ b/qoqo/src/operations/pragma_operations.rs @@ -82,7 +82,7 @@ pub struct PragmaSetStateVectorWrapper { insert_pyany_to_operation!( "PragmaSetStateVector" =>{ - let array = op.call_method0("statevector").expect("error extracting"); + let array = op.call_method0("statevector").map_err(|_| QoqoError::ConversionError)?; let statevec_casted: PyReadonlyArray1 = array.extract().unwrap(); let statevec_array: Array1 = statevec_casted.as_array().to_owned(); Ok(PragmaSetStateVector::new(statevec_array).into()) @@ -367,12 +367,10 @@ pub struct PragmaSetDensityMatrixWrapper { insert_pyany_to_operation!( "PragmaSetDensityMatrix" =>{ - let density_matrix = op.call_method0("density_matrix") - .map_err(|_| QoqoError::ConversionError)?; - - let density_matrix_op = density_matrix.downcast::>().unwrap(); - let densmat_array = density_matrix_op.as_gil_ref().readonly().as_array().to_owned(); - Ok(PragmaSetDensityMatrix::new(densmat_array).into()) + let array = op.call_method0("density_matrix").map_err(|_| QoqoError::ConversionError)?; + let density_matrix_op: PyReadonlyArray2 = array.extract().unwrap(); + let density_matrix: Array2 = density_matrix_op.as_array().to_owned(); + Ok(PragmaSetDensityMatrix::new(density_matrix).into()) } ); insert_operation_to_pyobject!( @@ -1033,8 +1031,8 @@ insert_pyany_to_operation!( let array = op.call_method0("rates") .map_err(|_| QoqoError::ConversionError)?; - let rates_array = array.downcast::>().unwrap(); - let rates = rates_array.as_gil_ref().readonly().as_array().to_owned(); + let rates_array: PyReadonlyArray2 = array.extract().unwrap(); + let rates: Array2 = rates_array.as_array().to_owned(); Ok(PragmaGeneralNoise::new(qubit, gate_time, rates).into()) } @@ -1992,7 +1990,7 @@ mod tests { let comparison_copy = bool::extract_bound( copy_op - .call_method1(py, "__eq__", (copy_deepcopy_param.clone(),)) + .call_method1(py, "__eq__", (copy_deepcopy_param.clone_ref(py),)) .unwrap() .bind(py), ) @@ -2142,7 +2140,7 @@ mod tests { let comparison = bool::extract_bound( operation_one - .call_method1(py, "__eq__", (operation_two.clone(),)) + .call_method1(py, "__eq__", (operation_two.clone_ref(py),)) .unwrap() .bind(py), ) @@ -2151,7 +2149,7 @@ mod tests { let comparison = bool::extract_bound( operation_one - .call_method1(py, "__ne__", (operation_two.clone(),)) + .call_method1(py, "__ne__", (operation_two.clone_ref(py),)) .unwrap() .bind(py), ) diff --git a/qoqo/src/quantum_program.rs b/qoqo/src/quantum_program.rs index f4d41250c..22c0793ff 100644 --- a/qoqo/src/quantum_program.rs +++ b/qoqo/src/quantum_program.rs @@ -223,6 +223,7 @@ impl QuantumProgramWrapper { /// Args: /// backend (Backend): The backend the program is executed on. /// parameters (Optional[List[float]]): List of float parameters of the function call in order of `input_parameter_names` + #[pyo3(signature = (backend, parameters=None))] pub fn run(&self, backend: &Bound, parameters: Option>) -> PyResult> { let parameters = parameters.unwrap_or_default(); match &self.internal{ @@ -232,7 +233,7 @@ impl QuantumProgramWrapper { let substituted_measurement = measurement.substitute_parameters( substituted_parameters ).map_err(|err| PyRuntimeError::new_err(format!("Applying parameters failed {:?}", err)))?; - backend.call_method1("run_measurement", (PauliZProductWrapper{internal: substituted_measurement}, )).map(|bound| bound.as_gil_ref().into()) + backend.call_method1("run_measurement", (PauliZProductWrapper{internal: substituted_measurement}, )).map(|bound| bound.into()) } QuantumProgram::CheatedPauliZProduct{measurement, input_parameter_names } => { if parameters.len() != input_parameter_names.len() { return Err(PyValueError::new_err( format!("Wrong number of parameters {} parameters expected {} parameters given", input_parameter_names.len(), parameters.len())))}; @@ -240,7 +241,7 @@ impl QuantumProgramWrapper { let substituted_measurement = measurement.substitute_parameters( substituted_parameters ).map_err(|err| PyRuntimeError::new_err(format!("Applying parameters failed {:?}", err)))?; - backend.call_method1("run_measurement", (CheatedPauliZProductWrapper{internal: substituted_measurement}, )).map(|bound| bound.as_gil_ref().into()) + backend.call_method1("run_measurement", (CheatedPauliZProductWrapper{internal: substituted_measurement}, )).map(|bound| bound.into()) } QuantumProgram::Cheated{measurement, input_parameter_names } => { if parameters.len() != input_parameter_names.len() { return Err(PyValueError::new_err( format!("Wrong number of parameters {} parameters expected {} parameters given", input_parameter_names.len(), parameters.len())))}; @@ -248,7 +249,7 @@ impl QuantumProgramWrapper { let substituted_measurement = measurement.substitute_parameters( substituted_parameters ).map_err(|err| PyRuntimeError::new_err(format!("Applying parameters failed {:?}", err)))?; - backend.call_method1("run_measurement", (CheatedWrapper{internal: substituted_measurement}, )).map(|bound| bound.as_gil_ref().into()) + backend.call_method1("run_measurement", (CheatedWrapper{internal: substituted_measurement}, )).map(|bound| bound.into()) } _ => Err(PyTypeError::new_err("A quantum programm returning classical registeres cannot be executed by `run` use `run_registers` instead".to_string())) } @@ -265,6 +266,7 @@ impl QuantumProgramWrapper { /// Args: /// backend (Backend): The backend the program is executed on. /// parameters (Optional[List[float]]): List of float parameters of the function call in order of `input_parameter_names` + #[pyo3(signature = (backend, parameters=None))] pub fn run_registers( &self, backend: &Bound, @@ -278,7 +280,7 @@ impl QuantumProgramWrapper { let substituted_measurement = measurement.substitute_parameters( substituted_parameters ).map_err(|err| PyRuntimeError::new_err(format!("Applying parameters failed {:?}", err)))?; - backend.call_method1("run_measurement_registers", (ClassicalRegisterWrapper{internal: substituted_measurement}, )).map(|bound| bound.as_gil_ref().into()) + backend.call_method1("run_measurement_registers", (ClassicalRegisterWrapper{internal: substituted_measurement}, )).map(|bound| bound.into()) }, _ => Err(PyTypeError::new_err("A quantum programm returning expectation values cannot be executed by `run_registers` use `run` instead".to_string())) } @@ -350,7 +352,7 @@ impl QuantumProgramWrapper { #[staticmethod] pub fn from_bincode(input: &Bound) -> PyResult { let bytes = input - .as_gil_ref() + .as_ref() .extract::>() .map_err(|_| PyTypeError::new_err("Input cannot be converted to byte array"))?; @@ -462,7 +464,7 @@ impl QuantumProgramWrapper { /// /// Fallible conversion of generic python object to [roqoqo::QuantumProgram]. pub fn convert_into_quantum_program(input: &Bound) -> Result { - if let Ok(try_downcast) = input.as_gil_ref().extract::() { + if let Ok(try_downcast) = input.as_ref().extract::() { return Ok(try_downcast.internal); } // Everything that follows tries to extract the quantum program when two separately diff --git a/qoqo/tests/integration/circuit.rs b/qoqo/tests/integration/circuit.rs index 8597e0dde..6834b73ce 100644 --- a/qoqo/tests/integration/circuit.rs +++ b/qoqo/tests/integration/circuit.rs @@ -71,7 +71,9 @@ fn test_default() { pyo3::prepare_freethreaded_python(); Python::with_gil(|py| { let circuit = new_circuit(py); - circuit.call_method1("add", (operation.clone(),)).unwrap(); + circuit + .call_method1("add", (operation.clone_ref(py),)) + .unwrap(); let circuit_wrapper = circuit.extract::(); let helper_ne: bool = CircuitWrapper::default() != circuit_wrapper.unwrap(); @@ -168,9 +170,15 @@ fn test_count_occurences() { pyo3::prepare_freethreaded_python(); Python::with_gil(|py| { let circuit = new_circuit(py); - circuit.call_method1("add", (operation1.clone(),)).unwrap(); - circuit.call_method1("add", (operation2.clone(),)).unwrap(); - circuit.call_method1("add", (operation3.clone(),)).unwrap(); + circuit + .call_method1("add", (operation1.clone_ref(py),)) + .unwrap(); + circuit + .call_method1("add", (operation2.clone_ref(py),)) + .unwrap(); + circuit + .call_method1("add", (operation3.clone_ref(py),)) + .unwrap(); let comp_op = usize::extract_bound( &circuit @@ -222,9 +230,15 @@ fn test_get_operation_types() { pyo3::prepare_freethreaded_python(); Python::with_gil(|py| { let circuit = new_circuit(py); - circuit.call_method1("add", (operation1.clone(),)).unwrap(); - circuit.call_method1("add", (operation2.clone(),)).unwrap(); - circuit.call_method1("add", (operation3.clone(),)).unwrap(); + circuit + .call_method1("add", (operation1.clone_ref(py),)) + .unwrap(); + circuit + .call_method1("add", (operation2.clone_ref(py),)) + .unwrap(); + circuit + .call_method1("add", (operation3.clone_ref(py),)) + .unwrap(); let mut op_types: HashSet = HashSet::new(); op_types.insert("DefinitionBit".to_owned()); @@ -464,7 +478,7 @@ fn test_single_index_access_get() { .unwrap(); circuit - .call_method1("__setitem__", (1, operation2.clone())) + .call_method1("__setitem__", (1, operation2.clone_ref(py))) .unwrap(); let comp_op = circuit.call_method1("get", (1,)).unwrap(); @@ -552,8 +566,12 @@ fn test_definitions() { pyo3::prepare_freethreaded_python(); Python::with_gil(|py| { let circuit = new_circuit(py); - circuit.call_method1("add", (operation1.clone(),)).unwrap(); - circuit.call_method1("add", (operation2.clone(),)).unwrap(); + circuit + .call_method1("add", (operation1.clone_ref(py),)) + .unwrap(); + circuit + .call_method1("add", (operation2.clone_ref(py),)) + .unwrap(); let comp_op = circuit.call_method0("definitions").unwrap(); let comparison = bool::extract_bound( @@ -576,8 +594,12 @@ fn test_operations() { pyo3::prepare_freethreaded_python(); Python::with_gil(|py| { let circuit = new_circuit(py); - circuit.call_method1("add", (operation1.clone(),)).unwrap(); - circuit.call_method1("add", (operation2.clone(),)).unwrap(); + circuit + .call_method1("add", (operation1.clone_ref(py),)) + .unwrap(); + circuit + .call_method1("add", (operation2.clone_ref(py),)) + .unwrap(); let comp_op = circuit.call_method0("operations").unwrap(); let comparison = bool::extract_bound( @@ -600,8 +622,12 @@ fn test_filter_by_tag() { pyo3::prepare_freethreaded_python(); Python::with_gil(|py| { let circuit = new_circuit(py); - circuit.call_method1("add", (operation1.clone(),)).unwrap(); - circuit.call_method1("add", (operation2.clone(),)).unwrap(); + circuit + .call_method1("add", (operation1.clone_ref(py),)) + .unwrap(); + circuit + .call_method1("add", (operation2.clone_ref(py),)) + .unwrap(); populate_circuit_rotatex(py, &circuit, 0, 2); let comp_op = circuit @@ -641,7 +667,9 @@ fn test_circuit_add_function(added_operation: Operation) { Python::with_gil(|py| { let operation = convert_operation_to_pyobject(added_operation).unwrap(); let circuit = new_circuit(py); - circuit.call_method1("add", (operation.clone(),)).unwrap(); + circuit + .call_method1("add", (operation.clone_ref(py),)) + .unwrap(); let comp_op = circuit.call_method1("__getitem__", (0,)).unwrap(); let comparison = @@ -682,9 +710,9 @@ fn test_fmt_circuititerator() { let binding = &new_circuit.call_method0("__iter__").unwrap(); let circuit_iter = binding.downcast::().unwrap(); - let fmt = "RefCell { value: OperationIteratorWrapper { internal: OperationIterator { definition_iter: IntoIter([]), operation_iter: IntoIter([RotateX(RotateX { qubit: 0, theta: Float(0.0) }), RotateX(RotateX { qubit: 1, theta: Float(1.0) })]) } } }"; + let fmt = "OperationIteratorWrapper { internal: OperationIterator { definition_iter: IntoIter([]), operation_iter: IntoIter([RotateX(RotateX { qubit: 0, theta: Float(0.0) }), RotateX(RotateX { qubit: 1, theta: Float(1.0) })]) } }"; - assert_eq!(format!("{:?}", circuit_iter.as_gil_ref()), fmt); + assert_eq!(format!("{:?}", circuit_iter.borrow()), fmt); }) } @@ -705,7 +733,7 @@ fn test_richcmp() { assert!(!comparison); let comparison = bool::extract_bound( &circuit_one - .call_method1("__eq__", (operation1.clone(),)) + .call_method1("__eq__", (operation1.clone_ref(py),)) .unwrap(), ) .unwrap(); @@ -717,7 +745,7 @@ fn test_richcmp() { assert!(comparison); let comparison = bool::extract_bound( &circuit_one - .call_method1("__ne__", (operation1.clone(),)) + .call_method1("__ne__", (operation1.clone_ref(py),)) .unwrap(), ) .unwrap(); @@ -740,13 +768,15 @@ fn test_circuit_iadd_magic_method() { Python::with_gil(|py| { let added_circuit = new_circuit(py); added_circuit - .call_method1("add", (operation3.clone(),)) + .call_method1("add", (operation3.clone_ref(py),)) .unwrap(); let circuit = new_circuit(py); - circuit.call_method1("add", (operation1.clone(),)).unwrap(); circuit - .call_method1("__iadd__", (operation2.clone(),)) + .call_method1("add", (operation1.clone_ref(py),)) + .unwrap(); + circuit + .call_method1("__iadd__", (operation2.clone_ref(py),)) .unwrap(); circuit.call_method1("__iadd__", (added_circuit,)).unwrap(); @@ -782,13 +812,15 @@ fn test_circuit_add_magic_method() { Python::with_gil(|py| { let added_circuit = new_circuit(py); added_circuit - .call_method1("add", (operation3.clone(),)) + .call_method1("add", (operation3.clone_ref(py),)) .unwrap(); let circuit = new_circuit(py); - circuit.call_method1("add", (operation1.clone(),)).unwrap(); + circuit + .call_method1("add", (operation1.clone_ref(py),)) + .unwrap(); let circuit1 = circuit - .call_method1("__add__", (operation2.clone(),)) + .call_method1("__add__", (operation2.clone_ref(py),)) .unwrap(); let circuit2 = circuit1.call_method1("__add__", (added_circuit,)).unwrap(); @@ -892,13 +924,13 @@ fn test_single_index_access_getitem() { .unwrap(); circuit - .call_method1("__setitem__", (1, operation2.clone())) + .call_method1("__setitem__", (1, operation2.clone_ref(py))) .unwrap(); let comp_op = circuit.call_method1("__getitem__", (1,)).unwrap(); let comparison = bool::extract_bound( &comp_op - .call_method1("__eq__", (operation2.clone(),)) + .call_method1("__eq__", (operation2.clone_ref(py),)) .unwrap(), ) .unwrap(); @@ -930,7 +962,7 @@ fn test_convert_into_circuit() { /// Test function overrotate() for Circuit #[test] -// #[cfg(feature = "overrotate")] +#[cfg(feature = "overrotate")] fn test_circuit_overrotate() { pyo3::prepare_freethreaded_python(); Python::with_gil(|py| { diff --git a/qoqo/tests/integration/circuitdag.rs b/qoqo/tests/integration/circuitdag.rs index eb5b79b14..a573f7569 100644 --- a/qoqo/tests/integration/circuitdag.rs +++ b/qoqo/tests/integration/circuitdag.rs @@ -46,7 +46,7 @@ fn test_default() { let operation = convert_operation_to_pyobject(Operation::from(PauliX::new(0))).unwrap(); Python::with_gil(|py| { let dag = new_circuitdag(py); - dag.call_method1("add_to_back", (operation.clone(),)) + dag.call_method1("add_to_back", (operation.clone_ref(py),)) .unwrap(); let circuitdag_wrapper = dag.extract::(); @@ -65,9 +65,9 @@ fn test_add_to() { let cnot_01 = convert_operation_to_pyobject(Operation::from(CNOT::new(0, 1))).unwrap(); Python::with_gil(|py| { let dag = new_circuitdag(py); - dag.call_method1("add_to_back", (paulix_0.clone(),)) + dag.call_method1("add_to_back", (paulix_0.clone_ref(py),)) .unwrap(); - dag.call_method1("add_to_front", (cnot_01.clone(),)) + dag.call_method1("add_to_front", (cnot_01.clone_ref(py),)) .unwrap(); let _circuit_wrapper = dag.extract::(); }) @@ -81,9 +81,9 @@ fn test_get() { let pauliy_0 = convert_operation_to_pyobject(Operation::from(PauliY::new(0))).unwrap(); Python::with_gil(|py| { let dag = new_circuitdag(py); - dag.call_method1("add_to_back", (paulix_0.clone(),)) + dag.call_method1("add_to_back", (paulix_0.clone_ref(py),)) .unwrap(); - dag.call_method1("add_to_back", (pauliy_0.clone(),)) + dag.call_method1("add_to_back", (pauliy_0.clone_ref(py),)) .unwrap(); let comp_op = dag.call_method1("get", (0,)).unwrap(); @@ -110,9 +110,9 @@ fn test_copy() { let pauliy_0 = convert_operation_to_pyobject(Operation::from(PauliY::new(0))).unwrap(); Python::with_gil(|py| { let dag = new_circuitdag(py); - dag.call_method1("add_to_back", (paulix_0.clone(),)) + dag.call_method1("add_to_back", (paulix_0.clone_ref(py),)) .unwrap(); - dag.call_method1("add_to_back", (pauliy_0.clone(),)) + dag.call_method1("add_to_back", (pauliy_0.clone_ref(py),)) .unwrap(); let empty_dag = new_circuitdag(py); @@ -139,16 +139,16 @@ fn test_richcmp() { let cnot_01 = convert_operation_to_pyobject(Operation::from(CNOT::new(0, 1))).unwrap(); Python::with_gil(|py| { let dag1 = new_circuitdag(py); - dag1.call_method1("add_to_back", (paulix_0.clone(),)) + dag1.call_method1("add_to_back", (paulix_0.clone_ref(py),)) .unwrap(); - dag1.call_method1("add_to_back", (pauliy_0.clone(),)) + dag1.call_method1("add_to_back", (pauliy_0.clone_ref(py),)) .unwrap(); let dag2 = new_circuitdag(py); - dag2.call_method1("add_to_back", (cnot_01.clone(),)) + dag2.call_method1("add_to_back", (cnot_01.clone_ref(py),)) .unwrap(); - dag2.call_method1("add_to_front", (paulix_0.clone(),)) + dag2.call_method1("add_to_front", (paulix_0.clone_ref(py),)) .unwrap(); - dag2.call_method1("add_to_back", (pauliy_0.clone(),)) + dag2.call_method1("add_to_back", (pauliy_0.clone_ref(py),)) .unwrap(); let comparison = @@ -169,7 +169,7 @@ fn test_qoqo_versions() { let paulix_0 = convert_operation_to_pyobject(Operation::from(PauliX::new(0))).unwrap(); Python::with_gil(|py| { let dag = new_circuitdag(py); - dag.call_method1("add_to_back", (paulix_0.clone(),)) + dag.call_method1("add_to_back", (paulix_0.clone_ref(py),)) .unwrap(); let mut rsplit = ROQOQO_VERSION.split('.').take(2); let mut qsplit = QOQO_VERSION.split('.').take(2); @@ -197,7 +197,7 @@ fn test_to_from_bincode() { let paulix_0 = convert_operation_to_pyobject(Operation::from(PauliX::new(0))).unwrap(); Python::with_gil(|py| { let dag = new_circuitdag(py); - dag.call_method1("add_to_back", (paulix_0.clone(),)) + dag.call_method1("add_to_back", (paulix_0.clone_ref(py),)) .unwrap(); // testing 'to_bincode' and 'from_bincode' functions @@ -243,9 +243,15 @@ fn test_from_circuit() { let cnot_01 = convert_operation_to_pyobject(Operation::from(CNOT::new(0, 1))).unwrap(); Python::with_gil(|py| { let circuit = new_circuit(py); - circuit.call_method1("add", (paulix_0.clone(),)).unwrap(); - circuit.call_method1("add", (pauliy_0.clone(),)).unwrap(); - circuit.call_method1("add", (cnot_01.clone(),)).unwrap(); + circuit + .call_method1("add", (paulix_0.clone_ref(py),)) + .unwrap(); + circuit + .call_method1("add", (pauliy_0.clone_ref(py),)) + .unwrap(); + circuit + .call_method1("add", (cnot_01.clone_ref(py),)) + .unwrap(); let dag = new_circuitdag(py); let binding = dag.call_method1("from_circuit", (circuit,)).unwrap(); @@ -276,16 +282,23 @@ fn test_to_circuit() { let cnot_01 = convert_operation_to_pyobject(Operation::from(CNOT::new(0, 1))).unwrap(); Python::with_gil(|py| { let dag = new_circuitdag(py); - dag.call_method1("add_to_back", (paulix_0.clone(),)) + dag.call_method1("add_to_back", (paulix_0.clone_ref(py),)) + .unwrap(); + dag.call_method1("add_to_back", (pauliy_0.clone_ref(py),)) .unwrap(); - dag.call_method1("add_to_back", (pauliy_0.clone(),)) + dag.call_method1("add_to_back", (cnot_01.clone_ref(py),)) .unwrap(); - dag.call_method1("add_to_back", (cnot_01.clone(),)).unwrap(); let circuit = new_circuit(py); - circuit.call_method1("add", (paulix_0.clone(),)).unwrap(); - circuit.call_method1("add", (pauliy_0.clone(),)).unwrap(); - circuit.call_method1("add", (cnot_01.clone(),)).unwrap(); + circuit + .call_method1("add", (paulix_0.clone_ref(py),)) + .unwrap(); + circuit + .call_method1("add", (pauliy_0.clone_ref(py),)) + .unwrap(); + circuit + .call_method1("add", (cnot_01.clone_ref(py),)) + .unwrap(); let new_circuit = dag.call_method0("to_circuit").unwrap(); @@ -319,17 +332,19 @@ fn test_execution_blocked() { let dag = new_circuitdag(py); let a = &dag - .call_method1("add_to_back", (paulix_0.clone(),)) + .call_method1("add_to_back", (paulix_0.clone_ref(py),)) .unwrap(); let b = &dag - .call_method1("add_to_back", (pauliz_0.clone(),)) + .call_method1("add_to_back", (pauliz_0.clone_ref(py),)) .unwrap(); let c = &dag - .call_method1("add_to_back", (pauliy_1.clone(),)) + .call_method1("add_to_back", (pauliy_1.clone_ref(py),)) + .unwrap(); + let d = &dag + .call_method1("add_to_back", (cnot_01.clone_ref(py),)) .unwrap(); - let d = &dag.call_method1("add_to_back", (cnot_01.clone(),)).unwrap(); let e = &dag - .call_method1("add_to_back", (cpauliz_12.clone(),)) + .call_method1("add_to_back", (cpauliz_12.clone_ref(py),)) .unwrap(); let comp = dag @@ -382,15 +397,17 @@ fn test_blocking_predecessors() { let dag = new_circuitdag(py); let a = &dag - .call_method1("add_to_back", (paulix_0.clone(),)) + .call_method1("add_to_back", (paulix_0.clone_ref(py),)) .unwrap(); let b = &dag - .call_method1("add_to_back", (pauliz_0.clone(),)) + .call_method1("add_to_back", (pauliz_0.clone_ref(py),)) .unwrap(); let c = &dag - .call_method1("add_to_back", (pauliy_1.clone(),)) + .call_method1("add_to_back", (pauliy_1.clone_ref(py),)) + .unwrap(); + let d = &dag + .call_method1("add_to_back", (cnot_01.clone_ref(py),)) .unwrap(); - let d = &dag.call_method1("add_to_back", (cnot_01.clone(),)).unwrap(); let comp = dag .call_method1("blocking_predecessors", (vec![a, b, c], d)) @@ -429,17 +446,19 @@ fn test_new_front_layer() { let dag = new_circuitdag(py); let a = &dag - .call_method1("add_to_back", (paulix_0.clone(),)) + .call_method1("add_to_back", (paulix_0.clone_ref(py),)) .unwrap(); let b = &dag - .call_method1("add_to_back", (pauliz_0.clone(),)) + .call_method1("add_to_back", (pauliz_0.clone_ref(py),)) .unwrap(); let c = &dag - .call_method1("add_to_back", (pauliy_1.clone(),)) + .call_method1("add_to_back", (pauliy_1.clone_ref(py),)) + .unwrap(); + let d = &dag + .call_method1("add_to_back", (cnot_01.clone_ref(py),)) .unwrap(); - let d = &dag.call_method1("add_to_back", (cnot_01.clone(),)).unwrap(); let e = &dag - .call_method1("add_to_back", (cpauliz_12.clone(),)) + .call_method1("add_to_back", (cpauliz_12.clone_ref(py),)) .unwrap(); assert!(dag @@ -488,15 +507,16 @@ fn test_parallel_blocks() { Python::with_gil(|py| { let dag = new_circuitdag(py); - dag.call_method1("add_to_back", (paulix_0.clone(),)) + dag.call_method1("add_to_back", (paulix_0.clone_ref(py),)) .unwrap(); - dag.call_method1("add_to_back", (pauliz_0.clone(),)) + dag.call_method1("add_to_back", (pauliz_0.clone_ref(py),)) .unwrap(); - dag.call_method1("add_to_back", (pauliy_1.clone(),)) + dag.call_method1("add_to_back", (pauliy_1.clone_ref(py),)) .unwrap(); - dag.call_method1("add_to_back", (paulix_1.clone(),)) + dag.call_method1("add_to_back", (paulix_1.clone_ref(py),)) + .unwrap(); + dag.call_method1("add_to_back", (cnot_01.clone_ref(py),)) .unwrap(); - dag.call_method1("add_to_back", (cnot_01.clone(),)).unwrap(); let par_bl = dag.call_method0("parallel_blocks").unwrap(); @@ -561,12 +581,14 @@ fn test_successors() { Python::with_gil(|py| { let dag = new_circuitdag(py); - let a = dag.call_method1("add_to_back", (cnot_01.clone(),)).unwrap(); + let a = dag + .call_method1("add_to_back", (cnot_01.clone_ref(py),)) + .unwrap(); let b = dag - .call_method1("add_to_back", (paulix_0.clone(),)) + .call_method1("add_to_back", (paulix_0.clone_ref(py),)) .unwrap(); let c = dag - .call_method1("add_to_back", (paulix_1.clone(),)) + .call_method1("add_to_back", (paulix_1.clone_ref(py),)) .unwrap(); let vec = dag.call_method1("successors", (a,)).unwrap(); @@ -597,7 +619,7 @@ fn test_getters_commuting_operations() { let commut_vec = dag.call_method0("commuting_operations").unwrap(); assert_eq!(commut_vec.len().unwrap(), 0); - dag.call_method1("add_to_back", (commut_op.clone(),)) + dag.call_method1("add_to_back", (commut_op.clone_ref(py),)) .unwrap(); let commut_vec = dag.call_method0("commuting_operations").unwrap(); @@ -619,7 +641,7 @@ fn test_getters_parallel_blocks() { assert_eq!(fpb.len().unwrap(), 0); assert_eq!(lpb.len().unwrap(), 0); - dag.call_method1("add_to_back", (paulix_0.clone(),)) + dag.call_method1("add_to_back", (paulix_0.clone_ref(py),)) .unwrap(); let fpb = dag.call_method0("first_parallel_block").unwrap(); @@ -627,7 +649,8 @@ fn test_getters_parallel_blocks() { assert_eq!(fpb.len().unwrap(), 1); assert_eq!(lpb.len().unwrap(), 1); - dag.call_method1("add_to_back", (cnot_01.clone(),)).unwrap(); + dag.call_method1("add_to_back", (cnot_01.clone_ref(py),)) + .unwrap(); dag.call_method1("add_to_front", (paulix_1,)).unwrap(); let fpb = dag.call_method0("first_parallel_block").unwrap(); @@ -649,7 +672,7 @@ fn test_getters_operation_involving_qubit() { assert_eq!(foiq.len().unwrap(), 0); assert_eq!(loiq.len().unwrap(), 0); - dag.call_method1("add_to_back", (paulix_0.clone(),)) + dag.call_method1("add_to_back", (paulix_0.clone_ref(py),)) .unwrap(); let foiq = dag.call_method0("first_operation_involving_qubit").unwrap(); diff --git a/qoqo/tests/integration/devices.rs b/qoqo/tests/integration/devices.rs index 4c18ea805..af3724923 100644 --- a/qoqo/tests/integration/devices.rs +++ b/qoqo/tests/integration/devices.rs @@ -11,7 +11,7 @@ // limitations under the License. use ndarray::{array, Array2}; -use numpy::{pyarray_bound, PyArray2}; +use numpy::{pyarray_bound, PyArray2, PyReadonlyArray2}; use pyo3::prelude::*; use qoqo::devices::{AllToAllDeviceWrapper, GenericDeviceWrapper, SquareLatticeDeviceWrapper}; use roqoqo::devices::{AllToAllDevice, GenericDevice, SquareLatticeDevice}; @@ -139,9 +139,9 @@ fn test_to_from_json(device: Py) { pyo3::prepare_freethreaded_python(); Python::with_gil(|py| { let serialised = device.call_method0(py, "to_json").unwrap(); - let new = device.clone(); + let new = device.clone_ref(py); let deserialised = new - .call_method1(py, "from_json", (serialised.clone(),)) + .call_method1(py, "from_json", (serialised.clone_ref(py),)) .unwrap(); let vec: Vec = Vec::new(); @@ -169,9 +169,9 @@ fn test_to_from_bincode(device: Py) { pyo3::prepare_freethreaded_python(); Python::with_gil(|py| { let serialised = device.call_method0(py, "to_bincode").unwrap(); - let new = device.clone(); + let new = device.clone_ref(py); let deserialised = new - .call_method1(py, "from_bincode", (serialised.clone(),)) + .call_method1(py, "from_bincode", (serialised.clone_ref(py),)) .unwrap(); let vec: Vec = Vec::new(); @@ -343,10 +343,8 @@ fn test_decoherence_rates_all(device: Py) { .call_method1(py, "qubit_decoherence_rates", (0_i64,)) .unwrap(); let matrix_test2 = matrix_py2 - .downcast_bound::>(py) + .extract::>(py) .unwrap() - .as_gil_ref() - .readonly() .as_array() .to_owned(); assert_eq!(matrix_test2, pyarray_testmatrix); @@ -368,10 +366,8 @@ fn test_decoherence_rates_all(device: Py) { .call_method1(py, "qubit_decoherence_rates", (0_i64,)) .unwrap(); let matrix_test2 = matrix_py2 - .downcast_bound::>(py) + .extract::>(py) .unwrap() - .as_gil_ref() - .readonly() .as_array() .to_owned(); assert_eq!(matrix_test2, pyarray_testmatrix); @@ -390,10 +386,8 @@ fn test_decoherence_rates(device: Py) { .call_method1(py, "qubit_decoherence_rates", (0_i64,)) .unwrap(); let matrix_test = matrix_py - .downcast_bound::>(py) + .extract::>(py) .unwrap() - .as_gil_ref() - .readonly() .as_array() .to_owned(); assert_eq!(matrix_test, matrix_zeros_py); @@ -402,10 +396,8 @@ fn test_decoherence_rates(device: Py) { .call_method1(py, "qubit_decoherence_rates", (100_i64,)) .unwrap(); let matrix2_test = matrix2_py - .downcast_bound::>(py) + .extract::>(py) .unwrap() - .as_gil_ref() - .readonly() .as_array() .to_owned(); assert_eq!(matrix2_test, matrix_zeros_py); @@ -436,10 +428,8 @@ fn test_decoherence_rates(device: Py) { .call_method1(py, "qubit_decoherence_rates", (0_i64,)) .unwrap(); let matrix_test2 = matrix_py2 - .downcast_bound::>(py) + .extract::>(py) .unwrap() - .as_gil_ref() - .readonly() .as_array() .to_owned(); assert_eq!(matrix_test2, pyarray_testmatrix); @@ -463,10 +453,8 @@ fn test_decoherence_rates(device: Py) { .call_method1(py, "qubit_decoherence_rates", (0_i64,)) .unwrap(); let matrix_test2 = matrix_py2 - .downcast_bound::>(py) + .extract::>(py) .unwrap() - .as_gil_ref() - .readonly() .as_array() .to_owned(); assert_eq!(matrix_test2, pyarray_testmatrix); diff --git a/qoqo/tests/integration/measurements/basis_rotation_measurement.rs b/qoqo/tests/integration/measurements/basis_rotation_measurement.rs index 87ef17164..9ec002984 100644 --- a/qoqo/tests/integration/measurements/basis_rotation_measurement.rs +++ b/qoqo/tests/integration/measurements/basis_rotation_measurement.rs @@ -504,11 +504,11 @@ fn test_pyo3_debug() { let br_clone = br_wrapper.clone(); assert_eq!(format!("{:?}", br_wrapper), format!("{:?}", br_clone)); - let debug_string = "RefCell { value: PauliZProductWrapper { internal: PauliZProduct { constant_circuit: Some(Circuit { definitions: [], operations: [], _roqoqo_version: RoqoqoVersion }), circuits: [Circuit { definitions: [], operations: [], _roqoqo_version: RoqoqoVersion }], input: PauliZProductInput { pauli_product_qubit_masks: {\"ro\": {0: []}}, number_qubits: 3, number_pauli_products: 1, measured_exp_vals: {}, use_flipped_measurement: false } } } }"; - assert_eq!(format!("{:?}", br.as_gil_ref()), debug_string); + let debug_string = "PauliZProductWrapper { internal: PauliZProduct { constant_circuit: Some(Circuit { definitions: [], operations: [], _roqoqo_version: RoqoqoVersion }), circuits: [Circuit { definitions: [], operations: [], _roqoqo_version: RoqoqoVersion }], input: PauliZProductInput { pauli_product_qubit_masks: {\"ro\": {0: []}}, number_qubits: 3, number_pauli_products: 1, measured_exp_vals: {}, use_flipped_measurement: false } } }"; + assert_eq!(format!("{:?}", br.borrow()), debug_string); - let debug_input_string = "RefCell { value: PauliZProductInputWrapper { internal: PauliZProductInput { pauli_product_qubit_masks: {\"ro\": {0: []}}, number_qubits: 3, number_pauli_products: 1, measured_exp_vals: {}, use_flipped_measurement: false } } }"; - assert_eq!(format!("{:?}", input.as_gil_ref()), debug_input_string); + let debug_input_string = "PauliZProductInputWrapper { internal: PauliZProductInput { pauli_product_qubit_masks: {\"ro\": {0: []}}, number_qubits: 3, number_pauli_products: 1, measured_exp_vals: {}, use_flipped_measurement: false } }"; + assert_eq!(format!("{:?}", input.borrow()), debug_input_string); let debug_input = input; let mut linear_map: HashMap = HashMap::new(); @@ -609,8 +609,8 @@ fn test_to_from_bincode() { let binding = new_br.call_method1("from_bincode", (&serialised,)).unwrap(); let deserialised = binding.downcast::().unwrap(); assert_eq!( - format!("{:?}", br.as_gil_ref()), - format!("{:?}", deserialised.as_gil_ref()) + format!("{:?}", br.as_ref()), + format!("{:?}", deserialised.as_ref()) ); let deserialised_error = @@ -657,8 +657,8 @@ fn test_to_from_json() { let binding = new_br.call_method1("from_json", (&serialised,)).unwrap(); let deserialised = binding.downcast::().unwrap(); assert_eq!( - format!("{:?}", br.as_gil_ref()), - format!("{:?}", deserialised.as_gil_ref()) + format!("{:?}", br.as_ref()), + format!("{:?}", deserialised.as_ref()) ); let deserialised_error = diff --git a/qoqo/tests/integration/measurements/cheated_basis_rotation_measurement.rs b/qoqo/tests/integration/measurements/cheated_basis_rotation_measurement.rs index 5be1ba09e..d7d52d01f 100644 --- a/qoqo/tests/integration/measurements/cheated_basis_rotation_measurement.rs +++ b/qoqo/tests/integration/measurements/cheated_basis_rotation_measurement.rs @@ -296,12 +296,12 @@ fn test_pyo3_debug() { let br_clone = br_wrapper.clone(); assert_eq!(format!("{:?}", br_wrapper), format!("{:?}", br_clone)); - let debug_string = "RefCell { value: CheatedPauliZProductWrapper { internal: CheatedPauliZProduct { constant_circuit: Some(Circuit { definitions: [], operations: [], _roqoqo_version: RoqoqoVersion }), circuits: [Circuit { definitions: [], operations: [], _roqoqo_version: RoqoqoVersion }], input: CheatedPauliZProductInput { measured_exp_vals: {}, pauli_product_keys: {\"ro\": 0} } } } }"; - assert_eq!(format!("{:?}", br.as_gil_ref()), debug_string); + let debug_string = "CheatedPauliZProductWrapper { internal: CheatedPauliZProduct { constant_circuit: Some(Circuit { definitions: [], operations: [], _roqoqo_version: RoqoqoVersion }), circuits: [Circuit { definitions: [], operations: [], _roqoqo_version: RoqoqoVersion }], input: CheatedPauliZProductInput { measured_exp_vals: {}, pauli_product_keys: {\"ro\": 0} } } }"; + assert_eq!(format!("{:?}", br.borrow()), debug_string); let debug_input = input; - let debug_input_string = "RefCell { value: CheatedPauliZProductInputWrapper { internal: CheatedPauliZProductInput { measured_exp_vals: {}, pauli_product_keys: {\"ro\": 0} } } }"; - assert_eq!(format!("{:?}", input.as_gil_ref()), debug_input_string); + let debug_input_string = "CheatedPauliZProductInputWrapper { internal: CheatedPauliZProductInput { measured_exp_vals: {}, pauli_product_keys: {\"ro\": 0} } }"; + assert_eq!(format!("{:?}", input.borrow()), debug_input_string); assert_eq!( CheatedPauliZProductInputWrapper::default().internal, CheatedPauliZProductInputWrapper::new().internal @@ -399,8 +399,8 @@ fn test_to_from_bincode() { let binding = new_br.call_method1("from_bincode", (&serialised,)).unwrap(); let deserialised = binding.downcast::().unwrap(); assert_eq!( - format!("{:?}", br.as_gil_ref()), - format!("{:?}", deserialised.as_gil_ref()) + format!("{:?}", br.as_ref()), + format!("{:?}", deserialised.as_ref()) ); let deserialised_error = @@ -449,8 +449,8 @@ fn test_to_from_json() { let binding = new_br.call_method1("from_json", (&serialised,)).unwrap(); let deserialised = binding.downcast::().unwrap(); assert_eq!( - format!("{:?}", br.as_gil_ref()), - format!("{:?}", deserialised.as_gil_ref()) + format!("{:?}", br.as_ref()), + format!("{:?}", deserialised.as_ref()) ); let deserialised_error = diff --git a/qoqo/tests/integration/measurements/cheated_measurement.rs b/qoqo/tests/integration/measurements/cheated_measurement.rs index ab5dc6c5b..fa6222c19 100644 --- a/qoqo/tests/integration/measurements/cheated_measurement.rs +++ b/qoqo/tests/integration/measurements/cheated_measurement.rs @@ -275,11 +275,11 @@ fn test_pyo3_debug() { let br_clone = br_wrapper.clone(); assert_eq!(format!("{:?}", br_wrapper), format!("{:?}", br_clone)); - let debug_string = "RefCell { value: CheatedWrapper { internal: Cheated { constant_circuit: Some(Circuit { definitions: [], operations: [], _roqoqo_version: RoqoqoVersion }), circuits: [Circuit { definitions: [], operations: [], _roqoqo_version: RoqoqoVersion }], input: CheatedInput { measured_operators: {\"test_diagonal\": ([(0, 0, Complex { re: 1.0, im: 0.0 }), (0, 1, Complex { re: 0.0, im: 0.0 }), (1, 0, Complex { re: 0.0, im: 0.0 }), (1, 1, Complex { re: -1.0, im: 0.0 })], \"ro\")}, number_qubits: 3 } } } }"; - assert_eq!(format!("{:?}", br.as_gil_ref()), debug_string); + let debug_string = "CheatedWrapper { internal: Cheated { constant_circuit: Some(Circuit { definitions: [], operations: [], _roqoqo_version: RoqoqoVersion }), circuits: [Circuit { definitions: [], operations: [], _roqoqo_version: RoqoqoVersion }], input: CheatedInput { measured_operators: {\"test_diagonal\": ([(0, 0, Complex { re: 1.0, im: 0.0 }), (0, 1, Complex { re: 0.0, im: 0.0 }), (1, 0, Complex { re: 0.0, im: 0.0 }), (1, 1, Complex { re: -1.0, im: 0.0 })], \"ro\")}, number_qubits: 3 } } }"; + assert_eq!(format!("{:?}", br.borrow()), debug_string); - let debug_input_string = "RefCell { value: CheatedInputWrapper { internal: CheatedInput { measured_operators: {\"test_diagonal\": ([(0, 0, Complex { re: 1.0, im: 0.0 }), (0, 1, Complex { re: 0.0, im: 0.0 }), (1, 0, Complex { re: 0.0, im: 0.0 }), (1, 1, Complex { re: -1.0, im: 0.0 })], \"ro\")}, number_qubits: 3 } } }"; - assert_eq!(format!("{:?}", input.as_gil_ref()), debug_input_string); + let debug_input_string = "CheatedInputWrapper { internal: CheatedInput { measured_operators: {\"test_diagonal\": ([(0, 0, Complex { re: 1.0, im: 0.0 }), (0, 1, Complex { re: 0.0, im: 0.0 }), (1, 0, Complex { re: 0.0, im: 0.0 }), (1, 1, Complex { re: -1.0, im: 0.0 })], \"ro\")}, number_qubits: 3 } }"; + assert_eq!(format!("{:?}", input.borrow()), debug_input_string); let debug_input = input; let error = debug_input.call_method1( @@ -385,8 +385,8 @@ fn test_to_from_bincode() { let binding = new_br.call_method1("from_bincode", (&serialised,)).unwrap(); let deserialised = binding.downcast::().unwrap(); assert_eq!( - format!("{:?}", br.as_gil_ref()), - format!("{:?}", deserialised.as_gil_ref()) + format!("{:?}", br.as_ref()), + format!("{:?}", deserialised.as_ref()) ); let deserialised_error = @@ -439,8 +439,8 @@ fn test_to_from_json() { let binding = new_br.call_method1("from_json", (&serialised,)).unwrap(); let deserialised = binding.downcast::().unwrap(); assert_eq!( - format!("{:?}", br.as_gil_ref()), - format!("{:?}", deserialised.as_gil_ref()) + format!("{:?}", br.as_ref()), + format!("{:?}", deserialised.as_ref()) ); let deserialised_error = diff --git a/qoqo/tests/integration/measurements/classical_register_measurement.rs b/qoqo/tests/integration/measurements/classical_register_measurement.rs index e595a0da8..f7a35ce20 100644 --- a/qoqo/tests/integration/measurements/classical_register_measurement.rs +++ b/qoqo/tests/integration/measurements/classical_register_measurement.rs @@ -102,8 +102,8 @@ fn test_pyo3_debug() { #[allow(clippy::redundant_clone)] let br_clone = br_wrapper.clone(); assert_eq!(format!("{:?}", br_wrapper), format!("{:?}", br_clone)); - let debug_string = "RefCell { value: ClassicalRegisterWrapper { internal: ClassicalRegister { constant_circuit: Some(Circuit { definitions: [], operations: [], _roqoqo_version: RoqoqoVersion }), circuits: [Circuit { definitions: [], operations: [], _roqoqo_version: RoqoqoVersion }] } } }"; - assert_eq!(format!("{:?}", br.as_gil_ref()), debug_string); + let debug_string = "ClassicalRegisterWrapper { internal: ClassicalRegister { constant_circuit: Some(Circuit { definitions: [], operations: [], _roqoqo_version: RoqoqoVersion }), circuits: [Circuit { definitions: [], operations: [], _roqoqo_version: RoqoqoVersion }] } }"; + assert_eq!(format!("{:?}", br.borrow()), debug_string); }) } @@ -151,8 +151,8 @@ fn test_to_from_json() { let binding = new_br.call_method1("from_json", (&serialised,)).unwrap(); let deserialised = binding.downcast::().unwrap(); assert_eq!( - format!("{:?}", br.as_gil_ref()), - format!("{:?}", deserialised.as_gil_ref()) + format!("{:?}", br.as_ref()), + format!("{:?}", deserialised.as_ref()) ); let deserialised_error = @@ -184,8 +184,8 @@ fn test_to_from_bincode() { let binding = new_br.call_method1("from_bincode", (&serialised,)).unwrap(); let deserialised = binding.downcast::().unwrap(); assert_eq!( - format!("{:?}", br.as_gil_ref()), - format!("{:?}", deserialised.as_gil_ref()) + format!("{:?}", br.as_ref()), + format!("{:?}", deserialised.as_ref()) ); let deserialised_error = diff --git a/qoqo/tests/integration/noise_models/continuous_decoherence.rs b/qoqo/tests/integration/noise_models/continuous_decoherence.rs index 199db3f52..a475d1f3f 100644 --- a/qoqo/tests/integration/noise_models/continuous_decoherence.rs +++ b/qoqo/tests/integration/noise_models/continuous_decoherence.rs @@ -226,8 +226,8 @@ fn test_to_from_json() { .downcast::() .unwrap(); assert_eq!( - format!("{:?}", br.as_gil_ref()), - format!("{:?}", deserialised.as_gil_ref()) + format!("{:?}", br.borrow()), + format!("{:?}", deserialised.borrow()) ); let deserialised_error = @@ -260,8 +260,8 @@ fn test_to_from_bincode() { .downcast::() .unwrap(); assert_eq!( - format!("{:?}", br.as_gil_ref()), - format!("{:?}", deserialised.as_gil_ref()) + format!("{:?}", br.borrow()), + format!("{:?}", deserialised.borrow()) ); let deserialised_error = diff --git a/qoqo/tests/integration/noise_models/decoherence_on_gate.rs b/qoqo/tests/integration/noise_models/decoherence_on_gate.rs index 55ce9d548..5809b3ac2 100644 --- a/qoqo/tests/integration/noise_models/decoherence_on_gate.rs +++ b/qoqo/tests/integration/noise_models/decoherence_on_gate.rs @@ -67,8 +67,8 @@ fn test_to_from_json() { let binding = new_br.call_method1("from_json", (&serialised,)).unwrap(); let deserialised = binding.downcast::().unwrap(); assert_eq!( - format!("{:?}", br.as_gil_ref()), - format!("{:?}", deserialised.as_gil_ref()) + format!("{:?}", br.borrow()), + format!("{:?}", deserialised.borrow()) ); let deserialised_error = @@ -97,8 +97,8 @@ fn test_to_from_bincode() { let binding = new_br.call_method1("from_bincode", (&serialised,)).unwrap(); let deserialised = binding.downcast::().unwrap(); assert_eq!( - format!("{:?}", br.as_gil_ref()), - format!("{:?}", deserialised.as_gil_ref()) + format!("{:?}", br.borrow()), + format!("{:?}", deserialised.borrow()) ); let deserialised_error = diff --git a/qoqo/tests/integration/noise_models/decoherence_on_idle.rs b/qoqo/tests/integration/noise_models/decoherence_on_idle.rs index 7963bf678..d042047e5 100644 --- a/qoqo/tests/integration/noise_models/decoherence_on_idle.rs +++ b/qoqo/tests/integration/noise_models/decoherence_on_idle.rs @@ -202,8 +202,8 @@ fn test_to_from_json() { let binding = new_br.call_method1("from_json", (&serialised,)).unwrap(); let deserialised = binding.downcast::().unwrap(); assert_eq!( - format!("{:?}", br.as_gil_ref()), - format!("{:?}", deserialised.as_gil_ref()) + format!("{:?}", br.borrow()), + format!("{:?}", deserialised.borrow()) ); let deserialised_error = @@ -232,8 +232,8 @@ fn test_to_from_bincode() { let binding = new_br.call_method1("from_bincode", (&serialised,)).unwrap(); let deserialised = binding.downcast::().unwrap(); assert_eq!( - format!("{:?}", br.as_gil_ref()), - format!("{:?}", deserialised.as_gil_ref()) + format!("{:?}", br.borrow()), + format!("{:?}", deserialised.borrow()) ); let deserialised_error = diff --git a/qoqo/tests/integration/noise_models/imperfect_readout.rs b/qoqo/tests/integration/noise_models/imperfect_readout.rs index f25e22bc0..3c427e2da 100644 --- a/qoqo/tests/integration/noise_models/imperfect_readout.rs +++ b/qoqo/tests/integration/noise_models/imperfect_readout.rs @@ -98,8 +98,8 @@ fn test_to_from_json() { let binding = new_br.call_method1("from_json", (&serialised,)).unwrap(); let deserialised = binding.downcast::().unwrap(); assert_eq!( - format!("{:?}", br.as_gil_ref()), - format!("{:?}", deserialised.as_gil_ref()) + format!("{:?}", br.borrow()), + format!("{:?}", deserialised.borrow()) ); let deserialised_error = @@ -128,8 +128,8 @@ fn test_to_from_bincode() { let binding = new_br.call_method1("from_bincode", (&serialised,)).unwrap(); let deserialised = binding.downcast::().unwrap(); assert_eq!( - format!("{:?}", br.as_gil_ref()), - format!("{:?}", deserialised.as_gil_ref()) + format!("{:?}", br.borrow()), + format!("{:?}", deserialised.borrow()) ); let deserialised_error = diff --git a/qoqo/tests/integration/noise_models/overrotation.rs b/qoqo/tests/integration/noise_models/overrotation.rs index fabfaecb6..39e67dd6f 100644 --- a/qoqo/tests/integration/noise_models/overrotation.rs +++ b/qoqo/tests/integration/noise_models/overrotation.rs @@ -150,8 +150,8 @@ fn test_to_from_json() { .downcast::() .unwrap(); assert_eq!( - format!("{:?}", br.as_gil_ref()), - format!("{:?}", deserialised.as_gil_ref()) + format!("{:?}", br.borrow()), + format!("{:?}", deserialised.borrow()) ); let deserialised_error = @@ -184,8 +184,8 @@ fn test_to_from_json_description() { .downcast::() .unwrap(); assert_eq!( - format!("{:?}", br.as_gil_ref()), - format!("{:?}", deserialised.as_gil_ref()) + format!("{:?}", br.borrow()), + format!("{:?}", deserialised.borrow()) ); let deserialised_error = @@ -218,8 +218,8 @@ fn test_to_from_bincode() { .downcast::() .unwrap(); assert_eq!( - format!("{:?}", br.as_gil_ref()), - format!("{:?}", deserialised.as_gil_ref()) + format!("{:?}", br.borrow()), + format!("{:?}", deserialised.borrow()) ); let deserialised_error = @@ -251,8 +251,8 @@ fn test_to_from_bincode_description() { .downcast::() .unwrap(); assert_eq!( - format!("{:?}", br.as_gil_ref()), - format!("{:?}", deserialised.as_gil_ref()) + format!("{:?}", br.borrow()), + format!("{:?}", deserialised.borrow()) ); let deserialised_error = diff --git a/qoqo/tests/integration/operations/analog_operations.rs b/qoqo/tests/integration/operations/analog_operations.rs index 8341610b4..2d48f8a55 100644 --- a/qoqo/tests/integration/operations/analog_operations.rs +++ b/qoqo/tests/integration/operations/analog_operations.rs @@ -303,7 +303,7 @@ fn test_pyo3_copy_deepcopy(input_operation: Operation) { let comparison_copy = bool::extract_bound( ©_op .bind(py) - .call_method1("__eq__", (copy_deepcopy_param.clone(),)) + .call_method1("__eq__", (copy_deepcopy_param.clone_ref(py),)) .unwrap(), ) .unwrap(); @@ -504,7 +504,7 @@ fn test_pyo3_remapqubits() { let comparison = bool::extract_bound( &result .bind(py) - .call_method1("__eq__", (operation_2.clone(),)) + .call_method1("__eq__", (operation_2.clone_ref(py),)) .unwrap(), ) .unwrap(); @@ -532,7 +532,7 @@ fn test_pyo3_remapqubits() { let comparison = bool::extract_bound( &result .bind(py) - .call_method1("__eq__", (operation_2.clone(),)) + .call_method1("__eq__", (operation_2.clone_ref(py),)) .unwrap(), ) .unwrap(); @@ -555,7 +555,7 @@ fn test_pyo3_richcmp(definition_1: Operation, definition_2: Operation) { let comparison = bool::extract_bound( &operation_one .bind(py) - .call_method1("__eq__", (operation_two.clone(),)) + .call_method1("__eq__", (operation_two.clone_ref(py),)) .unwrap(), ) .unwrap(); @@ -564,7 +564,7 @@ fn test_pyo3_richcmp(definition_1: Operation, definition_2: Operation) { let comparison = bool::extract_bound( &operation_one .bind(py) - .call_method1("__ne__", (operation_two.clone(),)) + .call_method1("__ne__", (operation_two.clone_ref(py),)) .unwrap(), ) .unwrap(); diff --git a/qoqo/tests/integration/operations/bosonic_operations.rs b/qoqo/tests/integration/operations/bosonic_operations.rs index 0d9db339b..74ccb1ad9 100644 --- a/qoqo/tests/integration/operations/bosonic_operations.rs +++ b/qoqo/tests/integration/operations/bosonic_operations.rs @@ -680,7 +680,7 @@ fn test_pyo3_copy_deepcopy(input_operation: Operation) { let comparison_copy = bool::extract_bound( ©_op .bind(py) - .call_method1("__eq__", (copy_deepcopy_param.clone(),)) + .call_method1("__eq__", (copy_deepcopy_param.clone_ref(py),)) .unwrap(), ) .unwrap(); @@ -891,7 +891,7 @@ fn test_pyo3_richcmp(definition_1: Operation, definition_2: Operation) { let comparison = bool::extract_bound( &operation_one .bind(py) - .call_method1("__eq__", (operation_two.clone(),)) + .call_method1("__eq__", (operation_two.clone_ref(py),)) .unwrap(), ) .unwrap(); @@ -900,7 +900,7 @@ fn test_pyo3_richcmp(definition_1: Operation, definition_2: Operation) { let comparison = bool::extract_bound( &operation_one .bind(py) - .call_method1("__ne__", (operation_two.clone(),)) + .call_method1("__ne__", (operation_two.clone_ref(py),)) .unwrap(), ) .unwrap(); diff --git a/qoqo/tests/integration/operations/define_operations.rs b/qoqo/tests/integration/operations/define_operations.rs index 54e4ba528..9af12532b 100644 --- a/qoqo/tests/integration/operations/define_operations.rs +++ b/qoqo/tests/integration/operations/define_operations.rs @@ -569,7 +569,7 @@ fn test_pyo3_copy_deepcopy(input_definition: Operation) { let comparison_copy = bool::extract_bound( ©_op .bind(py) - .call_method1("__eq__", (copy_deepcopy_param.clone(),)) + .call_method1("__eq__", (copy_deepcopy_param.clone_ref(py),)) .unwrap(), ) .unwrap(); @@ -605,7 +605,7 @@ fn test_pyo3_copy_deepcopy_gate_definition() { let comparison_copy = bool::extract_bound( ©_op .bind(py) - .call_method1("__eq__", (copy_deepcopy_param.clone(),)) + .call_method1("__eq__", (copy_deepcopy_param.clone_ref(py),)) .unwrap(), ) .unwrap(); @@ -905,7 +905,7 @@ fn test_pyo3_richcmp(definition_1: Operation, definition_2: Operation) { let comparison = bool::extract_bound( &operation_one .bind(py) - .call_method1("__eq__", (operation_two.clone(),)) + .call_method1("__eq__", (operation_two.clone_ref(py),)) .unwrap(), ) .unwrap(); @@ -914,7 +914,7 @@ fn test_pyo3_richcmp(definition_1: Operation, definition_2: Operation) { let comparison = bool::extract_bound( &operation_one .bind(py) - .call_method1("__ne__", (operation_two.clone(),)) + .call_method1("__ne__", (operation_two.clone_ref(py),)) .unwrap(), ) .unwrap(); @@ -952,7 +952,7 @@ fn test_pyo3_richcmp_gate_definition() { let comparison = bool::extract_bound( &operation_one .bind(py) - .call_method1("__eq__", (operation_two.clone(),)) + .call_method1("__eq__", (operation_two.clone_ref(py),)) .unwrap(), ) .unwrap(); @@ -961,7 +961,7 @@ fn test_pyo3_richcmp_gate_definition() { let comparison = bool::extract_bound( &operation_one .bind(py) - .call_method1("__ne__", (operation_two.clone(),)) + .call_method1("__ne__", (operation_two.clone_ref(py),)) .unwrap(), ) .unwrap(); diff --git a/qoqo/tests/integration/operations/four_qubit_gate_operations.rs b/qoqo/tests/integration/operations/four_qubit_gate_operations.rs index 3b970133c..9c29c6122 100644 --- a/qoqo/tests/integration/operations/four_qubit_gate_operations.rs +++ b/qoqo/tests/integration/operations/four_qubit_gate_operations.rs @@ -12,7 +12,7 @@ use ndarray::Array2; use num_complex::Complex64; -use numpy::PyArray2; +use numpy::PyReadonlyArray2; use pyo3::prelude::*; use qoqo::operations::{ convert_operation_to_pyobject, TripleControlledPauliXWrapper, TripleControlledPauliZWrapper, @@ -226,10 +226,8 @@ fn test_pyo3_unitarymatrix(input_operation: Operation) { let operation = convert_operation_to_pyobject(input_operation.clone()).unwrap(); let py_result = operation.call_method0(py, "unitary_matrix").unwrap(); let result_matrix = py_result - .downcast_bound::>(py) + .extract::>(py) .unwrap() - .as_gil_ref() - .readonly() .as_array() .to_owned(); @@ -271,7 +269,7 @@ fn test_pyo3_copy_deepcopy(input_operation: Operation) { let comparison_copy = copy_op .bind(py) - .call_method1("__eq__", (copy_deepcopy_param.clone(),)) + .call_method1("__eq__", (copy_deepcopy_param.clone_ref(py),)) .unwrap() .extract::() .unwrap(); diff --git a/qoqo/tests/integration/operations/measurement_operations.rs b/qoqo/tests/integration/operations/measurement_operations.rs index ad9d67337..f926104a4 100644 --- a/qoqo/tests/integration/operations/measurement_operations.rs +++ b/qoqo/tests/integration/operations/measurement_operations.rs @@ -253,7 +253,7 @@ fn test_pyo3_copy_deepcopy(input_measurement: Operation) { let comparison_copy = bool::extract_bound( ©_op .bind(py) - .call_method1("__eq__", (copy_deepcopy_param.clone(),)) + .call_method1("__eq__", (copy_deepcopy_param.clone_ref(py),)) .unwrap(), ) .unwrap(); @@ -485,7 +485,7 @@ fn test_pyo3_richcmp(definition_1: Operation, definition_2: Operation) { let comparison = bool::extract_bound( &operation_one .bind(py) - .call_method1("__eq__", (operation_two.clone(),)) + .call_method1("__eq__", (operation_two.clone_ref(py),)) .unwrap(), ) .unwrap(); @@ -494,7 +494,7 @@ fn test_pyo3_richcmp(definition_1: Operation, definition_2: Operation) { let comparison = bool::extract_bound( &operation_one .bind(py) - .call_method1("__ne__", (operation_two.clone(),)) + .call_method1("__ne__", (operation_two.clone_ref(py),)) .unwrap(), ) .unwrap(); diff --git a/qoqo/tests/integration/operations/multi_qubit_gate_operations.rs b/qoqo/tests/integration/operations/multi_qubit_gate_operations.rs index 3c8f97734..7ecd07829 100644 --- a/qoqo/tests/integration/operations/multi_qubit_gate_operations.rs +++ b/qoqo/tests/integration/operations/multi_qubit_gate_operations.rs @@ -12,7 +12,7 @@ use ndarray::Array2; use num_complex::Complex64; -use numpy::PyArray2; +use numpy::PyReadonlyArray2; use pyo3::prelude::*; use pyo3::Python; use qoqo::operations::convert_operation_to_pyobject; @@ -356,8 +356,8 @@ fn test_pyo3_call_defined_gate_inputs() { // Test free_parameters() let mut free_parameters: Vec = vec![]; let py_params = operation.call_method0(py, "free_parameters").unwrap(); - let params: &pyo3::types::PyList = py_params.bind(py).extract().unwrap(); - for param in params.iter() { + let params: Bound = py_params.bind(py).extract().unwrap(); + for param in pyo3::types::PyListMethods::iter(¶ms) { free_parameters.push( qoqo_calculator_pyo3::convert_into_calculator_float(¶m.as_borrowed()).unwrap(), ); @@ -489,10 +489,8 @@ fn test_pyo3_unitarymatrix(input_operation: Operation) { let operation = convert_operation_to_pyobject(input_operation.clone()).unwrap(); let py_result = operation.call_method0(py, "unitary_matrix").unwrap(); let result_matrix: Array2 = py_result - .downcast_bound::>(py) + .extract::>(py) .unwrap() - .as_gil_ref() - .readonly() .as_array() .to_owned(); @@ -581,7 +579,7 @@ fn test_pyo3_copy_deepcopy(input_operation: Operation) { let comparison_copy = bool::extract_bound( ©_op .bind(py) - .call_method1("__eq__", (copy_deepcopy_param.clone(),)) + .call_method1("__eq__", (copy_deepcopy_param.clone_ref(py),)) .unwrap(), ) .unwrap(); @@ -616,7 +614,7 @@ fn test_pyo3_copy_deepcopy_call_defined_gate() { let comparison_copy = bool::extract_bound( ©_op .bind(py) - .call_method1("__eq__", (copy_deepcopy_param.clone(),)) + .call_method1("__eq__", (copy_deepcopy_param.clone_ref(py),)) .unwrap(), ) .unwrap(); @@ -822,7 +820,7 @@ fn test_pyo3_richcmp(definition_1: Operation, definition_2: Operation) { let comparison = bool::extract_bound( &operation_one .bind(py) - .call_method1("__eq__", (operation_two.clone(),)) + .call_method1("__eq__", (operation_two.clone_ref(py),)) .unwrap(), ) .unwrap(); @@ -831,7 +829,7 @@ fn test_pyo3_richcmp(definition_1: Operation, definition_2: Operation) { let comparison = bool::extract_bound( &operation_one .bind(py) - .call_method1("__ne__", (operation_two.clone(),)) + .call_method1("__ne__", (operation_two.clone_ref(py),)) .unwrap(), ) .unwrap(); @@ -867,7 +865,7 @@ fn test_pyo3_richcmp_call_defined_gate() { let comparison = bool::extract_bound( &operation_one .bind(py) - .call_method1("__eq__", (operation_two.clone(),)) + .call_method1("__eq__", (operation_two.clone_ref(py),)) .unwrap(), ) .unwrap(); @@ -876,7 +874,7 @@ fn test_pyo3_richcmp_call_defined_gate() { let comparison = bool::extract_bound( &operation_one .bind(py) - .call_method1("__ne__", (operation_two.clone(),)) + .call_method1("__ne__", (operation_two.clone_ref(py),)) .unwrap(), ) .unwrap(); diff --git a/qoqo/tests/integration/operations/pragma_operations.rs b/qoqo/tests/integration/operations/pragma_operations.rs index 6f46a6422..c04feb6b9 100644 --- a/qoqo/tests/integration/operations/pragma_operations.rs +++ b/qoqo/tests/integration/operations/pragma_operations.rs @@ -12,8 +12,7 @@ use ndarray::{arr2, array, Array1, Array2}; use num_complex::Complex64; -use numpy::PyArray2; -use numpy::PyReadonlyArray1; +use numpy::{PyReadonlyArray1, PyReadonlyArray2}; use pyo3::prelude::*; use pyo3::types::PyList; use pyo3::Python; @@ -209,13 +208,9 @@ fn test_pyo3_inputs_setdensitymatrix() { let to_operators_py = operation.call_method0(py, "density_matrix").unwrap(); let to_operators_op = to_operators_py .bind(py) - .downcast::>() + .extract::>() .unwrap(); - let densmat_array = to_operators_op - .as_gil_ref() - .readonly() - .as_array() - .to_owned(); + let densmat_array = to_operators_op.as_array().to_owned(); assert_eq!(densmat_array, densitymatrix()); }) @@ -585,13 +580,9 @@ fn test_pyo3_inputs_generalnoise() { let to_operators_py = operation.call_method0(py, "rates").unwrap(); let to_operators_op = to_operators_py .bind(py) - .downcast::>() + .extract::>() .unwrap(); - let operators_op = to_operators_op - .as_gil_ref() - .readonly() - .as_array() - .to_owned(); + let operators_op = to_operators_op.as_array().to_owned(); assert_eq!(operators_op, operators()); }) } @@ -870,7 +861,7 @@ fn test_pyo3_copy_deepcopy(input_measurement: Operation) { let comparison_copy = bool::extract_bound( ©_op .bind(py) - .call_method1("__eq__", (copy_deepcopy_param.clone(),)) + .call_method1("__eq__", (copy_deepcopy_param.clone_ref(py),)) .unwrap(), ) .unwrap(); @@ -908,7 +899,7 @@ fn test_pyo3_copy_deepcopy_overrotation() { let comparison_copy = bool::extract_bound( ©_op .bind(py) - .call_method1("__eq__", (operation.clone(),)) + .call_method1("__eq__", (operation.clone_ref(py),)) .unwrap(), ) .unwrap(); @@ -1492,10 +1483,8 @@ fn test_pyo3_noise_superoperator_damping() { let to_superop_op = operation.call_method0(py, "superoperator").unwrap(); let superop_op = to_superop_op - .downcast_bound::>(py) + .extract::>(py) .unwrap() - .as_gil_ref() - .readonly() .as_array() .to_owned(); assert_eq!(superop_op, superop_param); @@ -1528,10 +1517,8 @@ fn test_pyo3_noise_superoperator_depolarising() { let to_superop_op = operation.call_method0(py, "superoperator").unwrap(); let superop_op = to_superop_op - .downcast_bound::>(py) + .extract::>(py) .unwrap() - .as_gil_ref() - .readonly() .as_array() .to_owned(); @@ -1563,10 +1550,8 @@ fn test_pyo3_noise_superoperator_dephasing() { let to_superop_op = operation.call_method0(py, "superoperator").unwrap(); let superop_op = to_superop_op - .downcast_bound::>(py) + .extract::>(py) .unwrap() - .as_gil_ref() - .readonly() .as_array() .to_owned(); @@ -1599,10 +1584,8 @@ fn test_pyo3_noise_superoperator_randomnoise() { let to_superop_op = operation.call_method0(py, "superoperator").unwrap(); let superop_op = to_superop_op - .downcast_bound::>(py) + .extract::>(py) .unwrap() - .as_gil_ref() - .readonly() .as_array() .to_owned(); assert_eq!(superop_op, superop_param); @@ -1734,7 +1717,7 @@ fn test_pyo3_richcmp(definition_1: Operation, definition_2: Operation) { let comparison = bool::extract_bound( &operation_one .bind(py) - .call_method1("__eq__", (operation_two.clone(),)) + .call_method1("__eq__", (operation_two.clone_ref(py),)) .unwrap(), ) .unwrap(); @@ -1743,7 +1726,7 @@ fn test_pyo3_richcmp(definition_1: Operation, definition_2: Operation) { let comparison = bool::extract_bound( &operation_one .bind(py) - .call_method1("__ne__", (operation_two.clone(),)) + .call_method1("__ne__", (operation_two.clone_ref(py),)) .unwrap(), ) .unwrap(); @@ -1779,7 +1762,7 @@ fn test_pyo3_richcmp_overrotation() { let comparison = bool::extract_bound( &operation_one .bind(py) - .call_method1("__ne__", (operation_two.clone(),)) + .call_method1("__ne__", (operation_two.clone_ref(py),)) .unwrap(), ) .unwrap(); @@ -2483,7 +2466,9 @@ fn test_pyo3_new_general_noise() { let convert_to_get_operators = convert_operation_to_pyobject(to_get_operators).unwrap(); let operators_op = convert_to_get_operators.call_method0(py, "rates").unwrap(); - let binding = operation.call1((0, 0.005, operators_op.clone())).unwrap(); + let binding = operation + .call1((0, 0.005, operators_op.clone_ref(py))) + .unwrap(); let new_op = binding.downcast::().unwrap(); let comparison_copy = bool::extract_bound( @@ -2495,10 +2480,10 @@ fn test_pyo3_new_general_noise() { assert!(comparison_copy); // Error initialisation - let result = operation.call1((0, vec!["fails"], 0.0, operators_op.clone())); + let result = operation.call1((0, vec!["fails"], 0.0, operators_op.clone_ref(py))); assert!(result.is_err()); - let result = operation.call1((0, 0.0, vec!["fails"], operators_op.clone())); + let result = operation.call1((0, 0.0, vec!["fails"], operators_op.clone_ref(py))); assert!(result.is_err()); // Testing PartialEq, Clone and Debug diff --git a/qoqo/tests/integration/operations/single_qubit_gate_operations.rs b/qoqo/tests/integration/operations/single_qubit_gate_operations.rs index 3f9213ab8..3df9303a6 100644 --- a/qoqo/tests/integration/operations/single_qubit_gate_operations.rs +++ b/qoqo/tests/integration/operations/single_qubit_gate_operations.rs @@ -12,7 +12,7 @@ use ndarray::Array2; use num_complex::Complex64; -use numpy::PyArray2; +use numpy::PyReadonlyArray2; use pyo3::prelude::*; use pyo3::Python; use qoqo::operations::convert_operation_to_pyobject; @@ -1793,10 +1793,8 @@ fn test_pyo3_unitarymatrix(input_operation: Operation) { let operation = convert_operation_to_pyobject(input_operation.clone()).unwrap(); let py_result = operation.call_method0(py, "unitary_matrix").unwrap(); let result_matrix = py_result - .downcast_bound::>(py) + .extract::>(py) .unwrap() - .as_gil_ref() - .readonly() .as_array() .to_owned(); @@ -1937,7 +1935,7 @@ fn test_pyo3_copy_deepcopy(input_operation: Operation) { let comparison_copy = bool::extract_bound( ©_op .bind(py) - .call_method1("__eq__", (copy_deepcopy_param.clone(),)) + .call_method1("__eq__", (copy_deepcopy_param.clone_ref(py),)) .unwrap(), ) .unwrap(); @@ -2943,7 +2941,7 @@ fn test_pyo3_richcmp(definition_1: Operation, definition_2: Operation) { let comparison = bool::extract_bound( &operation_one .bind(py) - .call_method1("__eq__", (operation_two.clone(),)) + .call_method1("__eq__", (operation_two.clone_ref(py),)) .unwrap(), ) .unwrap(); @@ -2952,7 +2950,7 @@ fn test_pyo3_richcmp(definition_1: Operation, definition_2: Operation) { let comparison = bool::extract_bound( &operation_one .bind(py) - .call_method1("__ne__", (operation_two.clone(),)) + .call_method1("__ne__", (operation_two.clone_ref(py),)) .unwrap(), ) .unwrap(); diff --git a/qoqo/tests/integration/operations/spin_boson_operations.rs b/qoqo/tests/integration/operations/spin_boson_operations.rs index 06c191843..9f74debc3 100644 --- a/qoqo/tests/integration/operations/spin_boson_operations.rs +++ b/qoqo/tests/integration/operations/spin_boson_operations.rs @@ -650,7 +650,7 @@ fn test_pyo3_copy_deepcopy(input_operation: Operation) { let comparison_copy = bool::extract_bound( ©_op .bind(py) - .call_method1("__eq__", (copy_deepcopy_param.clone(),)) + .call_method1("__eq__", (copy_deepcopy_param.clone_ref(py),)) .unwrap(), ) .unwrap(); @@ -812,7 +812,7 @@ fn test_pyo3_richcmp(definition_1: Operation, definition_2: Operation) { let comparison = bool::extract_bound( &operation_one .bind(py) - .call_method1("__eq__", (operation_two.clone(),)) + .call_method1("__eq__", (operation_two.clone_ref(py),)) .unwrap(), ) .unwrap(); @@ -821,7 +821,7 @@ fn test_pyo3_richcmp(definition_1: Operation, definition_2: Operation) { let comparison = bool::extract_bound( &operation_one .bind(py) - .call_method1("__ne__", (operation_two.clone(),)) + .call_method1("__ne__", (operation_two.clone_ref(py),)) .unwrap(), ) .unwrap(); diff --git a/qoqo/tests/integration/operations/three_qubit_gate_operations.rs b/qoqo/tests/integration/operations/three_qubit_gate_operations.rs index eddd3d626..83c2dffb1 100644 --- a/qoqo/tests/integration/operations/three_qubit_gate_operations.rs +++ b/qoqo/tests/integration/operations/three_qubit_gate_operations.rs @@ -12,7 +12,7 @@ use ndarray::Array2; use num_complex::Complex64; -use numpy::PyArray2; +use numpy::PyReadonlyArray2; use super::convert_cf_to_pyobject; @@ -341,10 +341,8 @@ fn test_pyo3_unitarymatrix(input_operation: Operation) { let operation = convert_operation_to_pyobject(input_operation.clone()).unwrap(); let py_result = operation.call_method0(py, "unitary_matrix").unwrap(); let result_matrix = py_result - .downcast_bound::>(py) + .extract::>(py) .unwrap() - .as_gil_ref() - .readonly() .as_array() .to_owned(); @@ -404,7 +402,7 @@ fn test_pyo3_copy_deepcopy(input_operation: Operation) { let comparison_copy = copy_op .bind(py) - .call_method1("__eq__", (copy_deepcopy_param.clone(),)) + .call_method1("__eq__", (copy_deepcopy_param.clone_ref(py),)) .unwrap() .extract::() .unwrap(); diff --git a/qoqo/tests/integration/operations/two_qubit_gate_operations.rs b/qoqo/tests/integration/operations/two_qubit_gate_operations.rs index ddf6710b7..d6a75d3b6 100644 --- a/qoqo/tests/integration/operations/two_qubit_gate_operations.rs +++ b/qoqo/tests/integration/operations/two_qubit_gate_operations.rs @@ -13,7 +13,7 @@ use super::convert_cf_to_pyobject; use ndarray::Array2; use num_complex::Complex64; -use numpy::PyArray2; +use numpy::PyReadonlyArray2; use pyo3::prelude::*; use pyo3::Python; use qoqo::operations::convert_operation_to_pyobject; @@ -519,10 +519,8 @@ fn test_pyo3_unitarymatrix(input_operation: Operation) { let operation = convert_operation_to_pyobject(input_operation.clone()).unwrap(); let py_result = operation.call_method0(py, "unitary_matrix").unwrap(); let result_matrix = py_result - .downcast_bound::>(py) + .extract::>(py) .unwrap() - .as_gil_ref() - .readonly() .as_array() .to_owned(); @@ -662,7 +660,7 @@ fn test_pyo3_copy_deepcopy(input_operation: Operation) { let comparison_copy = bool::extract_bound( ©_op .bind(py) - .call_method1("__eq__", (copy_deepcopy_param.clone(),)) + .call_method1("__eq__", (copy_deepcopy_param.clone_ref(py),)) .unwrap(), ) .unwrap(); @@ -2020,7 +2018,7 @@ fn test_pyo3_richcmp(definition_1: Operation, definition_2: Operation) { let comparison = bool::extract_bound( &operation_one .bind(py) - .call_method1("__eq__", (operation_two.clone(),)) + .call_method1("__eq__", (operation_two.clone_ref(py),)) .unwrap(), ) .unwrap(); @@ -2029,7 +2027,7 @@ fn test_pyo3_richcmp(definition_1: Operation, definition_2: Operation) { let comparison = bool::extract_bound( &operation_one .bind(py) - .call_method1("__ne__", (operation_two.clone(),)) + .call_method1("__ne__", (operation_two.clone_ref(py),)) .unwrap(), ) .unwrap(); diff --git a/qoqo/tests/integration/quantum_program.rs b/qoqo/tests/integration/quantum_program.rs index bb279fd4d..c3fac6ee0 100644 --- a/qoqo/tests/integration/quantum_program.rs +++ b/qoqo/tests/integration/quantum_program.rs @@ -567,7 +567,7 @@ fn test_richcmp() { assert!(!comparison); let comparison = bool::extract_bound( &program_one - .call_method1("__eq__", (operation1.clone(),)) + .call_method1("__eq__", (operation1.clone_ref(py),)) .unwrap(), ) .unwrap(); @@ -579,7 +579,7 @@ fn test_richcmp() { assert!(comparison); let comparison = bool::extract_bound( &program_one - .call_method1("__ne__", (operation1.clone(),)) + .call_method1("__ne__", (operation1.clone_ref(py),)) .unwrap(), ) .unwrap(); @@ -602,7 +602,8 @@ fn test_convert_into_program() { .call1((&input, vec!["one".to_string()])) .unwrap(); let program = binding.downcast::().unwrap(); - let comparison = program.call_method1("convert_into_quantum_program", (operation.clone(),)); + let comparison = + program.call_method1("convert_into_quantum_program", (operation.clone_ref(py),)); assert!(comparison.is_err()); assert_eq!( convert_into_quantum_program(operation.bind(py)), diff --git a/roqoqo/Cargo.toml b/roqoqo/Cargo.toml index 325b2e65a..ee57f7d28 100644 --- a/roqoqo/Cargo.toml +++ b/roqoqo/Cargo.toml @@ -27,7 +27,7 @@ ndarray = { version = "0.15" } num-complex = { version = "0.4" } thiserror = "1.0" dyn-clone = { version = "1.0", optional = true } -qoqo_calculator = { version = "~1.2" } +qoqo_calculator = { version = "~1.3" } roqoqo-derive = { version = "~1.17", path = "../roqoqo-derive" } typetag = { version = "0.2", optional = true } nalgebra = "0.33.1" @@ -39,7 +39,7 @@ async-trait = { version = "0.1", optional = true } futures = { version = "0.3", optional = true } petgraph = { version = "0.6.2", optional = true } bincode = { version = "1.3", optional = true } -struqture = { version = "~1.9", features = ["json_schema"] } +struqture = { version = "~1.10", features = ["json_schema"] } [dev-dependencies] serde_test = "1.0"