{"crate":{"id":"scopeguard","name":"scopeguard","updated_at":"2023-07-17T13:47:53.232324Z","versions":[848024,213235,123094,68250,42902,39430,39429,29059,22853,15377,9633],"keywords":["defer","unwind","panic","scope-guard"],"categories":["rust-patterns","no-std"],"badges":[],"created_at":"2015-04-30T12:04:48.236552Z","downloads":1008927424,"recent_downloads":220078784,"default_version":"1.2.0","num_versions":11,"yanked":false,"max_version":"1.2.0","newest_version":"1.2.0","max_stable_version":"1.2.0","description":"A RAII scope guard that will run a given closure when it goes out of scope,\neven if the code between panics (assuming unwinding panic).\n\nDefines the macros `defer!`, `defer_on_unwind!`, `defer_on_success!` as\nshorthands for guards with one of the implemented strategies.\n","homepage":null,"documentation":"https://docs.rs/scopeguard/","repository":"https://github.com/bluss/scopeguard","links":{"version_downloads":"/api/v1/crates/scopeguard/downloads","versions":null,"owners":"/api/v1/crates/scopeguard/owners","owner_team":"/api/v1/crates/scopeguard/owner_team","owner_user":"/api/v1/crates/scopeguard/owner_user","reverse_dependencies":"/api/v1/crates/scopeguard/reverse_dependencies"},"exact_match":false,"trustpub_only":false},"versions":[{"id":848024,"crate":"scopeguard","num":"1.2.0","dl_path":"/api/v1/crates/scopeguard/1.2.0/download","readme_path":"/api/v1/crates/scopeguard/1.2.0/readme","updated_at":"2023-07-17T13:47:53.232324Z","created_at":"2023-07-17T13:47:53.232324Z","downloads":794939842,"features":{"default":["use_std"],"use_std":[]},"yanked":false,"yank_message":null,"lib_links":null,"license":"MIT OR Apache-2.0","links":{"dependencies":"/api/v1/crates/scopeguard/1.2.0/dependencies","version_downloads":"/api/v1/crates/scopeguard/1.2.0/downloads","authors":"/api/v1/crates/scopeguard/1.2.0/authors"},"crate_size":11619,"published_by":{"id":2915,"login":"Amanieu","name":"Amanieu d'Antras","avatar":"https://avatars.githubusercontent.com/u/278509?v=4","url":"https://github.com/Amanieu","github_username_matches":true,"created_at":"2010-05-16T16:41:16Z"},"audit_actions":[{"action":"publish","user":{"id":2915,"login":"Amanieu","name":"Amanieu d'Antras","avatar":"https://avatars.githubusercontent.com/u/278509?v=4","url":"https://github.com/Amanieu","github_username_matches":true,"created_at":"2010-05-16T16:41:16Z"},"time":"2023-07-17T13:47:53.232324Z"}],"checksum":"94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49","rust_version":null,"has_lib":true,"bin_names":[],"edition":null,"description":"A RAII scope guard that will run a given closure when it goes out of scope,\neven if the code between panics (assuming unwinding panic).\n\nDefines the macros `defer!`, `defer_on_unwind!`, `defer_on_success!` as\nshorthands for guards with one of the implemented strategies.","homepage":null,"documentation":"https://docs.rs/scopeguard/","repository":"https://github.com/bluss/scopeguard","trustpub_data":null,"linecounts":{"languages":{"Rust":{"code_lines":263,"comment_lines":11,"files":1}},"total_code_lines":263,"total_comment_lines":11}},{"id":213235,"crate":"scopeguard","num":"1.1.0","dl_path":"/api/v1/crates/scopeguard/1.1.0/download","readme_path":"/api/v1/crates/scopeguard/1.1.0/readme","updated_at":"2020-02-16T22:54:35.944711Z","created_at":"2020-02-16T22:54:35.944711Z","downloads":193183253,"features":{"default":["use_std"],"use_std":[]},"yanked":false,"yank_message":null,"lib_links":null,"license":"MIT/Apache-2.0","links":{"dependencies":"/api/v1/crates/scopeguard/1.1.0/dependencies","version_downloads":"/api/v1/crates/scopeguard/1.1.0/downloads","authors":"/api/v1/crates/scopeguard/1.1.0/authors"},"crate_size":11470,"published_by":{"id":2915,"login":"Amanieu","name":"Amanieu d'Antras","avatar":"https://avatars.githubusercontent.com/u/278509?v=4","url":"https://github.com/Amanieu","github_username_matches":true,"created_at":"2010-05-16T16:41:16Z"},"audit_actions":[{"action":"publish","user":{"id":2915,"login":"Amanieu","name":"Amanieu d'Antras","avatar":"https://avatars.githubusercontent.com/u/278509?v=4","url":"https://github.com/Amanieu","github_username_matches":true,"created_at":"2010-05-16T16:41:16Z"},"time":"2020-02-16T22:54:35.944711Z"}],"checksum":"d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd","rust_version":null,"has_lib":true,"bin_names":[],"edition":null,"description":"A RAII scope guard that will run a given closure when it goes out of scope,\neven if the code between panics (assuming unwinding panic).\n\nDefines the macros `defer!`, `defer_on_unwind!`, `defer_on_success!` as\nshorthands for guards with one of the implemented strategies.","homepage":null,"documentation":"https://docs.rs/scopeguard/","repository":"https://github.com/bluss/scopeguard","trustpub_data":null,"linecounts":{"languages":{"Rust":{"code_lines":244,"comment_lines":12,"files":1}},"total_code_lines":244,"total_comment_lines":12}},{"id":123094,"crate":"scopeguard","num":"1.0.0","dl_path":"/api/v1/crates/scopeguard/1.0.0/download","readme_path":"/api/v1/crates/scopeguard/1.0.0/readme","updated_at":"2018-12-19T08:01:13.139636Z","created_at":"2018-12-19T08:01:13.139636Z","downloads":6692202,"features":{"default":["use_std"],"use_std":[]},"yanked":false,"yank_message":null,"lib_links":null,"license":"MIT/Apache-2.0","links":{"dependencies":"/api/v1/crates/scopeguard/1.0.0/dependencies","version_downloads":"/api/v1/crates/scopeguard/1.0.0/downloads","authors":"/api/v1/crates/scopeguard/1.0.0/authors"},"crate_size":11304,"published_by":null,"audit_actions":[],"checksum":"b42e15e59b18a828bbf5c58ea01debb36b9b096346de35d941dcb89009f24a0d","rust_version":null,"has_lib":true,"bin_names":[],"edition":null,"description":"A RAII scope guard that will run a given closure when it goes out of scope,\neven if the code between panics (assuming unwinding panic).\n\nDefines the macros `defer!`, `defer_on_unwind!`, `defer_on_success!` as\nshorthands for guards with one of the implemented strategies.","homepage":null,"documentation":"https://docs.rs/scopeguard/","repository":"https://github.com/bluss/scopeguard","trustpub_data":null,"linecounts":{"languages":{"Rust":{"code_lines":244,"comment_lines":11,"files":1}},"total_code_lines":244,"total_comment_lines":11}},{"id":68250,"crate":"scopeguard","num":"0.3.3","dl_path":"/api/v1/crates/scopeguard/0.3.3/download","readme_path":"/api/v1/crates/scopeguard/0.3.3/readme","updated_at":"2017-11-30T03:16:45.398292Z","created_at":"2017-10-13T16:56:43.910432Z","downloads":12848433,"features":{"default":["use_std"],"use_std":[]},"yanked":false,"yank_message":null,"lib_links":null,"license":"MIT/Apache-2.0","links":{"dependencies":"/api/v1/crates/scopeguard/0.3.3/dependencies","version_downloads":"/api/v1/crates/scopeguard/0.3.3/downloads","authors":"/api/v1/crates/scopeguard/0.3.3/authors"},"crate_size":9605,"published_by":null,"audit_actions":[],"checksum":"94258f53601af11e6a49f722422f6e3425c52b06245a5cf9bc09908b174f5e27","rust_version":null,"has_lib":true,"bin_names":[],"edition":null,"description":"A RAII scope guard that will run a given closure when it goes out of scope,\neven if the code between panics (assuming unwinding panic).\n\nDefines the macros `defer!` and `defer_on_unwind!`; the latter only runs\nif the scope is extited through unwinding on panic.","homepage":null,"documentation":"https://docs.rs/scopeguard/","repository":"https://github.com/bluss/scopeguard","trustpub_data":null,"linecounts":{"languages":{"Rust":{"code_lines":174,"comment_lines":0,"files":1}},"total_code_lines":174,"total_comment_lines":0}},{"id":42902,"crate":"scopeguard","num":"0.3.2","dl_path":"/api/v1/crates/scopeguard/0.3.2/download","readme_path":"/api/v1/crates/scopeguard/0.3.2/readme","updated_at":"2017-11-30T02:25:52.814068Z","created_at":"2017-01-21T10:32:18.937265Z","downloads":417034,"features":{"default":["use_std"],"use_std":[]},"yanked":false,"yank_message":null,"lib_links":null,"license":"MIT/Apache-2.0","links":{"dependencies":"/api/v1/crates/scopeguard/0.3.2/dependencies","version_downloads":"/api/v1/crates/scopeguard/0.3.2/downloads","authors":"/api/v1/crates/scopeguard/0.3.2/authors"},"crate_size":7666,"published_by":null,"audit_actions":[],"checksum":"c79eb2c3ac4bc2507cda80e7f3ac5b88bd8eae4c0914d5663e6a8933994be918","rust_version":null,"has_lib":true,"bin_names":[],"edition":null,"description":"A RAII scope guard that will run a given closure when it goes out of scope,\neven if the code between panics (assuming unwinding panic).\n\nDefines the macros `defer!` and `defer_on_unwind!`; the latter only runs\nif the scope is extited through unwinding on panic.","homepage":null,"documentation":"https://docs.rs/scopeguard/","repository":"https://github.com/bluss/scopeguard","trustpub_data":null,"linecounts":{"languages":{"Rust":{"code_lines":168,"comment_lines":0,"files":1}},"total_code_lines":168,"total_comment_lines":0}},{"id":39430,"crate":"scopeguard","num":"0.3.1","dl_path":"/api/v1/crates/scopeguard/0.3.1/download","readme_path":"/api/v1/crates/scopeguard/0.3.1/readme","updated_at":"2017-11-30T02:39:41.761175Z","created_at":"2016-12-11T16:15:56.740148Z","downloads":73260,"features":{"default":["use_std"],"use_std":[]},"yanked":false,"yank_message":null,"lib_links":null,"license":"MIT/Apache-2.0","links":{"dependencies":"/api/v1/crates/scopeguard/0.3.1/dependencies","version_downloads":"/api/v1/crates/scopeguard/0.3.1/downloads","authors":"/api/v1/crates/scopeguard/0.3.1/authors"},"crate_size":7632,"published_by":null,"audit_actions":[],"checksum":"7aa5d8d293df7346f1f69c9c8595febc2df7179d672b87619b33ce64dc0a30bb","rust_version":null,"has_lib":true,"bin_names":[],"edition":null,"description":"A RAII scope guard that will run a given closure when it goes out of scope,\neven if the code between panics (assuming unwinding panic).\n\nDefines the macros `defer!` and `defer_on_unwind!`; the latter only runs\nif the scope is extited through unwinding on panic.","homepage":null,"documentation":"https://docs.rs/scopeguard/","repository":"https://github.com/bluss/scopeguard","trustpub_data":null,"linecounts":{"languages":{"Rust":{"code_lines":168,"comment_lines":0,"files":1}},"total_code_lines":168,"total_comment_lines":0}},{"id":39429,"crate":"scopeguard","num":"0.3.0","dl_path":"/api/v1/crates/scopeguard/0.3.0/download","readme_path":"/api/v1/crates/scopeguard/0.3.0/readme","updated_at":"2017-11-30T02:31:58.589673Z","created_at":"2016-12-11T16:13:57.381101Z","downloads":3587,"features":{"default":["use_std"],"use_std":[]},"yanked":true,"yank_message":null,"lib_links":null,"license":"MIT/Apache-2.0","links":{"dependencies":"/api/v1/crates/scopeguard/0.3.0/dependencies","version_downloads":"/api/v1/crates/scopeguard/0.3.0/downloads","authors":"/api/v1/crates/scopeguard/0.3.0/authors"},"crate_size":7632,"published_by":null,"audit_actions":[],"checksum":"ce108ea69fbd2c47dd2e75806bd7fc14bd58e73c7720544879449088f730716d","rust_version":null,"has_lib":true,"bin_names":[],"edition":null,"description":"A RAII scope guard that will run a given closure when it goes out of scope,\neven if the code between panics (assuming unwinding panic).\n\nDefines the macros `defer!` and `defer_on_unwind!`; the latter only runs\nif the scope is extited through unwinding on panic.","homepage":null,"documentation":"https://docs.rs/scopeguard/","repository":"https://github.com/bluss/scopeguard","trustpub_data":null,"linecounts":{"languages":{"Rust":{"code_lines":168,"comment_lines":0,"files":1}},"total_code_lines":168,"total_comment_lines":0}},{"id":29059,"crate":"scopeguard","num":"0.2.0","dl_path":"/api/v1/crates/scopeguard/0.2.0/download","readme_path":"/api/v1/crates/scopeguard/0.2.0/readme","updated_at":"2017-11-30T03:02:53.466659Z","created_at":"2016-06-23T09:46:25.274134Z","downloads":13971,"features":{},"yanked":false,"yank_message":null,"lib_links":null,"license":"MIT/Apache-2.0","links":{"dependencies":"/api/v1/crates/scopeguard/0.2.0/dependencies","version_downloads":"/api/v1/crates/scopeguard/0.2.0/downloads","authors":"/api/v1/crates/scopeguard/0.2.0/authors"},"crate_size":6420,"published_by":null,"audit_actions":[],"checksum":"551cc7e5812ffa253138ea53b3de48306005422a66a5f0cc9a5704b3d92b298a","rust_version":null,"has_lib":true,"bin_names":[],"edition":null,"description":"A RAII scope guard.","homepage":null,"documentation":"https://bluss.github.io/scopeguard/","repository":"https://github.com/bluss/scopeguard","trustpub_data":null,"linecounts":{"languages":{"Rust":{"code_lines":52,"comment_lines":0,"files":1}},"total_code_lines":52,"total_comment_lines":0}},{"id":22853,"crate":"scopeguard","num":"0.1.2","dl_path":"/api/v1/crates/scopeguard/0.1.2/download","readme_path":"/api/v1/crates/scopeguard/0.1.2/readme","updated_at":"2017-11-30T03:14:31.310172Z","created_at":"2016-02-23T23:27:08.562676Z","downloads":496481,"features":{},"yanked":false,"yank_message":null,"lib_links":null,"license":"MIT/Apache-2.0","links":{"dependencies":"/api/v1/crates/scopeguard/0.1.2/dependencies","version_downloads":"/api/v1/crates/scopeguard/0.1.2/downloads","authors":"/api/v1/crates/scopeguard/0.1.2/authors"},"crate_size":6341,"published_by":null,"audit_actions":[],"checksum":"59a076157c1e2dc561d8de585151ee6965d910dd4dcb5dabb7ae3e83981a6c57","rust_version":null,"has_lib":true,"bin_names":[],"edition":null,"description":"A RAII scope guard.","homepage":null,"documentation":"http://bluss.github.io/scopeguard/","repository":"https://github.com/bluss/scopeguard","trustpub_data":null,"linecounts":{"languages":{"Rust":{"code_lines":49,"comment_lines":0,"files":1}},"total_code_lines":49,"total_comment_lines":0}},{"id":15377,"crate":"scopeguard","num":"0.1.1","dl_path":"/api/v1/crates/scopeguard/0.1.1/download","readme_path":"/api/v1/crates/scopeguard/0.1.1/readme","updated_at":"2017-11-30T04:19:36.597749Z","created_at":"2015-09-03T14:54:38.455639Z","downloads":3390,"features":{},"yanked":false,"yank_message":null,"lib_links":null,"license":"MIT/Apache-2.0","links":{"dependencies":"/api/v1/crates/scopeguard/0.1.1/dependencies","version_downloads":"/api/v1/crates/scopeguard/0.1.1/downloads","authors":"/api/v1/crates/scopeguard/0.1.1/authors"},"crate_size":5813,"published_by":null,"audit_actions":[],"checksum":"161802103cb6f6a9b37cf0ed94eb4e2a461862c2a90f709a8f634e67c7848979","rust_version":null,"has_lib":true,"bin_names":[],"edition":null,"description":"A RAII scope guard.","homepage":null,"documentation":"http://bluss.github.io/scopeguard/","repository":"https://github.com/bluss/scopeguard","trustpub_data":null,"linecounts":{"languages":{"Rust":{"code_lines":36,"comment_lines":0,"files":1}},"total_code_lines":36,"total_comment_lines":0}},{"id":9633,"crate":"scopeguard","num":"0.1.0","dl_path":"/api/v1/crates/scopeguard/0.1.0/download","readme_path":"/api/v1/crates/scopeguard/0.1.0/readme","updated_at":"2017-11-30T04:19:36.550482Z","created_at":"2015-04-30T12:04:48.265093Z","downloads":3692,"features":{},"yanked":false,"yank_message":null,"lib_links":null,"license":"MIT/Apache-2.0","links":{"dependencies":"/api/v1/crates/scopeguard/0.1.0/dependencies","version_downloads":"/api/v1/crates/scopeguard/0.1.0/downloads","authors":"/api/v1/crates/scopeguard/0.1.0/authors"},"crate_size":5125,"published_by":null,"audit_actions":[],"checksum":"73992bfe258a99b09a0d95ece1ed87826a7648c182c7f3727aef4eb21fee79b4","rust_version":null,"has_lib":true,"bin_names":[],"edition":null,"description":"A convenient RAII scope guard.","homepage":null,"documentation":null,"repository":"https://github.com/bluss/scopeguard","trustpub_data":null,"linecounts":{"languages":{"Rust":{"code_lines":36,"comment_lines":0,"files":1}},"total_code_lines":36,"total_comment_lines":0}}],"keywords":[{"id":"defer","keyword":"defer","created_at":"2015-04-30T12:04:48.312798Z","crates_cnt":22},{"id":"unwind","keyword":"unwind","created_at":"2017-05-13T15:37:37.901202Z","crates_cnt":22},{"id":"panic","keyword":"panic","created_at":"2016-08-29T03:36:53.139768Z","crates_cnt":121},{"id":"scope-guard","keyword":"scope-guard","created_at":"2015-04-30T12:04:48.302721Z","crates_cnt":5}],"categories":[{"id":"rust-patterns","category":"Rust patterns","slug":"rust-patterns","description":"Shared solutions for particular situations specific to programming in Rust.","created_at":"2017-01-17T19:13:05.112025Z","crates_cnt":4282},{"id":"no-std","category":"No standard library","slug":"no-std","description":"Crates that are able to function without the Rust standard library.","created_at":"2017-02-10T01:52:09.447906Z","crates_cnt":13659}]}