oxanus/
lib.rs

1#![doc = include_str!("../README.md")]
2#![deny(unsafe_code)]
3#![warn(
4    clippy::all,
5    clippy::await_holding_lock,
6    clippy::char_lit_as_u8,
7    clippy::checked_conversions,
8    clippy::clone_on_ref_ptr,
9    clippy::dbg_macro,
10    clippy::debug_assert_with_mut_call,
11    clippy::doc_markdown,
12    clippy::empty_enum,
13    clippy::enum_glob_use,
14    clippy::exit,
15    clippy::expl_impl_clone_on_copy,
16    clippy::explicit_deref_methods,
17    clippy::explicit_into_iter_loop,
18    clippy::fallible_impl_from,
19    clippy::filter_map_next,
20    clippy::flat_map_option,
21    clippy::float_cmp_const,
22    clippy::fn_params_excessive_bools,
23    clippy::from_iter_instead_of_collect,
24    clippy::if_let_mutex,
25    clippy::implicit_clone,
26    clippy::imprecise_flops,
27    clippy::indexing_slicing,
28    clippy::inefficient_to_string,
29    clippy::invalid_upcast_comparisons,
30    clippy::large_digit_groups,
31    clippy::large_stack_arrays,
32    clippy::large_types_passed_by_value,
33    clippy::let_unit_value,
34    clippy::linkedlist,
35    clippy::lossy_float_literal,
36    clippy::macro_use_imports,
37    clippy::manual_ok_or,
38    clippy::map_err_ignore,
39    clippy::map_flatten,
40    clippy::map_unwrap_or,
41    clippy::match_same_arms,
42    clippy::match_wild_err_arm,
43    clippy::match_wildcard_for_single_variants,
44    clippy::mem_forget,
45    clippy::missing_enforced_import_renames,
46    clippy::mut_mut,
47    clippy::mutex_integer,
48    clippy::needless_borrow,
49    clippy::needless_continue,
50    clippy::needless_for_each,
51    clippy::option_option,
52    clippy::path_buf_push_overwrite,
53    clippy::ptr_as_ptr,
54    clippy::rc_mutex,
55    clippy::ref_option_ref,
56    clippy::rest_pat_in_fully_bound_structs,
57    clippy::same_functions_in_if_condition,
58    clippy::semicolon_if_nothing_returned,
59    clippy::single_match_else,
60    clippy::string_add_assign,
61    clippy::string_add,
62    clippy::string_lit_as_bytes,
63    clippy::string_to_string,
64    clippy::todo,
65    clippy::trait_duplication_in_bounds,
66    clippy::unimplemented,
67    clippy::unnested_or_patterns,
68    clippy::unused_self,
69    clippy::useless_transmute,
70    clippy::verbose_file_reads,
71    clippy::zero_sized_map_values,
72    future_incompatible,
73    nonstandard_style,
74    rust_2018_idioms,
75    unexpected_cfgs
76)]
77#![allow(clippy::unused_self, clippy::single_match_else, clippy::todo)]
78
79mod config;
80mod context;
81mod coordinator;
82mod dispatcher;
83mod drainer;
84mod error;
85mod executor;
86mod firehose;
87mod job_envelope;
88mod launcher;
89mod queue;
90mod result_collector;
91mod semaphores_map;
92mod storage;
93mod storage_builder;
94mod storage_internal;
95mod throttler;
96mod worker;
97mod worker_event;
98mod worker_registry;
99
100#[cfg(test)]
101mod test_helper;
102
103pub use crate::config::Config;
104pub use crate::context::Context;
105pub use crate::drainer::drain;
106pub use crate::error::OxanusError;
107pub use crate::job_envelope::JobId;
108pub use crate::launcher::run;
109pub use crate::queue::{Queue, QueueConfig, QueueKind, QueueThrottle};
110pub use crate::storage::Storage;
111pub use crate::storage_builder::StorageBuilder;
112pub use crate::worker::Worker;